Bug in latest rev kern_acct.c: panic: Trying sleep, but thread marked as sleeping prohibited

Wojciech A. Koszek dunstan at freebsd.czest.pl
Sun Jan 1 10:19:20 PST 2006


On Sat, Dec 31, 2005 at 06:39:31PM -0600, Richard Todd wrote:
> "Wojciech A. Koszek" <dunstan at freebsd.czest.pl> writes:
> 
> > On Wed, Dec 21, 2005 at 11:11:43AM -0500, John Baldwin wrote:
> >> acctwatch() probably isn't a good thing to do from a callout since it wants to 
> >> do VOPs and such.  Probably the easiest fix is to stick acctwatch() in its 
> >> own kthread.
> >
> > I think I didn't break current behaviour. Patch is here:
> >
> > http://freebsd.czest.pl/dunstan/FreeBSD/kern_acct.0.patch
> >
> > Richard, could you try to repeat your problem with my patch?
> 
> Got a chance to try a new kernel today with your patch. I tried to reproduce 
> the panic by repeatedly copying a bunch of stuff onto /usr and deleting it
> in one window, and in another repeatedly doing "make configure; make clean"
> in one rather large port.  Lots of "Accounting suspended/resumed" messages
> in the logs and no panics.  So it's looking good from here. 

Thanks for testing this. I couldn't crash my box either. I belive that
KASSERT() before suspend/resume handling will always be true, just like
ACCT_ENABLED state. In the final version of the patch I'll include some
cosmetic changes suggested by Robert Watson (thanks!).

-- 
* Wojciech A. Koszek && dunstan at FreeBSD.czest.pl


More information about the freebsd-current mailing list