Subject: Re: we_re_toast: kdb_trap() in trap.c
To: der Mouse <mouse@Rodents.Montreal.QC.CA>
From: Bill Sommerfeld <sommerfeld@orchard.arlington.ma.us>
List: port-i386
Date: 06/22/1999 11:10:30
> What's the matter here?  Based on a quick look at the code, this
> appears to be some failure mode proceeding from an ordinary page fault.
> What's not clear is why this page fault failed when most page faults
> work fine.  It appears to be for address zero, but if dereferencing
> address zero were all it took to produce this, it would have been
> caught long since.

Looks like a page fault in kernel mode due to a bogus pointer
dereference in sys_dup2():

> Stopped in cpp at       _sys_dup2+0x37: xorl    %esp,0x34(%edi)

The instruction looks a little .. wierd, at least out of context.

xor of the stack pointer into the memory location at address
%edi+0x34 (!!!?)

my kernel has, at that location:

	(gdb) x/i sys_dup2+0x37
	0xf018bb53 <sys_dup2+55>:       xorl   %edx,%edx

Possible corrupted kernel text, maybe?

				- Bill