diff options
author | Paul E. McKenney <[email protected]> | 2012-03-07 17:54:00 +0400 |
---|---|---|
committer | Greg Kroah-Hartman <[email protected]> | 2012-03-07 13:18:51 -0800 |
commit | 1eda5166c7640092f512138be6899d050c3d62ed (patch) | |
tree | 9f7dd780afc5cdab0dc86524fa037650c0e80c46 /tools/perf/scripts/python/net_dropmonitor.py | |
parent | 2c52325ed2984069f893040f6139f0024e7d3b50 (diff) |
staging: android/lowmemorykiller: Don't unregister notifier from atomic context
The lowmemorykiller registers an atomic notifier for notfication of when
the task is freed. From this atomic notifier callback, it removes the
atomic notifier via task_free_unregister(). This is incorrect because
atomic_notifier_chain_unregister() calls syncronize_rcu(), which can
sleep, which shouldn't be done from an atomic notifier.
Fix this by registering the notifier during init, and only unregister it
if the lowmemorykiller is unloaded.
Rebased to -next by Paul E. McKenney.
Rebased to -next again by Anton Vorontsov.
Signed-off-by: Rabin Vincent <[email protected]>
Signed-off-by: Christian Bejram <[email protected]>
Signed-off-by: Paul E. McKenney <[email protected]>
Reported-by: John Stultz <[email protected]>
Signed-off-by: Anton Vorontsov <[email protected]>
Cc: stable <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/net_dropmonitor.py')
0 files changed, 0 insertions, 0 deletions