From: Greg Kroah-Hartman Date: Wed, 20 Mar 2019 19:25:09 +0000 (+0100) Subject: drop broken btrfs patch from 4.9.y X-Git-Tag: v3.18.137~59 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ac7ead7d1aa2a93520bb1b06682f21dcec1e0d74;p=thirdparty%2Fkernel%2Fstable-queue.git drop broken btrfs patch from 4.9.y --- diff --git a/queue-4.9/btrfs-setup-a-nofs-context-for-memory-allocation-at-__btrfs_set_acl.patch b/queue-4.9/btrfs-setup-a-nofs-context-for-memory-allocation-at-__btrfs_set_acl.patch deleted file mode 100644 index 5be61799b57..00000000000 --- a/queue-4.9/btrfs-setup-a-nofs-context-for-memory-allocation-at-__btrfs_set_acl.patch +++ /dev/null @@ -1,52 +0,0 @@ -From a0873490660246db587849a9e172f2b7b21fa88a Mon Sep 17 00:00:00 2001 -From: Filipe Manana -Date: Thu, 13 Dec 2018 21:16:56 +0000 -Subject: Btrfs: setup a nofs context for memory allocation at __btrfs_set_acl - -From: Filipe Manana - -commit a0873490660246db587849a9e172f2b7b21fa88a upstream. - -We are holding a transaction handle when setting an acl, therefore we can -not allocate the xattr value buffer using GFP_KERNEL, as we could deadlock -if reclaim is triggered by the allocation, therefore setup a nofs context. - -Fixes: 39a27ec1004e8 ("btrfs: use GFP_KERNEL for xattr and acl allocations") -CC: stable@vger.kernel.org # 4.9+ -Reviewed-by: Nikolay Borisov -Signed-off-by: Filipe Manana -Reviewed-by: David Sterba -Signed-off-by: David Sterba -Signed-off-by: Greg Kroah-Hartman - ---- - fs/btrfs/acl.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - ---- a/fs/btrfs/acl.c -+++ b/fs/btrfs/acl.c -@@ -22,6 +22,7 @@ - #include - #include - #include -+#include - #include - - #include "ctree.h" -@@ -89,8 +90,16 @@ static int __btrfs_set_acl(struct btrfs_ - } - - if (acl) { -+ unsigned int nofs_flag; -+ - size = posix_acl_xattr_size(acl->a_count); -+ /* -+ * We're holding a transaction handle, so use a NOFS memory -+ * allocation context to avoid deadlock if reclaim happens. -+ */ -+ nofs_flag = memalloc_nofs_save(); - value = kmalloc(size, GFP_KERNEL); -+ memalloc_nofs_restore(nofs_flag); - if (!value) { - ret = -ENOMEM; - goto out; diff --git a/queue-4.9/series b/queue-4.9/series index 01b8d4b7c72..c883a879140 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -66,7 +66,6 @@ scsi-target-iscsi-avoid-iscsit_release_commands_from_conn-deadlock.patch fs-devpts-always-delete-dcache-dentry-s-in-dput.patch splice-don-t-merge-into-linked-buffers.patch m68k-add-ffreestanding-to-cflags.patch -btrfs-setup-a-nofs-context-for-memory-allocation-at-__btrfs_set_acl.patch btrfs-ensure-that-a-dup-or-raid1-block-group-has-exactly-two-stripes.patch btrfs-fix-corruption-reading-shared-and-compressed-extents-after-hole-punching.patch crypto-pcbc-remove-bogus-memcpy-s-with-src-dest.patch