diff options
| author | Paul E. McKenney <[email protected]> | 2006-01-08 01:01:35 -0800 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2006-01-08 20:13:40 -0800 |
| commit | 4369ef3c3e9d3bd9b879580678778f558d481e90 (patch) | |
| tree | 32b443b32c6de858c419f75dad07c46028359afe /scripts/basic | |
| parent | eafbaa94691f6a1fa67c3b076caa3ce4e2920100 (diff) | |
[PATCH] Make RCU task_struct safe for oprofile
Applying RCU to the task structure broke oprofile, because
free_task_notify() can now be called from softirq. This means that the
task_mortuary lock must be acquired with irq disabled in order to avoid
intermittent self-deadlock. Since irq is now disabled, the critical
section within process_task_mortuary() has been restructured to be O(1) in
order to maximize scalability and minimize realtime latency degradation.
Kudos to Wu Fengguang for finding this problem!
CC: Wu Fengguang <[email protected]>
Cc: Philippe Elie <[email protected]>
Cc: John Levon <[email protected]>
Signed-off-by: "Paul E. McKenney" <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'scripts/basic')
0 files changed, 0 insertions, 0 deletions