Re: [PATCH] [3/16] POISON: Handle poisoned pages in page free

Minchan Kim
2009-04-07T23:22:04Z

Hi, Andi.

On Wed, Apr 8, 2009 at 12:09 AM, Andi Kleen <andi@firstfloor.org> wrote:
>
> Make sure no poisoned pages are put back into the free page
> lists.  This can happen with some races.
>
> This is allo slow path in the bad page bits path, so another
> check doesn't really matter.
>
> Signed-off-by: Andi Kleen <ak@linux.intel.com>
>
> ---
>  mm/page_alloc.c |    9 +++++++++
>  1 file changed, 9 insertions(+)
>
> Index: linux/mm/page_alloc.c
> ===================================================================
> --- linux.orig/mm/page_alloc.c  2009-04-07 16:39:26.000000000 +0200
> +++ linux/mm/page_alloc.c       2009-04-07 16:39:39.000000000 +0200
> @@ -228,6 +228,15 @@
>        static unsigned long nr_unshown;
>
>        /*
> +        * Page may have been marked bad before process is freeing it.
> +        * Make sure it is not put back into the free page lists.
> +        */
> +       if (PagePoison(page)) {
> +               /* check more flags here... */

How about adding WARNING with some information(ex, pfn, flags..).

> +               return;
> +       }
> +
> +       /*
>         * Allow a burst of 60 reports, then keep quiet for that minute;
>         * or allow a steady drip of one report per second.
>         */
>
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to majordomo@kvack.org.  For more info on Linux MM,
> see: http://www.linux-mm.org/ .
> Don't email: email@kvack.org
>

--
Kinds regards,
Minchan Kim