DragonFly bugs List (threaded) for 2004-08
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
Re: yet another kernel panic
:i have a build of 1.1-current from around 19th of august (old, but maybe the
:bug is still present today) and experienced a kernel panic, was running
:xorg with kde (kdebase, kdelibs, kdegames and thats about it), firefox,
:konsole, xmms, xterm and perhaps another app or two. the kernel panic
:happened when i tried running top (weird) ... the dump is located at:
:leaf:~rumko/memory_dumps/dump-28.8.04-16-46.tar.bz2
:i also have a backtrace if its usefull:
:
:...
:#6 0xc01c97b8 in fill_eproc (p=0xceff8200, ep=0xcf70f81c) at
:/usr/src/sys/kern/kern_proc.c:411
:#7 0xc01c990d in sysctl_out_proc (p=0xceff8200, td=0xc9a5db80,
:req=0xcf70fb50, doingzomb=0)
: at /usr/src/sys/kern/kern_proc.c:461
:#8 0xc01c9baa in sysctl_kern_proc (oidp=0xc03fe3c0, arg1=0x0, arg2=0,
Ok, here's a patch to try. fill_eproc() checks for p_stats == NULL
but it looks like I don't NULL it out when I deallocate the process's
kernel stack (which is where the stats are located). If a process is
left a zombie long enough the kernel's kstack cache might cause the
stack to be deallocated, leading to a panic in the eproc code.
-Matt
Index: vm_glue.c
===================================================================
RCS file: /cvs/src/sys/vm/vm_glue.c,v
retrieving revision 1.27
diff -u -r1.27 vm_glue.c
--- vm_glue.c 15 Aug 2004 15:00:22 -0000 1.27
+++ vm_glue.c 29 Aug 2004 16:45:15 -0000
@@ -275,6 +275,7 @@
void
vm_waitproc(struct proc *p)
{
+ p->p_stats = NULL;
cpu_proc_wait(p);
vmspace_exitfree(p); /* and clean-out the vmspace */
}
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]