Message ID | 75912547b45b70df4f5b7d19e2de8d5fda5c8167.1699308010.git.josef@toxicpanda.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | btrfs: convert to the new mount API | expand |
On Mon, Nov 06, 2023 at 05:08:09PM -0500, Josef Bacik wrote: > From: Christian Brauner <brauner@kernel.org> > > We already communicate to filesystems when a remount request comes from > the old mount api as some filesystems choose to implement different > behavior in the new mount api than the old mount api to e.g., take the > chance to fix significant api bugs. Allow the same for regular mount > requests. > > Signed-off-by: Christian Brauner <brauner@kernel.org> > Signed-off-by: Josef Bacik <josef@toxicpanda.com> Looks good: Reviewed-by: Christoph Hellwig <hch@lst.de> FYI, I'd be almost tempted to add a Fixes here - setting this flag only for remounts in the old patch is almost asking for trouble..
diff --git a/fs/namespace.c b/fs/namespace.c index e157efc54023..bfc5cff0e196 100644 --- a/fs/namespace.c +++ b/fs/namespace.c @@ -2873,7 +2873,12 @@ static int do_remount(struct path *path, int ms_flags, int sb_flags, if (IS_ERR(fc)) return PTR_ERR(fc); + /* + * Indicate to the filesystem that the remount request is coming + * from the legacy mount system call. + */ fc->oldapi = true; + err = parse_monolithic_mount_data(fc, data); if (!err) { down_write(&sb->s_umount); @@ -3322,6 +3327,12 @@ static int do_new_mount(struct path *path, const char *fstype, int sb_flags, if (IS_ERR(fc)) return PTR_ERR(fc); + /* + * Indicate to the filesystem that the mount request is coming + * from the legacy mount system call. + */ + fc->oldapi = true; + if (subtype) err = vfs_parse_fs_string(fc, "subtype", subtype, strlen(subtype));