> 在 2018年9月16日,上午11:55,Theodore Y. Ts'o <tytso@xxxxxxx> 写道: > > On Wed, Sep 12, 2018 at 08:57:16AM +0900, Wang Shilong wrote: >> diff --git a/fs/ext4/ioctl.c b/fs/ext4/ioctl.c >> index a7074115d6f6..f81102bd3203 100644 >> --- a/fs/ext4/ioctl.c >> +++ b/fs/ext4/ioctl.c >> @@ -339,19 +339,14 @@ static int ext4_ioctl_setproject(struct file *filp, __u32 projid) >> if (projid_eq(kprojid, EXT4_I(inode)->i_projid)) >> return 0; >> >> - err = mnt_want_write_file(filp); >> - if (err) >> - return err; >> - > > A huge part of this patch is dropping the calls to > mnt_want_write_file() and mnt_drop_write_file(). What's the > justification for doing this? The use of mnt_want_write_file() looks > necessary to me… Hi Ted, mnt_want_write_file() and inode_lock is held before this function called now. Since both ioctl_set_flags and ext4_set_project() need call them. > > - Ted