Re: [patch 1/2] x86: track memtype for RAM in page struct

From: Ingo Molnar
Date: Sun Sep 14 2008 - 10:12:59 EST



* Venkatesh Pallipadi <venkatesh.pallipadi@xxxxxxxxx> wrote:

> From: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>
> Subject: [patch 1/2] x86: track memtype for RAM in page struct
>
> Track the memtype for RAM pages in page struct instead of using the
> memtype list. This avoids the explosion in the number of entries in
> memtype list (of the order of 20,000 with AGP) and makes the PAT
> tracking simpler. We are using PG_arch_1 bit in page->flags.

this is in contradiction to this comment:

> /*
> + * RED-PEN: TODO: Add PageReserved() check aswell here,
> + * once we add SetPageReserved() to all the drivers using
> + * set_memory_* or set_pages_*

if it's marked PG_arch_1, why is there any need for PageReserved?

> + *
> + * This will help prevent accidentally freeing pages
> + * before setting the attribute back to WB.

setting it PageReserved is a hack. We should set it PG_arch_1 and extend
the page allocator to emit a kernel warning if a PG_arch_1 page is
freed.

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/