Public bug reported: I'm not completely sure which package to log this against.
I'm running the kvm focal minimal cloud image from 20200302. I noticed on boot that there was an error complaining that systemd-systemctl couldn't update pid_max to the value it wanted: systemd-sysctl[117]: Couldn't write '4194304' to 'kernel/pid_max': Invalid argument Digging into it a bit more, this comes from /usr/lib/sysctl.d/50-pid-max.conf: # 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 However, the linux-image-kvm kernel is compiled with CONFIG_BASE_SMALL=1 and this triggers the following code in include/linux/threads.h #define PID_MAX_LIMIT (CONFIG_BASE_SMALL ? PAGE_SIZE * 8 : \ (sizeof(long) > 4 ? 4 * 1024 * 1024 : PID_MAX_DEFAULT)) which means that if CONFIG_BASE_SMALL is set we get a maximum limit of PAGE_SIZE * 8, which on x86 would be 32768. As a workaround I can override it with a file in /etc/sysctl.d/ but this shouldn't be needed. I really don't know if CONFIG_BASE_SMALL makes any sense on x86 cloud images, they really aren't small machines in the scheme of things! Cheers David ** Affects: linux-kvm (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux-kvm in Ubuntu. https://bugs.launchpad.net/bugs/1866149 Title: CONFIG_BASE_SMALL=1 restricts pid space, which conflicts with systemd default sysctl Status in linux-kvm package in Ubuntu: New Bug description: I'm not completely sure which package to log this against. I'm running the kvm focal minimal cloud image from 20200302. I noticed on boot that there was an error complaining that systemd-systemctl couldn't update pid_max to the value it wanted: systemd-sysctl[117]: Couldn't write '4194304' to 'kernel/pid_max': Invalid argument Digging into it a bit more, this comes from /usr/lib/sysctl.d/50-pid-max.conf: # 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 However, the linux-image-kvm kernel is compiled with CONFIG_BASE_SMALL=1 and this triggers the following code in include/linux/threads.h #define PID_MAX_LIMIT (CONFIG_BASE_SMALL ? PAGE_SIZE * 8 : \ (sizeof(long) > 4 ? 4 * 1024 * 1024 : PID_MAX_DEFAULT)) which means that if CONFIG_BASE_SMALL is set we get a maximum limit of PAGE_SIZE * 8, which on x86 would be 32768. As a workaround I can override it with a file in /etc/sysctl.d/ but this shouldn't be needed. I really don't know if CONFIG_BASE_SMALL makes any sense on x86 cloud images, they really aren't small machines in the scheme of things! Cheers David To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux-kvm/+bug/1866149/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp