Re: 2.5.62-mm3 - no X for me

From: Dave McCracken (dmccr@us.ibm.com)
Date: Tue Feb 25 2003 - 12:57:08 EST


--On Tuesday, February 25, 2003 01:55:37 -0800 Andrew Morton
<akpm@digeo.com> wrote:

> Ah, thank you.
>
> kernel BUG at mm/rmap.c:248!
>
> The fickle finger of fate points McCrackenwards.

Yep. He tripped over my sanity check that pages not marked anon actually
have a real mapping pointer. Apparently X allocates a page that should be
marked anon but isn't.

My main reason for adding the anon flag was to prove to myself that the
mapping pointer can be trusted. Apparently it can, generally, but it looks
like I haven't successfully tracked down all the places that should set it.
It looks like anon pages can come from random sources, so it might be an
impossible task to find them all.

I know you said you like the idea of having the flag, but I think the
cleanest fix would be to change the check from

        if (PageAnon(page))
to
        if (page->mapping && !PageSwapCache(page))

Or I could set the anon flag based on that test. I know page flags are
getting scarce, so I'm leaning toward removing the flag entirely.

What would you recommend?

Dave McCracken

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



This archive was generated by hypermail 2b29 : Fri Feb 28 2003 - 22:00:29 EST