Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Jun 1999 11:20:02 -0700 (PDT)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Kirk McKusick <mckusick@flamingo.McKusick.COM>
Cc:        Alan Cox <alc@cs.rice.edu>, Julian Elischer <julian@whistle.com>, Mike Smith <mike@smith.net.au>, Peter Wemm <peter@FreeBSD.ORG>, "John S. Dyson" <toor@dyson.iquest.net>, dg@root.com, dyson@iquest.net, current@FreeBSD.ORG, Greg Lehey <grog@lemis.com>
Subject:   Re: Found the startup panic - ccd ( patch included ) 
Message-ID:  <199906281820.LAA23440@apollo.backplane.com>
References:   <199906281338.GAA02414@flamingo.McKusick.COM>

next in thread | previous in thread | raw e-mail | index | archive | help
:and B_WANTED code also required protection to avoid races), it would
:make a big performance improvement to just go make sure that all the
:BUF_ calls are already protected rather than needlessly add those splbio
:and splx calls.
:
:	Kirk

    Not as big as removing the lockmgr() code and replacing it with something
    more efficient.  Do you realize that the change from B_BUSY to lockmgr()
    in the getnewbuf() has halved its loop performance?  8 subroutine calls
    have been indirectly added to the core loop.  Eight!  And none of them
    trivial.  The serial counter you added halved it again.  The loop
    performance is now 1/4 what it was before, which means that every time 
    getnewbuf() cannot find a new buffer at the beginning of its scan its
    inefficiencies are compounded 4x per element.  I spent a lot of time 
    working on getnewbuf()'s performance and all those gains have now been
    erased.

    Look, I agree that we needed to change the B_BUSY stuff to some sort of
    new locking system, but that doesn't mean we have to throw the kitchen sink
    in along with it!  And it doesn't mean that we have to create a mess in
    the code just to support certain essentricies that I am almost certain we
    can do without.

						-Matt



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?199906281820.LAA23440>