Re: [PATCH] resolve duplicate flag no for PG_lazyfree

From: Andrew Morton
Date: Mon May 14 2007 - 01:46:59 EST


On Mon, 14 May 2007 10:37:18 +0800 Fengguang Wu <fengguang.wu@xxxxxxxxx> wrote:

> PG_lazyfree and PG_booked shares the same bit.
>
> Either it is a bug that shall fixed by the following patch, or
> the situation should be explicitly documented?
>
> Signed-off-by: Fengguang Wu <wfg@xxxxxxxxxxxxxxxx>
> ---
> include/linux/page-flags.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- linux-2.6.21-mm2.orig/include/linux/page-flags.h
> +++ linux-2.6.21-mm2/include/linux/page-flags.h
> @@ -91,7 +91,7 @@
> #define PG_buddy 19 /* Page is free, on buddy lists */
> #define PG_booked 20 /* Has blocks reserved on-disk */
>
> -#define PG_lazyfree 20 /* MADV_FREE potential throwaway */
> +#define PG_lazyfree 21 /* MADV_FREE potential throwaway */
>
> /* PG_owner_priv_1 users should have descriptive aliases */
> #define PG_checked PG_owner_priv_1 /* Used by some filesystems */

That's an accident: PG_lazyfree got added but the out-of-tree ext4 patches
didn't get updated.

otoh, the intersection between pages which are PageBooked() and pages which
are PageLazyFree() should be zreo, so it'd be good to actually formalise
this reuse within the ext4 patches.

otoh2, PageLazyFree() could have reused PG_owner_priv_1.

Rik, Ted: any thoughts? We do need to scrimp on page flags: when we
finally run out, we're screwed.
-
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/