]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
delete cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 19 Apr 2017 11:30:55 +0000 (13:30 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 19 Apr 2017 11:30:55 +0000 (13:30 +0200)
queue-3.18/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch [deleted file]
queue-3.18/series
queue-4.10/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch [deleted file]
queue-4.10/series
queue-4.4/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch [deleted file]
queue-4.4/series
queue-4.9/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch [deleted file]
queue-4.9/series

diff --git a/queue-3.18/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch b/queue-3.18/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch
deleted file mode 100644 (file)
index 0e943af..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-From bfb0b80db5f9dca5ac0a5fd0edb765ee555e5a8e Mon Sep 17 00:00:00 2001
-From: Zefan Li <lizefan@huawei.com>
-Date: Fri, 7 Apr 2017 16:51:55 +0800
-Subject: cgroup: avoid attaching a cgroup root to two different superblocks
-
-From: Zefan Li <lizefan@huawei.com>
-
-commit bfb0b80db5f9dca5ac0a5fd0edb765ee555e5a8e upstream.
-
-Run this:
-
-    touch file0
-    for ((; ;))
-    {
-        mount -t cpuset xxx file0
-    }
-
-And this concurrently:
-
-    touch file1
-    for ((; ;))
-    {
-        mount -t cpuset xxx file1
-    }
-
-We'll trigger a warning like this:
-
- ------------[ cut here ]------------
- WARNING: CPU: 1 PID: 4675 at lib/percpu-refcount.c:317 percpu_ref_kill_and_confirm+0x92/0xb0
- percpu_ref_kill_and_confirm called more than once on css_release!
- CPU: 1 PID: 4675 Comm: mount Not tainted 4.11.0-rc5+ #5
- Hardware name: Bochs Bochs, BIOS Bochs 01/01/2007
- Call Trace:
-  dump_stack+0x63/0x84
-  __warn+0xd1/0xf0
-  warn_slowpath_fmt+0x5f/0x80
-  percpu_ref_kill_and_confirm+0x92/0xb0
-  cgroup_kill_sb+0x95/0xb0
-  deactivate_locked_super+0x43/0x70
-  deactivate_super+0x46/0x60
- ...
- ---[ end trace a79f61c2a2633700 ]---
-
-Here's a race:
-
-  Thread A                             Thread B
-
-  cgroup1_mount()
-    # alloc a new cgroup root
-    cgroup_setup_root()
-                                       cgroup1_mount()
-                                         # no sb yet, returns NULL
-                                         kernfs_pin_sb()
-
-                                         # but succeeds in getting the refcnt,
-                                         # so re-use cgroup root
-                                         percpu_ref_tryget_live()
-    # alloc sb with cgroup root
-    cgroup_do_mount()
-
-  cgroup_kill_sb()
-                                         # alloc another sb with same root
-                                         cgroup_do_mount()
-
-                                       cgroup_kill_sb()
-
-We end up using the same cgroup root for two different superblocks,
-so percpu_ref_kill() will be called twice on the same root when the
-two superblocks are destroyed.
-
-We should fix to make sure the superblock pinning is really successful.
-
-Reported-by: Dmitry Vyukov <dvyukov@google.com>
-Signed-off-by: Zefan Li <lizefan@huawei.com>
-Signed-off-by: Tejun Heo <tj@kernel.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- kernel/cgroup.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/kernel/cgroup.c
-+++ b/kernel/cgroup.c
-@@ -1786,7 +1786,7 @@ static struct dentry *cgroup_mount(struc
-                * path is super cold.  Let's just sleep a bit and retry.
-                */
-               pinned_sb = kernfs_pin_sb(root->kf_root, NULL);
--              if (IS_ERR(pinned_sb) ||
-+              if (IS_ERR_OR_NULL(pinned_sb) ||
-                   !percpu_ref_tryget_live(&root->cgrp.self.refcnt)) {
-                       mutex_unlock(&cgroup_mutex);
-                       if (!IS_ERR_OR_NULL(pinned_sb))
index c833184519f6a163fe1ebb5e3cc8b7a6671f5f39..1b3a9a738a6d23551fd3e7152b9f0438f9ce051c 100644 (file)
@@ -1,4 +1,3 @@
-cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch
 cifs-store-results-of-cifs_reopen_file-to-avoid-infinite-wait.patch
 input-xpad-add-support-for-razer-wildcat-gamepad.patch
 perf-x86-avoid-exposing-wrong-stale-data-in-intel_pmu_lbr_read_32.patch
diff --git a/queue-4.10/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch b/queue-4.10/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch
deleted file mode 100644 (file)
index 7847d81..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-From bfb0b80db5f9dca5ac0a5fd0edb765ee555e5a8e Mon Sep 17 00:00:00 2001
-From: Zefan Li <lizefan@huawei.com>
-Date: Fri, 7 Apr 2017 16:51:55 +0800
-Subject: cgroup: avoid attaching a cgroup root to two different superblocks
-
-From: Zefan Li <lizefan@huawei.com>
-
-commit bfb0b80db5f9dca5ac0a5fd0edb765ee555e5a8e upstream.
-
-Run this:
-
-    touch file0
-    for ((; ;))
-    {
-        mount -t cpuset xxx file0
-    }
-
-And this concurrently:
-
-    touch file1
-    for ((; ;))
-    {
-        mount -t cpuset xxx file1
-    }
-
-We'll trigger a warning like this:
-
- ------------[ cut here ]------------
- WARNING: CPU: 1 PID: 4675 at lib/percpu-refcount.c:317 percpu_ref_kill_and_confirm+0x92/0xb0
- percpu_ref_kill_and_confirm called more than once on css_release!
- CPU: 1 PID: 4675 Comm: mount Not tainted 4.11.0-rc5+ #5
- Hardware name: Bochs Bochs, BIOS Bochs 01/01/2007
- Call Trace:
-  dump_stack+0x63/0x84
-  __warn+0xd1/0xf0
-  warn_slowpath_fmt+0x5f/0x80
-  percpu_ref_kill_and_confirm+0x92/0xb0
-  cgroup_kill_sb+0x95/0xb0
-  deactivate_locked_super+0x43/0x70
-  deactivate_super+0x46/0x60
- ...
- ---[ end trace a79f61c2a2633700 ]---
-
-Here's a race:
-
-  Thread A                             Thread B
-
-  cgroup1_mount()
-    # alloc a new cgroup root
-    cgroup_setup_root()
-                                       cgroup1_mount()
-                                         # no sb yet, returns NULL
-                                         kernfs_pin_sb()
-
-                                         # but succeeds in getting the refcnt,
-                                         # so re-use cgroup root
-                                         percpu_ref_tryget_live()
-    # alloc sb with cgroup root
-    cgroup_do_mount()
-
-  cgroup_kill_sb()
-                                         # alloc another sb with same root
-                                         cgroup_do_mount()
-
-                                       cgroup_kill_sb()
-
-We end up using the same cgroup root for two different superblocks,
-so percpu_ref_kill() will be called twice on the same root when the
-two superblocks are destroyed.
-
-We should fix to make sure the superblock pinning is really successful.
-
-Reported-by: Dmitry Vyukov <dvyukov@google.com>
-Signed-off-by: Zefan Li <lizefan@huawei.com>
-Signed-off-by: Tejun Heo <tj@kernel.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- kernel/cgroup.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/kernel/cgroup.c
-+++ b/kernel/cgroup.c
-@@ -2195,7 +2195,7 @@ static struct dentry *cgroup_mount(struc
-                * path is super cold.  Let's just sleep a bit and retry.
-                */
-               pinned_sb = kernfs_pin_sb(root->kf_root, NULL);
--              if (IS_ERR(pinned_sb) ||
-+              if (IS_ERR_OR_NULL(pinned_sb) ||
-                   !percpu_ref_tryget_live(&root->cgrp.self.refcnt)) {
-                       mutex_unlock(&cgroup_mutex);
-                       if (!IS_ERR_OR_NULL(pinned_sb))
index 266e05a8c51122fdb98f39e09aa3b9270fb9f96a..e9a477c63aef8eb2fd62aef357b583e0ed45aaae 100644 (file)
@@ -1,4 +1,3 @@
-cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch
 cgroup-kthread-close-race-window-where-new-kthreads-can-be-migrated-to-non-root-cgroups.patch
 audit-make-sure-we-don-t-let-the-retry-queue-grow-without-bounds.patch
 tcmu-fix-possible-overwrite-of-t_data_sg-s-last-iov.patch
diff --git a/queue-4.4/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch b/queue-4.4/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch
deleted file mode 100644 (file)
index 54a0454..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-From bfb0b80db5f9dca5ac0a5fd0edb765ee555e5a8e Mon Sep 17 00:00:00 2001
-From: Zefan Li <lizefan@huawei.com>
-Date: Fri, 7 Apr 2017 16:51:55 +0800
-Subject: cgroup: avoid attaching a cgroup root to two different superblocks
-
-From: Zefan Li <lizefan@huawei.com>
-
-commit bfb0b80db5f9dca5ac0a5fd0edb765ee555e5a8e upstream.
-
-Run this:
-
-    touch file0
-    for ((; ;))
-    {
-        mount -t cpuset xxx file0
-    }
-
-And this concurrently:
-
-    touch file1
-    for ((; ;))
-    {
-        mount -t cpuset xxx file1
-    }
-
-We'll trigger a warning like this:
-
- ------------[ cut here ]------------
- WARNING: CPU: 1 PID: 4675 at lib/percpu-refcount.c:317 percpu_ref_kill_and_confirm+0x92/0xb0
- percpu_ref_kill_and_confirm called more than once on css_release!
- CPU: 1 PID: 4675 Comm: mount Not tainted 4.11.0-rc5+ #5
- Hardware name: Bochs Bochs, BIOS Bochs 01/01/2007
- Call Trace:
-  dump_stack+0x63/0x84
-  __warn+0xd1/0xf0
-  warn_slowpath_fmt+0x5f/0x80
-  percpu_ref_kill_and_confirm+0x92/0xb0
-  cgroup_kill_sb+0x95/0xb0
-  deactivate_locked_super+0x43/0x70
-  deactivate_super+0x46/0x60
- ...
- ---[ end trace a79f61c2a2633700 ]---
-
-Here's a race:
-
-  Thread A                             Thread B
-
-  cgroup1_mount()
-    # alloc a new cgroup root
-    cgroup_setup_root()
-                                       cgroup1_mount()
-                                         # no sb yet, returns NULL
-                                         kernfs_pin_sb()
-
-                                         # but succeeds in getting the refcnt,
-                                         # so re-use cgroup root
-                                         percpu_ref_tryget_live()
-    # alloc sb with cgroup root
-    cgroup_do_mount()
-
-  cgroup_kill_sb()
-                                         # alloc another sb with same root
-                                         cgroup_do_mount()
-
-                                       cgroup_kill_sb()
-
-We end up using the same cgroup root for two different superblocks,
-so percpu_ref_kill() will be called twice on the same root when the
-two superblocks are destroyed.
-
-We should fix to make sure the superblock pinning is really successful.
-
-Reported-by: Dmitry Vyukov <dvyukov@google.com>
-Signed-off-by: Zefan Li <lizefan@huawei.com>
-Signed-off-by: Tejun Heo <tj@kernel.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- kernel/cgroup.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/kernel/cgroup.c
-+++ b/kernel/cgroup.c
-@@ -2105,7 +2105,7 @@ static struct dentry *cgroup_mount(struc
-                * path is super cold.  Let's just sleep a bit and retry.
-                */
-               pinned_sb = kernfs_pin_sb(root->kf_root, NULL);
--              if (IS_ERR(pinned_sb) ||
-+              if (IS_ERR_OR_NULL(pinned_sb) ||
-                   !percpu_ref_tryget_live(&root->cgrp.self.refcnt)) {
-                       mutex_unlock(&cgroup_mutex);
-                       if (!IS_ERR_OR_NULL(pinned_sb))
index ed292f0f4dcf200ad763952ad9a45cac94f626a7..270680505a9b89bcc025eb5f2bc638b4b1ad4950 100644 (file)
@@ -1,4 +1,3 @@
-cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch
 cgroup-kthread-close-race-window-where-new-kthreads-can-be-migrated-to-non-root-cgroups.patch
 thp-fix-madv_dontneed-vs-clear-soft-dirty-race.patch
 zram-fix-operator-precedence-to-get-offset.patch
diff --git a/queue-4.9/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch b/queue-4.9/cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch
deleted file mode 100644 (file)
index 7847d81..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-From bfb0b80db5f9dca5ac0a5fd0edb765ee555e5a8e Mon Sep 17 00:00:00 2001
-From: Zefan Li <lizefan@huawei.com>
-Date: Fri, 7 Apr 2017 16:51:55 +0800
-Subject: cgroup: avoid attaching a cgroup root to two different superblocks
-
-From: Zefan Li <lizefan@huawei.com>
-
-commit bfb0b80db5f9dca5ac0a5fd0edb765ee555e5a8e upstream.
-
-Run this:
-
-    touch file0
-    for ((; ;))
-    {
-        mount -t cpuset xxx file0
-    }
-
-And this concurrently:
-
-    touch file1
-    for ((; ;))
-    {
-        mount -t cpuset xxx file1
-    }
-
-We'll trigger a warning like this:
-
- ------------[ cut here ]------------
- WARNING: CPU: 1 PID: 4675 at lib/percpu-refcount.c:317 percpu_ref_kill_and_confirm+0x92/0xb0
- percpu_ref_kill_and_confirm called more than once on css_release!
- CPU: 1 PID: 4675 Comm: mount Not tainted 4.11.0-rc5+ #5
- Hardware name: Bochs Bochs, BIOS Bochs 01/01/2007
- Call Trace:
-  dump_stack+0x63/0x84
-  __warn+0xd1/0xf0
-  warn_slowpath_fmt+0x5f/0x80
-  percpu_ref_kill_and_confirm+0x92/0xb0
-  cgroup_kill_sb+0x95/0xb0
-  deactivate_locked_super+0x43/0x70
-  deactivate_super+0x46/0x60
- ...
- ---[ end trace a79f61c2a2633700 ]---
-
-Here's a race:
-
-  Thread A                             Thread B
-
-  cgroup1_mount()
-    # alloc a new cgroup root
-    cgroup_setup_root()
-                                       cgroup1_mount()
-                                         # no sb yet, returns NULL
-                                         kernfs_pin_sb()
-
-                                         # but succeeds in getting the refcnt,
-                                         # so re-use cgroup root
-                                         percpu_ref_tryget_live()
-    # alloc sb with cgroup root
-    cgroup_do_mount()
-
-  cgroup_kill_sb()
-                                         # alloc another sb with same root
-                                         cgroup_do_mount()
-
-                                       cgroup_kill_sb()
-
-We end up using the same cgroup root for two different superblocks,
-so percpu_ref_kill() will be called twice on the same root when the
-two superblocks are destroyed.
-
-We should fix to make sure the superblock pinning is really successful.
-
-Reported-by: Dmitry Vyukov <dvyukov@google.com>
-Signed-off-by: Zefan Li <lizefan@huawei.com>
-Signed-off-by: Tejun Heo <tj@kernel.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
----
- kernel/cgroup.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/kernel/cgroup.c
-+++ b/kernel/cgroup.c
-@@ -2195,7 +2195,7 @@ static struct dentry *cgroup_mount(struc
-                * path is super cold.  Let's just sleep a bit and retry.
-                */
-               pinned_sb = kernfs_pin_sb(root->kf_root, NULL);
--              if (IS_ERR(pinned_sb) ||
-+              if (IS_ERR_OR_NULL(pinned_sb) ||
-                   !percpu_ref_tryget_live(&root->cgrp.self.refcnt)) {
-                       mutex_unlock(&cgroup_mutex);
-                       if (!IS_ERR_OR_NULL(pinned_sb))
index c1d989b0e5dcdf2e0fd996bc5e86c6179db676d9..9e7d0c73b563d35edb8ac52a9685f0c0ca3572a8 100644 (file)
@@ -1,4 +1,3 @@
-cgroup-avoid-attaching-a-cgroup-root-to-two-different-superblocks.patch
 cgroup-kthread-close-race-window-where-new-kthreads-can-be-migrated-to-non-root-cgroups.patch
 tcmu-fix-possible-overwrite-of-t_data_sg-s-last-iov.patch
 tcmu-fix-wrongly-calculating-of-the-base_command_size.patch