libkse and SMP (was Re: USB bulk read & pthreads)

Daniel Eischen eischen at pcnet1.pcnet.com
Fri May 23 23:35:44 PDT 2003


On Fri, 23 May 2003, Terry Lambert wrote:

> Daniel Eischen wrote:
> > On Fri, 23 May 2003, Terry Lambert wrote:
> > > This is handy to know; so basically, my expectation from
> > > reading the code around PTHREAD_SCOPE_SYSTEM was correct:
> > > a single CPU system with PTHREAD_SCOPE_PROCESS (the default)
> > > can still get itself blocked in the kernel by a single
> > > blocking call (as in the USB bulk read device issue).
> > 
> > If I am reading you correctly, then no.  Scope process
> > threads will block in the kernel, but upcalls will be
> > made to the originating KSE and new threads will be
> > scheduled.
> 
> I'm rereading it, but I don't see that interpretation.
> 
> I guess if both you and Julian both called me on it, I must
> have misexpressed myself, but I currently don't understand
> how.  8-|.

I think it was the part about "a single CPU system with
PTHREAD_SCOPE_PROCESS (the default) can still get itself
blocked in the kernel by a single blocking call" without
mentioning that it won't block other scope process
threads from being run.

-- 
Dan Eischen



More information about the freebsd-hackers mailing list