Date: Thu, 11 Jul 2002 16:26:14 -0700 From: Peter Wemm <peter@wemm.org> To: John Baldwin <jhb@FreeBSD.org> Cc: Matthew Dillon <dillon@apollo.backplane.com>, Julian Elischer <julian@elischer.org>, freebsd-current@FreeBSD.ORG, Alfred Perlstein <bright@mu.org> Subject: Re: Proposed fix for SMP vm_zeroidle.c Message-ID: <20020711232614.CEDDD38CC@overcee.wemm.org> In-Reply-To: <XFMail.20020711183853.jhb@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
John Baldwin wrote: > > On 11-Jul-2002 Matthew Dillon wrote: > > Here is my proposed fix for the page-zeroing problem w/ SMP. It > > is untested (I'm about to test it)... I'm looking for comments on > > the concept. If the comments are positive and my testing succeeds I > > will commit it tonight. > > > > Basically the idea is simple. Provide a function that mi_switch() can > > call when switching in a thread. The page zeroing code sets this > > function to cpu_invlpg(CADDR3) on switch-in, thus dealing with any > > potential switch between cpu's with virtually no overhead (no overhead > > that we care about anyway). > > > > I daresay that this mechanism could be used for a number of other > > purposes as well. > > > > What do you think? > > Sounds fine to me. I'm not sure it will be all that useful for other > things in the future but it conveniently solves the problem at hand > at least. ARRGH!! NOOOO!!! I've almost completely replaced this code! I suggested a function for activation a few days ago too, but was going to leave it till after this commit, which I hoped to get done today. This reactivates PG_G for SMP and avoids global invltlb's when we can do finer grained shootdowns. Cheers, -Peter -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com "All of this is for nothing if we don't go to the stars" - JMS/B5 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?20020711232614.CEDDD38CC>