From dace7dca77e9539b5cb459f79c1154d11b3030fe Mon Sep 17 00:00:00 2001 From: Nathan Reiner Date: Thu, 23 Mar 2023 20:28:57 +0100 Subject: first version of wlock --- oom.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 oom.h (limited to 'oom.h') diff --git a/oom.h b/oom.h new file mode 100644 index 0000000..04d94a7 --- /dev/null +++ b/oom.h @@ -0,0 +1,27 @@ +#ifdef __linux__ +static void disable_oom_killer(); + +#include +#include + +void +disable_oom_killer() +{ + FILE *f; + const char oomfile[] = "/proc/self/oom_score_adj"; + + if (!(f = fopen(oomfile, "w"))) { + if (errno == ENOENT) + return; + die("slock: fopen %s: %s\n", oomfile, strerror(errno)); + } + fprintf(f, "%d", OOM_SCORE_ADJ_MIN); + if (fclose(f)) { + if (errno == EACCES) + die("slock: unable to disable OOM killer. " + "Make sure to suid or sgid slock.\n"); + else + die("slock: fclose %s: %s\n", oomfile, strerror(errno)); + } +} +#endif -- cgit v1.2.3-70-g09d2