Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 01 Apr 2003 11:04:49 -0500 (EST)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Poul-Henning Kamp <phk@phk.freebsd.dk>
Cc:        Mark Murray <mark@grondar.org>
Subject:   Re: #include <sys/lock.h> and <sys/mutex.h>
Message-ID:  <XFMail.20030401110449.jhb@FreeBSD.org>
In-Reply-To: <31614.1049186650@critter.freebsd.dk>

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

On 01-Apr-2003 Poul-Henning Kamp wrote:
> In message <200304010837.h318bZ4j060918@grimreaper.grondar.org>, Mark Murray wr
> ites:
>>Poul-Henning Kamp writes:
>>> My present predicament is that I will probably put a mutex in the
>>> bio queue which is defined in <sys/bio.h>, and so far, I've found
>>> 20 .c files where I need to add <sys/lock.h> and <sys/mutex.h> and
>>> I am not yet at a point where LINT compiles.
>>> 
>>> Do we have a plan for these in the future ?  I can see three obvious
>>> options:
>>> 
>>> A) define them leaf #includes, and #include them from the majority of
>>>    our .c files.
>>> 
>>> B) Include them nested from other .h files which need them, in my
>>>    case <sys/bio.h>
>>> 
>>> C) Include them nested from a central .h file like <sys/kernel.h>
>>
>>Do you need the whole sys/lock.h and sys/mutex.h? Can you get by with
>>#including sys/_lock.h and/or sys/_mutex.h in sys/bio.h? And possibly
>>following up by adding the non-underscore variants in the hopefully
>>few places where they are actually needed.
> 
> I can probably get away with the _* versions, but I'd prefer to know
> what our plans for this sort of situation actually is...

The _lock.h and _mutex.h were the plan and are suitable for nesting
in other headers such as sys/bio.h when needed.  sys/lock.h and sys/mutex.h
should only be included when you need the actual API's rather than just
the structure definitions.  As another argument, I wouldn't mind having
sys/mutex.h and sys/sx.h include sys/lock.h but I'm not sure bde@ would
like that.

-- 

John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/



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