panic: assertion: pmap->pm_stats.resident_count > 0 in pmap_release_free_page
Matthew Dillon
dillon at apollo.backplane.com
Tue Dec 29 19:58:13 PST 2009
:On Tue, Dec 29, 2009 at 10:37:47AM -0800, Matthew Dillon wrote:
:> Here's a new patch to try. I added a bunch more assertions to
:> try to catch it and I also check to make sure PG_ZERO'd pages
:> are zero (which is expensive but...).
:>
:> fetch http://apollo.backplane.com/DFlyMisc/pmap02.patch
:
:I had to update to the latest source to apply it cleanly. The backtrace
:seems to remain the same as before. The kernel and vmcore are at
:~y0netan1/crash/{kern,vmcore}.24.
It's a bit different. In this dump I found that for the entry
that asserted the pv was missing from the vm_page_t's pv list
but was present in the pmap's list for that va.
Since the pv is added and removed from both lists in tandem
that shouldn't be possible.
So... more debug code in this next patch. Now I verify that
the pte being added or removed matches the vm_page_t being
associated with the pv entry. Here is the patch:
fetch http://apollo.backplane.com/DFlyMisc/pmap03.patch
There is another possibility... it could be actual bad memory,
or bad timing if you've accelerated your cpus. Try shifting
the memory around and detuning the cpu frequency or FSB frequency
if the BIOS has the ability to do so. I only give it a 15% chance
of being the issue.
-Matt
Matthew Dillon
<dillon at backplane.com>
More information about the Bugs
mailing list