Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 27 Jun 1999 19:46:41 -0700 (PDT)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Peter Wemm <peter@netplex.com.au>
Cc:        current@FreeBSD.ORG, mckusick@mckusick.com
Subject:   Re: BUF_LOCK() related panic.. 
Message-ID:  <199906280246.TAA16796@apollo.backplane.com>
References:   <19990627224713.A61D781@overcee.netplex.com.au>

next in thread | previous in thread | raw e-mail | index | archive | help
:Yep, I was aware of this before, but I didn't rip it out since I didn't
:know what Kirk's intentions were.  I'm assuming he's got his experience
:with making the BSD/OS vfs reentrant in mind, so I don't want to break
:anything that gets closer to that.  A seperate test and then lock would
:not be reentrant.  (Sure, there are far bigger problems than this, but
:every bit helps when we get there)

    I think that code runs at splbio(), so it would still work.  But your
    right -- making the buffer cache code operate in an SMP environment
    would require a single atomic lock attempt.  Still, to get to that
    point will take a huge amount of continued work so I would not worry
    about it too much now.

:Actually, I think there is another set if missing BUF_KERNPROC() calls,
:cluster_callback() frees buffers, so all buffers submitted with it had
:better be reassigned.  This is (I think) part of the problem that
:cluster_wbuild() is hitting - things were supposed to have been reassigned
:but are still hanging onto the current process.
:...
:--
:Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au
:

    It could be.  I've suggested to Kirk that he remove all the BUF_KERNPROC()
    stuff and instead reassign the lock in biodone().

    My qlock stuff doesn't require lock reassign on release, so that could be
    why it isn't having problems while the lockmgr() stuff is.

					-Matt
					Matthew Dillon 
					<dillon@backplane.com>


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




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