Ubuntu Would Rather Kill Your Apps Before It Takes Down The Session

Ubuntu 26.10 is shipping a change that should keep the desktop standing when your memory runs out.
Warp Terminal

Ubuntu 26.10 is changing what your machine kills when memory runs out. Applications are meant to go first, and the services that hold the session together now sit behind them. Thirty-nine of those services move to an OOM score of -500, with GNOME Shell and two D-Bus services among them.

That makes them a far less likely pick for the kernel's OOM killer. Instead, something like a web browser holding the majority of the memory on your machine becomes the likelier candidate to be pruned.

Canonical has also switched off the systemd-oomd check that could take out your whole session on memory pressure alone. Though that change comes with a caveat where apps can still be terminated when memory runs out.

The policy has been implemented with ubuntu-settings 26.10.1 and is already published to the 26.10 archive.

What does the kernel see?

Under pressure, the kernel draws up a list of every process. It scores each one on the memory it can account for, then adds a user-space number on top. That second number is the one Ubuntu gets to set for you. It runs from -1000 up to 1000, and staying at the bottom of that range means a process is kicked out of the running order.

An earlier report cited by Canonical shows what that list looked like on an Ubuntu 24.10 desktop in 2024. GNOME Shell sat at 100, so did Firefox, and so did every content process it spawned.

The system daemons already sat far lower. dbus-daemon and systemd-oomd were at -900, and systemd-journald at -250. What caused the squeeze was a logic error in the reporter's own code, which set off a run of virtual machines and left the machine starved of memory.

It resulted in the killer picking one small app, gnome-characters, and killing it, leaving the virtual machines untouched.

Scores were only half of it

The kernel is not the only thing on a desktop that kills. systemd-oomd watches memory pressure instead, and it acts earlier than the kernel does without ever looking at those scores.

Ubuntu ships it set to act on the user session at 50% pressure, so the -500 values could not have saved anything on their own. The same ubuntu-settings patch handles the oomd side as well.

ManagedOOMMemoryPressure is now set to auto on user@.service, over systemd-oomd's "kill" setting it had before. In Canonical's own testing, seven out of ten sessions died without the fix, and none died with it.

Want to try it?

If you want to see the new behavior now, the change is already in the development release. Canonical is asking people to put it to the test under workloads that eat memory on a machine short of RAM or swap.

If you face any unexpected behavior, like abrupt terminations or session crashes, then you can report those via Launchpad.

Enjoyed this update? Support independent Linux news coverage

It's FOSS has been helping people use Linux for the past 14 years. Help us stay independent from big tech. Become a Plus member, enjoy ad-free reading and get 5 eBooks.

Plus yearly

Ad-free, FREE ebooks

Join yearly

Buy us a coffee

Any amount, no commitment

Support on Ko-fi
About the author
Sourav Rudra

Sourav Rudra

A nerd with a passion for open source software, custom PC builds, motorsports, and exploring the endless possibilities of this world.

Become a Better Linux User

With the FOSS Weekly Newsletter, you learn useful Linux tips, discover applications, explore new distros and stay updated with the latest from Linux world

itsfoss happy penguin

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to It's FOSS.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.