• secret300@lemmy.sdf.org
    link
    fedilink
    arrow-up
    1
    ·
    1 day ago

    systemd-oomd usually kills the process before that happens tho. My system will hang for a bit but then it figures it out.

    • FizzyOrange@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      23 hours ago

      Ah maybe. I’m still on RHEL8. Even so, “it hangs a bit and kills a random process” is still shit! What it should do is suspend processes, and show you a GUI saying “you’re running low on memory, here are your running programs and how much they are using” and allow you to choose which processes to kill, or whatever.

      That would be far too user friendly for Linux though. I don’t think the kernel/Wayland Devs could really comprehend that tbh. They’ll say something along the lines of “users shouldn’t be doing that”.

      • bleistift2@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        1
        ·
        20 hours ago

        show you a GUI saying “you’re running low on memory, here are your running programs and how much they are using”

        Good luck with this approach on a server.

        If by ‘suspend’ you mean that the process will just halt, then: Which processes? All of them? Good luck displaying a message then. The last one that made a memory request? That might not be the true offender. The highest-consuming process? Same logic applies.

        If by ‘suspend’ you mean moving the memory to disk, then a single misbehaving process, may end up eating all of memory and all remaining disk space.

        • FizzyOrange@programming.dev
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          12 hours ago

          Good luck with this approach on a server.

          Indeed, obviously I’m talking about desktops here.

          If by ‘suspend’ you mean that the process will just halt, then: Which processes? All of them? Good luck displaying a message then.

          You could use some kind of heuristic to suspend ones using the most memory/CPU. Or just suspend them all. Obviously you would exclude the processes needed to display the message.

          If by ‘suspend’ you mean moving the memory to disk

          No I meant just pausing their execution. I’m pretty sure ctrl-alt-del does something like this on Windows.