Stories
Slash Boxes
Comments

SoylentNews is people

posted by Fnord666 on Sunday May 10 2020, @06:47PM   Printer-friendly
from the stormy-weather dept.

System adminsitrator Chris Siebenmann has found Modern versions of systemd can cause an unmount storm during shutdowns:

One of my discoveries about Ubuntu 20.04 is that my test machine can trigger the kernel's out of memory killing during shutdown. My test virtual machine has 4 GB of RAM and 1 GB of swap, but it also has 347 NFS[*] mounts, and after some investigation, what appears to be happening is that in the 20.04 version of systemd (systemd 245 plus whatever changes Ubuntu has made), systemd now seems to try to run umount for all of those filesystems all at once (which also starts a umount.nfs process for each one). On 20.04, this is apparently enough to OOM[**] my test machine.

[...] Unfortunately, so far I haven't found a way to control this in systemd. There appears to be no way to set limits on how many unmounts systemd will try to do at once (or in general how many units it will try to stop at once, even if that requires running programs). Nor can we readily modify the mount units, because all of our NFS mounts are done through shell scripts by directly calling mount; they don't exist in /etc/fstab or as actual .mount units.

[*] NFS: Network File System
[**] OOM Out of memory.

We've been here before and there is certainly more where that came from.

Previously:
(2020) Linux Home Directory Management is About to Undergo Major Change
(2019) System Down: A systemd-journald Exploit
(2017) Savaged by Systemd
(2017) Linux systemd Gives Root Privileges to Invalid Usernames
(2016) Systemd Crashing Bug
(2015) tmux Coders Asked to Add Special Code for systemd
(2016) SystemD Mounts EFI pseudo-fs RW, Facilitates Permanently Bricking Laptops, Closes Bug Invalid
(2015) A Technical Critique of Systemd
(2014) Devuan Developers Can Be Reached Via vua@debianfork.org
(2014) Systemd-resolved Subject to Cache Poisoning


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 4, Informative) by RamiK on Sunday May 10 2020, @08:11PM (3 children)

    by RamiK (1813) on Sunday May 10 2020, @08:11PM (#992514)

    Seriously, I'm honestly surprised no one has forked it to try and have a less crazy upstream.

    If you're capable of doing cost-analysis for what it takes to develop and maintain a C++ project with the size and complexity of systemd, you're not going to bother developing it as-is or fork it in the first place. And by not going to bother, I mean you'll soon realize there's better and cheaper ways to get the same features without limiting yourself to a handful of highly skilled and limited-in-availability developers.

    I mean, Embedded doesn't need it... Gentoo and kin get most of it with fairly simple scripts... Guix's Shepherd is getting all of it and more with LISP scripts... So, why bother?

    --
    compiling...
    Starting Score:    1  point
    Moderation   +2  
       Informative=2, Total=2
    Extra 'Informative' Modifier   0  
    Karma-Bonus Modifier   +1  

    Total Score:   4  
  • (Score: 2) by NCommander on Sunday May 10 2020, @08:29PM (2 children)

    by NCommander (2) Subscriber Badge <michael@casadevall.pro> on Sunday May 10 2020, @08:29PM (#992517) Homepage Journal

    I've seen systemd on "embedded", although that's more people trying to stretch the definition.

    --
    Still always moving
    • (Score: 2) by RamiK on Monday May 11 2020, @01:06AM

      by RamiK (1813) on Monday May 11 2020, @01:06AM (#992591)

      Rather fitting for the age of network-connected kitchen appliances and toothbrushes. :/

      --
      compiling...
    • (Score: 2) by PocketSizeSUn on Monday May 11 2020, @08:47PM

      by PocketSizeSUn (5340) on Monday May 11 2020, @08:47PM (#993062)

      Ex: AFAIK all the nividia embedded development base is Ubuntu. For example Tesla uses NVIDIA chips and therefore Ubuntu because that's the kernel with the blobs and swimming upstream in embedded is a real PITA that rarely rewards quickly enough for management to agree to it.