request for review: backport of sx and rwlocks from 7.0 to 6-stable

Alfred Perlstein alfred at
Sat Sep 1 03:17:35 PDT 2007

* John Baldwin <jhb at> [070831 09:07] wrote:
> On Friday 31 August 2007 03:10:48 am Alfred Perlstein wrote:
> > Hi guys,
> > 
> > Some work here at work was approved for sharing with community so
> > I'm posting it here in hope of a review.
> > 
> > We run some pretty good stress testing on our code, so I think it's
> > pretty solid.
> > 
> > My only concern is that I've tried my best to preserve kernel source
> > API, but not binary compat though a few simple #defines.
> The sleepq and turnstile API/ABIs are internal and aren't used in any modules, 
> so there's no need to go through any hoops to preserve them.  The ABI 
> of 'struct sx' (it's size) must be maintained however, but your diff didn't 
> include any new files so I can't see if you did that.  You can remove all 
> your current #define's, etc. for turnstile and sleepq names.
> I would leave out the DB_SET() for 'show_sleepq' rather than duplicating the 
> function.  Alternatively, you could backport 1.41 of sys/ddb/ddb.h but leave 
> DB_SET() as an alias for DB_FUNC() in 6.x and add a DB_SET2() that is like 
> DB_SET() in 7 and use DB_SET2() for 'show sleepq'.

Ok, should have something in a few days.

- Alfred Perlstein

More information about the freebsd-smp mailing list