Ubuntu 26.10 changes how the desktop behaves when the machine runs low on memory, and the change is about who gets picked first. Applications die. The session stays.

What changed

Critical desktop services now carry a lower OOM score, which makes the kernel less likely to select them. Applications and background services keep a higher default score, so they stay the ones most likely to be terminated. The policy also disables the automatic systemd-oomd kill of the whole user session, because systemd-oomd does not use the same OOM priority scores as the kernel and could take out a service the session needs on memory pressure alone.

Why it was needed

Launchpad bug 2089800 has the failure being fixed. A reporter’s LXD setup spawned a pile of QEMU virtual machines, memory pressure followed, and the OOM killer picked gnome-characters. The unit’s OOM policy is stop, so dbus.service stopped with it, the user slice could not run without dbus, and the session went down. Their summary: crashing the session beats locking up the whole machine, but killing a browser or a virtual machine would have been better than losing everything in progress.

The kernel’s oom_score_adj runs from -1000, never kill me, to 1000, always kill me. The fix landed in ubuntu-settings 26.10.1, uploaded on 7 September as one set that can be reverted as a whole.

What it does not fix

The thread carries a counter-example from 24.04.4 on 32 GB of RAM with 8 GB of swap. GNOME Shell’s own -1000 protection worked and the kernel killed a browser renderer instead, and the X11 session still collapsed to the log-out screen a second later, because the killed process was not in its own cgroup scope. OOM scores are guidance to the kernel rather than a guarantee, and where the process sits looks like a second problem.

Canonical wants this tested on the development release now, ahead of release in about a month.

My read

This fixes the most annoying way for a desktop to fail, where the session dies and the process eating the memory survives. It arrives in 26.10, so anyone on an LTS keeps the old behaviour. On a machine short of RAM and swap, the process that gets killed is the one to watch.

Source: Improving Ubuntu Desktop stability under memory pressure and Launchpad bug 2089800