Re: [PATCH v2 00/15] slab: overload struct slab over struct page to reduce memory usage

From: Andi Kleen
Date: Sat Oct 19 2013 - 18:40:04 EST


Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> writes:
>
> One example is mm/memory-failure.c:memory_failure(). It starts with a
> raw pfn, uses that to get at the `struct page', then starts playing
> around with it. Will that code still work correctly when some of the
> page's fields have been overlayed with slab-specific contents?

As long as PageSlab() works correctly memory_failure should be happy.

>
> This issue hasn't been well thought through. Given a random struct
> page, there isn't any protocol to determine what it actually *is*.
> It's a plain old variant record, but it lacks the agreed-upon tag field
> which tells users which variant is currently in use.

PageSlab() should work for this right?

For the generic case it may not though.

-Andi

--
ak@xxxxxxxxxxxxxxx -- Speaking for myself only
--
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/