summaryrefslogtreecommitdiff
path: root/patches/cgroups-use-simple-wait-in-css_release.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/cgroups-use-simple-wait-in-css_release.patch')
-rw-r--r--patches/cgroups-use-simple-wait-in-css_release.patch14
1 files changed, 7 insertions, 7 deletions
diff --git a/patches/cgroups-use-simple-wait-in-css_release.patch b/patches/cgroups-use-simple-wait-in-css_release.patch
index 88ba2b39b1eb..3f26e8f40031 100644
--- a/patches/cgroups-use-simple-wait-in-css_release.patch
+++ b/patches/cgroups-use-simple-wait-in-css_release.patch
@@ -34,7 +34,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
--- a/include/linux/cgroup-defs.h
+++ b/include/linux/cgroup-defs.h
-@@ -17,6 +17,7 @@
+@@ -18,6 +18,7 @@
#include <linux/percpu-rwsem.h>
#include <linux/workqueue.h>
#include <linux/bpf-cgroup.h>
@@ -42,17 +42,17 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
#ifdef CONFIG_CGROUPS
-@@ -139,6 +140,7 @@ struct cgroup_subsys_state {
+@@ -146,6 +147,7 @@ struct cgroup_subsys_state {
/* percpu_ref killing and RCU release */
struct rcu_head rcu_head;
struct work_struct destroy_work;
+ struct swork_event destroy_swork;
- };
- /*
+ /*
+ * PI: the parent css. Placed here for cache proximity to following
--- a/kernel/cgroup/cgroup.c
+++ b/kernel/cgroup/cgroup.c
-@@ -3895,10 +3895,10 @@ static void css_free_rcu_fn(struct rcu_h
+@@ -4001,10 +4001,10 @@ static void css_free_rcu_fn(struct rcu_h
queue_work(cgroup_destroy_wq, &css->destroy_work);
}
@@ -65,7 +65,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
struct cgroup_subsys *ss = css->ss;
struct cgroup *cgrp = css->cgroup;
-@@ -3943,8 +3943,8 @@ static void css_release(struct percpu_re
+@@ -4049,8 +4049,8 @@ static void css_release(struct percpu_re
struct cgroup_subsys_state *css =
container_of(ref, struct cgroup_subsys_state, refcnt);
@@ -76,7 +76,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
}
static void init_and_link_css(struct cgroup_subsys_state *css,
-@@ -4601,6 +4601,7 @@ static int __init cgroup_wq_init(void)
+@@ -4712,6 +4712,7 @@ static int __init cgroup_wq_init(void)
*/
cgroup_destroy_wq = alloc_workqueue("cgroup_destroy", 0, 1);
BUG_ON(!cgroup_destroy_wq);