From 1619e028c54a604810fb81d6b269c7684295c094 Mon Sep 17 00:00:00 2001 From: Rudi Heitbaum Date: Mon, 27 Jun 2022 10:19:17 +0000 Subject: [PATCH] linux: ntfs3: drop upstreamed patches in 5.19 --- .../patches/default/fs-ntfs3-since-5-15.patch | 113 ------------------ 1 file changed, 113 deletions(-) delete mode 100644 packages/linux/patches/default/fs-ntfs3-since-5-15.patch diff --git a/packages/linux/patches/default/fs-ntfs3-since-5-15.patch b/packages/linux/patches/default/fs-ntfs3-since-5-15.patch deleted file mode 100644 index 60c54cd4a3..0000000000 --- a/packages/linux/patches/default/fs-ntfs3-since-5-15.patch +++ /dev/null @@ -1,113 +0,0 @@ -From 3a2154b25a9f461a1848371b3e8f6f316434ae1f Mon Sep 17 00:00:00 2001 -From: Konstantin Komarov -Date: Fri, 22 Oct 2021 18:30:22 +0300 -Subject: fs/ntfs3: Optimize locking in ntfs_save_wsl_perm - -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. - -Suggested-by: Kari Argillander -Reviewed-by: Kari Argillander -Signed-off-by: Konstantin Komarov ---- - fs/ntfs3/xattr.c | 24 ++++++++++++++---------- - 1 file changed, 14 insertions(+), 10 deletions(-) - -diff --git a/fs/ntfs3/xattr.c b/fs/ntfs3/xattr.c -index af818300493dc..94a277615b629 100644 ---- a/fs/ntfs3/xattr.c -+++ b/fs/ntfs3/xattr.c -@@ -259,7 +259,7 @@ out: - - 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) - { - struct ntfs_inode *ni = ntfs_i(inode); - struct ntfs_sb_info *sbi = ni->mi.sbi; -@@ -278,7 +278,8 @@ static noinline int ntfs_set_ea(struct inode *inode, const char *name, - u64 new_sz; - void *p; - -- ni_lock(ni); -+ if (!locked) -+ ni_lock(ni); - - run_init(&ea_run); - -@@ -467,7 +468,8 @@ update_ea: - mark_inode_dirty(&ni->vfs_inode); - - out: -- ni_unlock(ni); -+ if (!locked) -+ ni_unlock(ni); - - run_close(&ea_run); - kfree(ea_all); -@@ -598,7 +600,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); - if (err == -ENODATA && !size) - err = 0; /* Removing non existed xattr. */ - if (!err) -@@ -992,7 +994,7 @@ set_new_fa: - } - #endif - /* Deal with NTFS extended attribute. */ -- err = ntfs_set_ea(inode, name, name_len, value, size, flags); -+ err = ntfs_set_ea(inode, name, name_len, value, size, flags, 0); - - out: - inode->i_ctime = current_time(inode); -@@ -1010,35 +1012,37 @@ int ntfs_save_wsl_perm(struct inode *inode) - { - int err; - __le32 value; -+ struct ntfs_inode *ni = ntfs_i(inode); - -- /* TODO: refactor this, so we don't lock 4 times in ntfs_set_ea */ -+ ni_lock(ni); - value = cpu_to_le32(i_uid_read(inode)); - err = ntfs_set_ea(inode, "$LXUID", sizeof("$LXUID") - 1, &value, -- sizeof(value), 0); -+ sizeof(value), 0, true); /* true == already locked. */ - if (err) - goto out; - - value = cpu_to_le32(i_gid_read(inode)); - err = ntfs_set_ea(inode, "$LXGID", sizeof("$LXGID") - 1, &value, -- sizeof(value), 0); -+ sizeof(value), 0, true); - if (err) - goto out; - - value = cpu_to_le32(inode->i_mode); - err = ntfs_set_ea(inode, "$LXMOD", sizeof("$LXMOD") - 1, &value, -- sizeof(value), 0); -+ sizeof(value), 0, true); - if (err) - goto out; - - if (S_ISCHR(inode->i_mode) || S_ISBLK(inode->i_mode)) { - value = cpu_to_le32(inode->i_rdev); - err = ntfs_set_ea(inode, "$LXDEV", sizeof("$LXDEV") - 1, &value, -- sizeof(value), 0); -+ sizeof(value), 0, true); - if (err) - goto out; - } - - out: -+ ni_unlock(ni); - /* In case of error should we delete all WSL xattr? */ - return err; - } --- -cgit 1.2.3-1.el7 -