Date: Tue, 12 Aug 1997 21:43:13 -0700 From: David Greenman <dg@root.com> To: Julian Elischer <julian@FreeBSD.ORG> Cc: hackers@FreeBSD.ORG Subject: Re: 2.2.2+ crash.. more info Message-ID: <199708130443.VAA07651@implode.root.com> In-Reply-To: Your message of "Tue, 12 Aug 1997 18:10:50 PDT." <199708130110.SAA21060@freefall.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
>it was put onto the sleep queue accidentally by interrupt code >that just had it's proc address by accident? >unlikely. Quite likely. It's fairly easy to have a bug where a resource is exhausted (usually memory) in a subroutine called from an interrupt routine, resulting in a tsleep() if the call to malloc isn't M_NOWAIT. If there happens to be a process running at the time, then that process will be the one bogusly put to sleep. This can obviously cause all sorts of problems, not the least of which is the one you have above. If a process was not running, the system will usually crash when it dereferences a NULL curproc pointer. The fact that the p_wmesg was "swread" is very indicative of this... -DG David Greenman Core-team/Principal Architect, The FreeBSD Project
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199708130443.VAA07651>