linux/include/trace/events
Paul E. McKenney a26ac2455f rcu: move TREE_RCU from softirq to kthread
If RCU priority boosting is to be meaningful, callback invocation must
be boosted in addition to preempted RCU readers.  Otherwise, in presence
of CPU real-time threads, the grace period ends, but the callbacks don't
get invoked.  If the callbacks don't get invoked, the associated memory
doesn't get freed, so the system is still subject to OOM.

But it is not reasonable to priority-boost RCU_SOFTIRQ, so this commit
moves the callback invocations to a kthread, which can be boosted easily.

Also add comments and properly synchronized all accesses to
rcu_cpu_kthread_task, as suggested by Lai Jiangshan.

Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
2011-05-05 23:16:54 -07:00
..
asoc.h ASoC: soc-cache: Add trace event for snd_soc_cache_sync() 2011-01-21 18:30:51 +00:00
block.h block: make unplug timer trace event correspond to the schedule() unplug 2011-04-16 13:51:05 +02:00
btrfs.h Btrfs: add initial tracepoint support for btrfs 2011-03-28 05:37:33 -04:00
compaction.h mm: compaction: add trace events for memory compaction activity 2011-01-13 17:32:33 -08:00
ext4.h ext4: add more tracepoints and use dev_t in the trace buffer 2011-03-21 21:38:05 -04:00
gfpflags.h vmscan: tracing: add trace events for kswapd wakeup, sleeping and direct reclaim 2010-08-09 20:44:59 -07:00
irq.h rcu: move TREE_RCU from softirq to kthread 2011-05-05 23:16:54 -07:00
jbd2.h ext4: add more tracepoints and use dev_t in the trace buffer 2011-03-21 21:38:05 -04:00
kmem.h vmscan: tracing: add trace events for kswapd wakeup, sleeping and direct reclaim 2010-08-09 20:44:59 -07:00
kvm.h KVM: cleanup async_pf tracepoints 2011-01-12 11:28:57 +02:00
lock.h tracing: Factorize lock events in a lock class 2010-05-09 13:45:35 +02:00
mce.h tracing: Fix event alignment: mce:mce_record 2011-03-10 10:34:28 -05:00
module.h tracing: Fix event alignment: module:module_request 2011-03-10 10:34:20 -05:00
napi.h napi: Convert trace_napi_poll to TRACE_EVENT 2010-09-07 17:51:01 +02:00
net.h netdev: Add tracepoints to netdev layer 2010-09-07 17:51:33 +02:00
power.h perf: Clean up power events by introducing new, more generic ones 2011-01-04 08:16:54 +01:00
regulator.h regulator: Add basic trace facilities 2011-01-12 14:33:00 +00:00
sched.h tracing/sched: Add sched_pi_setprio tracepoint 2010-09-21 10:56:41 -04:00
scsi.h [SCSI] Include protection operation in SCSI command trace 2011-03-14 18:36:02 -05:00
signal.h tracing: Fix null pointer deref with SEND_SIG_FORCED 2010-06-08 23:51:32 +02:00
skb.h tracing: Fix event alignment: skb:kfree_skb 2011-03-10 10:34:31 -05:00
syscalls.h tracing: Allow raw syscall trace events for non privileged users 2010-11-18 14:37:43 +01:00
timer.h tracing: Fix timer tracing 2010-08-19 13:00:41 +02:00
vmscan.h mm: vmscan: rename lumpy_mode to reclaim_mode 2011-01-13 17:32:34 -08:00
workqueue.h workqueue: add queue_work and activate_work trace points 2010-10-05 10:49:55 +02:00
writeback.h writeback: trace wakeup event for background writeback 2011-01-13 17:32:32 -08:00