Re: 2.6.24-rc5-mm1: problems with cat /proc/kpageflags

David Miller
2007-12-21T00:17:36Z

From: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Date: Thu, 20 Dec 2007 20:47:55 +0100

> [ 145.128915] TSTATE: 0000004411009603 TPC: 00000000005119ac TNPC: 00000000005119b0 Y: 00000000 Not tainted
> [ 145.128940] TPC: <kpagecount_read+0x94/0xe0>

My suspicion at this point is that with certain RAM layouts, simply
iterating over PFN's is simply not working out.

pfn_to_page() seems to be doing no range checking, and with sparsemem
vmemmap, which sparc64 always uses, this can be problematic.

It just blindly goes "vmemmap + pfn" which is asking for trouble, in
particular when the physical RAM layout really is sparse.

Maybe it's enough to add a pfn_valid() check here? If pfn_valid()
means there is a vmemmap translation setup for that page struct too,
it would work.