diff options
author | Tejun Heo | 2018-03-14 20:45:13 +0100 |
---|---|---|
committer | Tejun Heo | 2018-03-19 18:12:03 +0100 |
commit | 05f0fe6b74dbd7690a4cbd61810948b7d575576a (patch) | |
tree | f8aa6fef133b092f7dac48a8fd30db9319aadefd /kernel/stacktrace.c | |
parent | Linux 4.16-rc6 (diff) | |
download | kernel-qcow2-linux-05f0fe6b74dbd7690a4cbd61810948b7d575576a.tar.gz kernel-qcow2-linux-05f0fe6b74dbd7690a4cbd61810948b7d575576a.tar.xz kernel-qcow2-linux-05f0fe6b74dbd7690a4cbd61810948b7d575576a.zip |
RCU, workqueue: Implement rcu_work
There are cases where RCU callback needs to be bounced to a sleepable
context. This is currently done by the RCU callback queueing a work
item, which can be cumbersome to write and confusing to read.
This patch introduces rcu_work, a workqueue work variant which gets
executed after a RCU grace period, and converts the open coded
bouncing in fs/aio and kernel/cgroup.
v3: Dropped queue_rcu_work_on(). Documented rcu grace period behavior
after queue_rcu_work().
v2: Use rcu_barrier() instead of synchronize_rcu() to wait for
completion of previously queued rcu callback as per Paul.
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/stacktrace.c')
0 files changed, 0 insertions, 0 deletions