Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 31 Aug 2007 08:41:45 -0400
From:      John Baldwin <jhb@freebsd.org>
To:        Alfred Perlstein <alfred@freebsd.org>
Cc:        attilio@freebsd.org, smp@freebsd.org
Subject:   Re: request for review: backport of sx and rwlocks from 7.0 to 6-stable
Message-ID:  <200708310841.46735.jhb@freebsd.org>
In-Reply-To: <20070831071048.GF87451@elvis.mu.org>
References:  <20070831071048.GF87451@elvis.mu.org>

next in thread | previous in thread | raw e-mail | index | archive | help
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'.

-- 
John Baldwin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200708310841.46735.jhb>