Andrzej Bialecki wrote:
> Hi,
>
> Sources are from yesterday, machine is Toshiba Portege 7020CT. During make
> -j24 buildworld machine dies with the following panic mesage (notice
> absence of register dump):
>
> kernel: type 12 trap, code=0
> Stopped at vm_page_zero_idle+0xc9: movl %eax,0x4(%edx)
>
> db> tr
> vm_page_zero_idle(e,66a,2,183f9ff,756e6547) at vm_page_zero_idle+0xc9
> idle_loop() at idle_loop+0x2d
That's because there is no process context at this point, and nowhere the
registers are saved for the idle ``context''.
Trap 12 is a page fault. Do a 'show registers' to see what's up. I
would like to know what %edx is.
It's trapping here:
m = vm_page_list_find(PQ_FREE, free_rover, FALSE);
if (m != NULL && (m->flags & PG_ZERO) == 0) {
--(*vm_page_queues[m->queue].lcnt);
TAILQ_REMOVE(vm_page_queues[m->queue].pl, m, pageq);
^^^^^^^^^^^^^^^^^^^^^^^^^^^
m->queue = PQ_NONE;
splx(s);
Specifically, vm_page_queues[m->queue].pl is invalid or the tailq corrupt
or something evil along those lines. Or, m->queue is bogus and causing
an out of bounds array lookup. Hmm, do a show registers and record %eax
at this point too.
Cheers,
-Peter
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message