[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20071230140116.GC21106@elte.hu>
Date: Sun, 30 Dec 2007 15:01:16 +0100
From: Ingo Molnar <mingo@...e.hu>
To: Christoph Lameter <clameter@....com>
Cc: Dhaval Giani <dhaval@...ux.vnet.ibm.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
htejun@...il.com, gregkh@...e.de,
Srivatsa Vaddagiri <vatsa@...ux.vnet.ibm.com>,
Balbir Singh <balbir@...ibm.com>, maneesh@...ux.vnet.ibm.com,
lkml <linux-kernel@...r.kernel.org>, stable@...nel.org,
linux-mm@...ck.org
Subject: Re: 2.6.22-stable causes oomkiller to be invoked
* Christoph Lameter <clameter@....com> wrote:
> Index: linux-2.6/arch/x86/mm/pgtable_32.c
> ===================================================================
> --- linux-2.6.orig/arch/x86/mm/pgtable_32.c 2007-12-26 12:55:10.000000000 -0800
> +++ linux-2.6/arch/x86/mm/pgtable_32.c 2007-12-26 12:55:54.000000000 -0800
> @@ -366,6 +366,15 @@ void pgd_free(pgd_t *pgd)
> }
> /* in the non-PAE case, free_pgtables() clears user pgd entries */
> quicklist_free(0, pgd_dtor, pgd);
> +
> + /*
> + * We must call check_pgd_cache() here because the pgd is freed after
> + * tlb flushing and the call to check_pgd_cache. In some cases the VM
> + * may not call tlb_flush_mmu during process termination (??).
that's incorrect i think: during process termination exit_mmap() calls
tlb_finish_mmu() unconditionally which calls tlb_flush_mmu().
> + * If this is repeated then we may never call check_pgd_cache.
> + * The quicklist will grow and grow. So call check_pgd_cache here.
> + */
> + check_pgt_cache();
> }
so we still dont seem to understand the failure mode well enough. This
also looks like a quite dangerous change so late in the v2.6.24 cycle.
Does it really fix the OOM? If yes, why exactly?
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists