summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorDavid Rientjes <rientjes@google.com>2012-04-09 16:56:18 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2012-04-09 20:48:44 -0700
commit83dbbdbb38666e20a75fad2294cf1df77c52f121 (patch)
treecfed4ddb4468615cec47e086955672b306f8b993 /scripts
parent0034102808e0dbbf3a2394b82b1bb40b5778de9e (diff)
downloadkernel-common-83dbbdbb38666e20a75fad2294cf1df77c52f121.tar.gz
kernel-common-83dbbdbb38666e20a75fad2294cf1df77c52f121.tar.bz2
kernel-common-83dbbdbb38666e20a75fad2294cf1df77c52f121.zip
android, lowmemorykiller: remove task handoff notifier
The task handoff notifier leaks task_struct since it never gets freed after the callback returns NOTIFY_OK, which means it is responsible for doing so. It turns out the lowmemorykiller actually doesn't need this notifier at all. It's used to prevent unnecessary killing by waiting for a thread to exit as a result of lowmem_shrink(), however, it's possible to do this in the same way the kernel oom killer works by setting TIF_MEMDIE and avoid killing if we're still waiting for it to exit. The kernel oom killer will already automatically set TIF_MEMDIE for threads that are attempting to allocate memory that have a fatal signal. The thread selected by lowmem_shrink() will have such a signal after the lowmemorykiller sends it a SIGKILL, so this won't result in an unnecessary use of memory reserves for the thread to exit. This has the added benefit that we don't have to rely on CONFIG_PROFILING to prevent needlessly killing tasks. Reported-by: Werner Landgraf <w.landgraf@ru.ru> Cc: stable@vger.kernel.org Signed-off-by: David Rientjes <rientjes@google.com> Acked-by: Colin Cross <ccross@android.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions