On Fri, 2021-10-22 at 18:55 +0300, Konstantin Komarov wrote: > Right now in ntfs_save_wsl_perm we lock/unlock 4 times. > This commit fixes this situation. > We add "locked" argument to ntfs_set_ea. [] > diff --git a/fs/ntfs3/xattr.c b/fs/ntfs3/xattr.c [] > @@ -259,7 +259,7 @@ static int ntfs_get_ea(struct inode *inode, const char *name, size_t name_len, > > static noinline int ntfs_set_ea(struct inode *inode, const char *name, > size_t name_len, const void *value, > - size_t val_size, int flags) > + size_t val_size, int flags, bool locked) [] > @@ -595,7 +597,7 @@ static noinline int ntfs_set_acl_ex(struct user_namespace *mnt_userns, > flags = 0; > } > > - err = ntfs_set_ea(inode, name, name_len, value, size, flags); > + err = ntfs_set_ea(inode, name, name_len, value, size, flags, 0); generally is nicer to use true/false for bool rather than true/0 > err = ntfs_set_ea(inode, "$LXGID", sizeof("$LXGID") - 1, &value, > - sizeof(value), 0); > + sizeof(value), 0, true);