summaryrefslogtreecommitdiff
path: root/include/linux/fs_context.h
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2022-01-17 09:07:26 +1100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-01-20 09:19:17 +0100
commit5d6af67307e8f52b7c15da3567cbb92e285267d4 (patch)
treec324dfc5e7ba45bfa77d52f2a1951476126e0cd7 /include/linux/fs_context.h
parentc117b116e6b3d4e5fe46cbf97add0e69cc1cf0b7 (diff)
devtmpfs regression fix: reconfigure on each mount
commit a6097180d884ddab769fb25588ea8598589c218c upstream. Prior to Linux v5.4 devtmpfs used mount_single() which treats the given mount options as "remount" options, so it updates the configuration of the single super_block on each mount. Since that was changed, the mount options used for devtmpfs are ignored. This is a regression which affect systemd - which mounts devtmpfs with "-o mode=755,size=4m,nr_inodes=1m". This patch restores the "remount" effect by calling reconfigure_single() Fixes: d401727ea0d7 ("devtmpfs: don't mix {ramfs,shmem}_fill_super() with mount_single()") Acked-by: Christian Brauner <christian.brauner@ubuntu.com> Cc: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: NeilBrown <neilb@suse.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include/linux/fs_context.h')
-rw-r--r--include/linux/fs_context.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/fs_context.h b/include/linux/fs_context.h
index ba8a58754340..ebcb91a57e86 100644
--- a/include/linux/fs_context.h
+++ b/include/linux/fs_context.h
@@ -135,6 +135,8 @@ extern int generic_parse_monolithic(struct fs_context *fc, void *data);
extern int vfs_get_tree(struct fs_context *fc);
extern void put_fs_context(struct fs_context *fc);
extern void fc_drop_locked(struct fs_context *fc);
+int reconfigure_single(struct super_block *s,
+ int flags, void *data);
/*
* sget() wrappers to be called from the ->get_tree() op.