History log of /fuchsia/zircon/kernel/lib/oom/include/lib/oom.h
Revision Date Author Comments
# e6e2db9e 21-Jul-2017 Dave Bort <dbort@google.com>

[magenta][oom] Kernel OOM-killer thread

Disabled by default; use kernel commandline "kernel.oom.enable=true" or
shell command "k oom start" to enable. Use "k oom lowmem" to trigger a
fake low-memory condition. (See docs/kernel_cmdline.md and "k oom" for
details)

Every second, checks the amount of free PMM memory, and kills a job
(that has running processes) if the free amount is less than
kernel.oom.redline-mb (10MB by default).

When killing, prints info about the larger memory-using processes and
the list of jobs it considers for killing. E.g.:

OOM: oom_lowmem(shortfall_bytes=524288) called
OOM: Process mapped committed bytes:
OOM: proc 1043 9M 'bin/devmgr'
OOM: proc 1861 24M 'devhost:pci#3:8086:2922'
OOM: Finding a job to kill...
OOM: (skip) job 1092 'fuchsia'
OOM: *KILL* job 1091 'magenta-services'
OOM: + proc 1093 run 'crashlogger'
OOM: + proc 1192 run 'virtual-console'
OOM: + proc 1219 run 'netsvc'
OOM: + proc 2062 run 'sh:console'
OOM: + proc 2140 run 'vc:sh'
OOM: + proc 2210 run 'vc:sh'
OOM: + proc 2245 run 'vc:sh'
OOM: = 7 running procs (7 total), 0 jobs
OOM: (next) job 1077 'magenta-drivers'
OOM: (next) job 1028 'root'
OOM: (next) job 1024 '<superroot>'

Change-Id: Icd5657575a59669d7851aece455b7eff9135cf0d