mirror of
https://github.com/torvalds/linux.git
synced 2026-08-15 03:46:23 +02:00
There is a need for a polling interface for SRCU grace periods. This polling needs to initiate an SRCU grace period without having to queue (and manage) a callback. This commit therefore splits the Tree SRCU __call_srcu() function into callback-initialization and queuing/start-grace-period portions, with the latter in a new function named srcu_gp_start_if_needed(). This function may be passed a NULL callback pointer, in which case it will refrain from queuing anything. Why have the new function mess with queuing? Locking considerations, of course! Link: https://lore.kernel.org/rcu/20201112201547.GF3365678@moria.home.lan/ Reported-by: Kent Overstreet <kent.overstreet@gmail.com> Reviewed-by: Neeraj Upadhyay <neeraju@codeaurora.org> Signed-off-by: Paul E. McKenney <paulmck@kernel.org> |
||
|---|---|---|
| .. | ||
| Kconfig | ||
| Kconfig.debug | ||
| Makefile | ||
| rcu_segcblist.c | ||
| rcu_segcblist.h | ||
| rcu.h | ||
| rcuscale.c | ||
| rcutorture.c | ||
| refscale.c | ||
| srcutiny.c | ||
| srcutree.c | ||
| sync.c | ||
| tasks.h | ||
| tiny.c | ||
| tree_exp.h | ||
| tree_plugin.h | ||
| tree_stall.h | ||
| tree.c | ||
| tree.h | ||
| update.c | ||