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>