Date: Sat, 29 Jun 2002 16:26:52 -0400 From: Don Bowman <don@sandvine.com> To: 'Jonathan Lemon' <jlemon@flugsvamp.com>, stable@freebsd.org Subject: RE: panic in 4.6 with knote_enqueue from kill Message-ID: <FE045D4D9F7AED4CBFF1B3B813C85337676636@mail.sandvine.com>
next in thread | raw e-mail | index | archive | help
Jonathan Lemon wrote: > In article > <local.mail.freebsd-stable/FE045D4D9F7AED4CBFF1B3B813C85337676 > 60F@mail.sandvine.com> you write: > >I have a system panic occuring with FreeBSD 4.6. The stack > trace is below... ... > > The assumption made when calling knote() is that we are already at the > correct spl level associated with a particular knote list, so > no locking > should be required. It appears that this isn't true for psignal(), it > can be called either from a syscall, or from an interrupt. > > My guess is that in the call chain above, after checking the kn_status > in KNOTE_ACTIVATE(), but before reaching splhigh() in > knote_enqueue, an > interrupt occurs which causes psignal() to be called again, and queues > the knote for retrieval. This causes the assertion to be triggered. > > Try the patch below. ... This appears to fix the problem (at least, the panic hasn't occurred since, and its been twice the previous 'normal' period). I suggest checking it in. --don To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?FE045D4D9F7AED4CBFF1B3B813C85337676636>