Date: Thu, 16 Jan 1997 20:17:57 +0100 From: j@uriah.heep.sax.de (J Wunsch) To: spatula@gulf.net (Prisoner) Cc: freebsd-bugs@freefall.freebsd.org Subject: Re: kern/2494: page faults Message-ID: <Mutt.19970116201757.j@uriah.heep.sax.de> In-Reply-To: <199701151330.FAA29407@freefall.freebsd.org>; from Prisoner on Jan 15, 1997 05:30:02 -0800 References: <199701151330.FAA29407@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
As Prisoner wrote: > The page fault is almost always exactly the same. Here's the debugger > information from the last (and most common) fault: > > fault virtual address = 0x7200c4c > fault code = supervisor read, page not present > instruction pointer = 0x8:0xf017c4b4 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, def32 1, gran 1 > processor eflags = trace/trap, interrupt enabled, resume, IOPL=0 > current process = 4 (update) > interrupt mask = > kernel: type 12 trap, code=0 > breakpoint at _ffs_update +0xa4: cmpl $0x1,0x52c(%ebx) > > It's always within a few instructions to this location. That's in /sys/ufs/ffs/ffs_inode.c: int ffs_update(ap) struct vop_update_args /* { struct vnode *a_vp; struct timeval *a_access; struct timeval *a_modify; int a_waitfor; } */ *ap; { [...] fs = ip->i_fs; /* * Ensure that uid and gid are correct. This is a temporary * fix until fsck has been changed to do the update. */ if (fs->fs_inodefmt < FS_44INODEFMT) { /* XXX */ ^^^^ here Maybe this raises a flag for someone? OTOH, if it were a genuine bug in the code, it should happen reproducibly at the same location, not just ``somewhere around''... The fault VA looks suspicious, it's not just a NULL pointer. It's 0x7200c4c - 0x52c = 0x7200720. Looks like trashed memory -- a pointer has been trashed by repeatedly dumping the short 0x720 over it. Incidentally, 0x720 is a space in the video frame buffer, with the default attribute 0x7 (white gray on black). -- cheers, J"org joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE Never trust an operating system you don't have sources for. ;-)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Mutt.19970116201757.j>