yet another kernel panic

Rum rumko at precious.networklinux.net
Thu Sep 2 05:55:57 PDT 2004


On 2004-08-29, Matthew Dillon <dillon at xxxxxxxxxxxxxxxxxxxx> wrote:
>
>: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 */
>  }

i tried updating the source and checked just in case is the line i had to add
manually is still there ... and its not ... shouldnt this be commited in the
cvs or does that panic only occur on my machine?





More information about the Bugs mailing list