On Wed, 15 Jan 2014, Johannes Weiner wrote: > With a63d83f427fb ("oom: badness heuristic rewrite"), the OOM killer > tries to avoid killing privileged tasks by subtracting 3% of overall > memory (system or cgroup) from their per-task consumption. But as a > result, all root tasks that consume less than 3% of overall memory are > considered equal, and so it only takes 33+ privileged tasks pushing > the system out of memory for the OOM killer to do something stupid and > kill sshd or dhclient. For example, on a 32G machine it can't tell > the difference between the 1M agetty and the 10G fork bomb member. > > The changelog describes this 3% boost as the equivalent to the global > overcommit limit being 3% higher for privileged tasks, but this is not > the same as discounting 3% of overall memory from _every privileged > task individually_ during OOM selection. > > Revert back to the old priority boost of pretending root tasks are > only a quarter of their actual size. > Unfortunately, I think this could potentially be too much of a bonus. On your same 32GB machine, if a root process is using 18GB and a user process is using 14GB, the user process ends up getting selected while the current discount of 3% still selects the root process. I do like the idea of scaling this bonus depending on points, however. I think it would be better if we could scale the discount but also limit it to some sane value. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>