From 0e0d424c0f5e1b8cff32ed51033ee6e2f70a5676 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Sun, 19 May 2019 22:55:35 +0900 Subject: sysctl: bump pid range only on 64-bit systems Closes #12604. --- sysctl.d/50-default.conf | 4 ---- sysctl.d/50-pid-max.conf | 16 ++++++++++++++++ sysctl.d/meson.build | 7 +++++++ 3 files changed, 23 insertions(+), 4 deletions(-) create mode 100644 sysctl.d/50-pid-max.conf (limited to 'sysctl.d') diff --git a/sysctl.d/50-default.conf b/sysctl.d/50-default.conf index ace2302589..27084f6242 100644 --- a/sysctl.d/50-default.conf +++ b/sysctl.d/50-default.conf @@ -40,7 +40,3 @@ fs.protected_symlinks = 1 # Enable regular file and FIFO protection fs.protected_regular = 1 fs.protected_fifos = 1 - -# Bump the numeric PID range to its maximum of 2^22 (from the in-kernel default -# of 2^16), to make PID collisions less likely. -kernel.pid_max = 4194304 diff --git a/sysctl.d/50-pid-max.conf b/sysctl.d/50-pid-max.conf new file mode 100644 index 0000000000..1eff2d7ece --- /dev/null +++ b/sysctl.d/50-pid-max.conf @@ -0,0 +1,16 @@ +# This file is part of systemd. +# +# systemd is free software; you can redistribute it and/or modify it +# under the terms of the GNU Lesser General Public License as published by +# the Free Software Foundation; either version 2.1 of the License, or +# (at your option) any later version. + +# See sysctl.d(5) and core(5) for documentation. + +# To override settings in this file, create a local file in /etc +# (e.g. /etc/sysctl.d/90-override.conf), and put any assignments +# there. + +# Bump the numeric PID range to its maximum of 2^22 (from the in-kernel default +# of 2^16), to make PID collisions less likely. +kernel.pid_max = 4194304 diff --git a/sysctl.d/meson.build b/sysctl.d/meson.build index 64f6ce942e..3f072e3db7 100644 --- a/sysctl.d/meson.build +++ b/sysctl.d/meson.build @@ -6,6 +6,13 @@ install_data( in_files = [] +# Kernel determines PID_MAX_LIMIT by +# #define PID_MAX_LIMIT (CONFIG_BASE_SMALL ? PAGE_SIZE * 8 : \ +# (sizeof(long) > 4 ? 4 * 1024 * 1024 : PID_MAX_DEFAULT)) +if cc.sizeof('long') > 4 + install_data('50-pid-max.conf', install_dir : sysctldir) +endif + if conf.get('ENABLE_COREDUMP') == 1 in_files += ['50-coredump.conf'] endif -- cgit v1.2.3