Re: bad page state under possibly oom situation

From: Manfred Spraul
Date: Thu Nov 03 2005 - 01:42:54 EST


Hugh Dickins wrote:

(I don't know that it makes any difference, but was this particular report
from 2.6.9-rc2 or from 2.6.14 or from something else? In both 2.6.9 and
2.6.14, flags 0x90 mean PG_slab|PG_dirty.)



A very odd combination:
- free_pages_check() ensures that neither PG_slab nor PG_dirty are set
- prep_new_page() complains that both PG_slab and PG_dirty are set
- AFAICS slab doesn't set PG_dirty, and noone except slab set PG_slab.

I don't understand how two wrong bits can end up in page->flags.
Dipankar, could you modify bad_page() and hexdump +-128 bytes? Perhaps someone overwrites random memory. Or change the value of PG_slab to 20 and check if page->flags remains 0x90.

--
Manfred
-
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/