linux/drivers/staging/android
San Mehat 4964cd41cd staging: android: lowmemorykiller: Don't try to kill the same pid over and over
Under certain circumstances, a process can take awhile to
handle a sig-kill (especially if it's in a scheduler group with
a very low share ratio). When this occurs, lowmemkiller returns
to vmscan indicating the process memory has been freed - even
though the process is still waiting to die. Since the memory
hasn't actually freed, lowmemkiller is called again shortly after,
and picks the same process to die; regardless of the fact that
it has already been 'scheduled' to die and the memory has already
been reported to vmscan as having been freed.

  Solution is to check fatal_signal_pending() on the selected
task, and if it's already pending destruction return; indicating
to vmscan that no resources were freed on this pass.

Signed-off-by: San Mehat <san@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-11-30 20:51:36 +09:00
..
binder.c Staging: android: binder: Create dedicated workqueue for binder deferred work 2011-11-30 20:51:36 +09:00
binder.h
Kconfig
logger.c android: logger: Add new system log for framework/system log messages 2011-11-30 20:40:06 +09:00
logger.h android: logger: Add new system log for framework/system log messages 2011-11-30 20:40:06 +09:00
lowmemorykiller.c staging: android: lowmemorykiller: Don't try to kill the same pid over and over 2011-11-30 20:51:36 +09:00
Makefile
ram_console.c
timed_gpio.c Staging: android: timed_gpio: Request gpios. 2011-11-30 20:40:05 +09:00
timed_gpio.h
timed_output.c Staging: android: timed_gpio: Properly discard invalid timeout values. 2011-11-30 20:51:36 +09:00
timed_output.h
TODO