Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Sep 2000 12:00:10 -0700 (PDT)
From:      John Baldwin <jhb@pike.osd.bsdi.com>
To:        alpha@FreeBSD.org
Subject:   We have a missing Giant mtx_enter
Message-ID:  <200009131900.MAA42839@pike.osd.bsdi.com>

next in thread | raw e-mail | index | archive | help
Well, before my last round of commits, if you compiled a kernel with
INVARIANTS it didn't make it through the device probe before it died when
it tried to release the sched_lock when it didn't own it (probably due to
the recursion count not being properly saved & restored.)  With the stuff
I just committed, it can now boot into single user with INVARIANTS, but it
fails on an assertion entering multi-user.  We basically try to release
Giant when we don't actually have it.  My guess is that we aren't obtaining
Giant somewhere that we are supposed to be.  With my interrupt threads stuff,
it is still hanging trying to probe the SCSI busses.  I'm currently trying
to get that working at the moment, but the missing mtx_enter on Giant is
something we will need to solve eventually.  My guess is it might be
related to forking new processes based on where it died (when dhclient
forked a child process to presumably dink with ifconfig).

-- 

John Baldwin <jhb@bsdi.com> -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.cslab.vt.edu/~jobaldwi/pgpkey.asc
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200009131900.MAA42839>