Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 25 Jun 1999 13:27:49 -0700 (PDT)
From:      Julian Elischer <julian@whistle.com>
To:        Alan Cox <alc@cs.rice.edu>
Cc:        Luoqi Chen <luoqi@watermarkgroup.com>, dyson@iquest.net, smp@freebsd.org
Subject:   Re: Call to arms..-SMP
Message-ID:  <Pine.BSF.3.95.990625132540.4244B-100000@current1.whistle.com>
In-Reply-To: <19990625135341.H2331@cs.rice.edu>

next in thread | previous in thread | raw e-mail | index | archive | help

So I don't really understand the _cpl stuff.
in regards to _cml

I guess that theoretically, the BSDI method (lazy treading)
makes all that go away  doesn't it?.


On Fri, 25 Jun 1999, Alan Cox wrote:

> On Fri, Jun 25, 1999 at 02:21:08PM -0400, Luoqi Chen wrote:
> > > Here's a question: Try compiling a kernel "make -jN".  I experienced
> > > an immense slow-down.  (I added a call to acquire the giant lock if I 
> > > didn't already hold it just before userret.  So doreti needed to release
> > > it in all cases anyway.)  I concluded that the problem is related
> > > to _cpl because the following changes produced the same slowdown:
> > > 
> > > Index: src/sys/i386/i386/exception.s
> > > ===================================================================
> > > RCS file: /home/ncvs/src/sys/i386/i386/exception.s,v
> > > retrieving revision 1.61
> > > diff -c -r1.61 exception.s
> > > *** exception.s 1999/06/01 18:19:36     1.61
> > > --- exception.s 1999/06/25 05:54:03
> > > ***************
> > > *** 269,275 ****
> > >         movl    $7,TF_ERR(%esp)         /* sizeof "lcall 7,0" */
> > >         FAKE_MCOUNT(13*4(%esp))
> > >         MPLOCKED incl _cnt+V_SYSCALL
> > > -       SYSCALL_LOCK
> > >         ECPL_LOCK
> > >   #ifdef CPL_AND_CML
> > >         movl    $SWI_AST_MASK,_cml
> > > --- 269,274 ----
> > 
> > Maybe not, -current is using the int0x80 syscall interface (altsyscall),
> > not the old "lcall 7,0" interface you modified, you might want to remove
> > ALTSYSCALL_LOCK and try again.
> > 
> 
> This fixed the performance problem.  I'm amazed that I didn't
> deadlock before.
> 
> _cpl still however makes me queasy.  Does anyone know why
> we're locking a 32-bit store that ought to be atomic
> by its very nature?
> 
> Alan
> 
> 



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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.95.990625132540.4244B-100000>