2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2025-01-11 07:04:04 +08:00
linux-next/kernel/rcu
Paul E. McKenney 3c345825c8 rcu: Expedited wakeups need to be fully ordered
Expedited grace periods use workqueue handlers that wake up the requesters,
but there is no lock mediating this wakeup.  Therefore, memory barriers
are required to ensure that the handler's memory references are seen by
all to occur before synchronize_*_expedited() returns to its caller.
Possibly detected by syzkaller.

Reported-by: Dmitry Vyukov <dvyukov@google.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
2017-04-18 11:38:19 -07:00
..
Makefile rcutorture: Add RCU grace-period performance tests 2016-03-31 13:37:38 -07:00
rcu_segcblist.h rcu: Add single-element dequeue functions to rcu_segcblist 2017-04-18 11:38:19 -07:00
rcu.h srcu: Move rcu_seq_start() and friends to rcu.h 2017-04-18 11:38:19 -07:00
rcuperf.c sched/headers: Prepare for new header dependencies before moving code to <uapi/linux/sched/types.h> 2017-03-02 08:42:27 +01:00
rcutorture.c sched/headers: Prepare to move signal wakeup & sigpending methods from <linux/sched.h> into <linux/sched/signal.h> 2017-03-02 08:42:32 +01:00
srcu.c srcu: Allow early boot use of synchronize_srcu() 2017-04-18 11:38:18 -07:00
sync.c locking, rcu, cgroup: Avoid synchronize_sched() in __cgroup_procs_write() 2016-08-18 15:36:59 +02:00
tiny_plugin.h srcu: Allow SRCU to access rcu_scheduler_active 2017-04-18 11:38:18 -07:00
tiny.c rcu: Semicolon inside RCU_TRACE() for Tiny RCU 2017-04-18 11:38:17 -07:00
tree_exp.h rcu: Expedited wakeups need to be fully ordered 2017-04-18 11:38:19 -07:00
tree_plugin.h srcu: Abstract multi-tail callback list handling 2017-04-18 11:38:18 -07:00
tree_trace.c srcu: Abstract multi-tail callback list handling 2017-04-18 11:38:18 -07:00
tree.c srcu: Move rcu_seq_start() and friends to rcu.h 2017-04-18 11:38:19 -07:00
tree.h srcu: Abstract multi-tail callback list handling 2017-04-18 11:38:18 -07:00
update.c srcu: Allow SRCU to access rcu_scheduler_active 2017-04-18 11:38:18 -07:00