Re: 2.5.74-mm1

Andrew Morton
2003-07-05T01:15:39Z

William Lee Irwin III <wli@holomorphy.com> wrote:
>
> On Thu, Jul 03, 2003 at 02:37:14AM -0700, Andrew Morton wrote:
> > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.5/2.5.74/2.5.74-mm1/
>
> anton saw the OOM killer try to kill pdflush, causing tons of spurious
> wakeups. This should avoid picking kernel threads in select_bad_process().
>
>
> -- wli
>
>
> ===== mm/oom_kill.c 1.23 vs edited =====
> --- 1.23/mm/oom_kill.c Wed Apr 23 03:15:53 2003
> +++ edited/mm/oom_kill.c Fri Jul 4 14:03:32 2003
> @@ -123,7 +123,7 @@
> struct task_struct *chosen = NULL;
>
> do_each_thread(g, p)
> - if (p->pid) {
> + if (p->pid && p->mm) {
> int points = badness(p);
> if (points > maxpoints) {
> chosen = p;

Look at select_bad_process(), and the ->mm test in badness(). pdflush
can never be chosen.

Nevertheless, there have been several report where kernel threads _are_
being hit my the oom killer. Any idea why that is?