daemon: Sacrifice builders on OOM. * nix/libstore/build.cc (DerivationGoal::runChild): Maximise our OOM score adjustment. Change-Id: I418c763b499ca16e1ffe3c6033319112b9744f51
1 files changed, 6 insertions(+), 0 deletions(-) M nix/libstore/build.cc
M nix/libstore/build.cc => nix/libstore/build.cc +6 -0
@@ 2154,6 2154,12 @@ void DerivationGoal::runChild() determinism. */ int cur = personality(0xffffffff); if (cur != -1) personality(cur | ADDR_NO_RANDOMIZE); /* Ask the kernel to eagerly kill us & our children if it runs out of memory, regardless of blame, to preserve ‘real’ user data & state. */ try { writeFile("/proc/self/oom_score_adj", "1000"); // 100% } catch (...) { ignoreException(); } #endif /* Fill in the environment. */