[RFC][PATCH 1/2] Create initial kernel ABI header infrastructure

Randy.Dunlap rdunlap at xenotime.net
Sun Apr 2 02:22:13 CEST 2006


On Wed, 29 Mar 2006 22:26:41 +0000 Pavel Machek wrote:

> Hi!
> 
> > I plan to add a lot of other definitions to this file 
> > later on.  For  example different architectures have 
> > different notions of what a  __kernel_ino_t is (unsigned 
> > int versus unsigned long).  I may rename  this file as 
> > types.h, but from looking through the code I figure I'll  
> > have enough general purpose declarations about "This 
> > architecture has  blah" that a separate stddef.h file 
> > will be worth it.
> > 
> > >(and... why do you prefix these with _KABI? that's a 
> > >mistake imo.  Don't bother with that. Really. Either 
> > >these need exporting to  userspace, but then either use 
> > >__ as prefix or don't use a prefix.  But KABI.. No.)
> > 
> > According to the various standards all symbols beginning 
> > with __ are  reserved for "The Implementation", including 
> > the compiler, the  standard library, the kernel, etc.  In 
> > order to avoid clashing with  any/all of those, I picked 
> > the __KABI_ and __kabi_ prefixes for  uniqueness.  In 
> > theory I could just use __, but there are problems  with 
> > that too.  For example, note how the current compiler.h 
> > files  redefine __always_inline to mean something kinda 
> > different.  The GCC  manual says we should be able to 
> > write this:
> 
> __KABI_ everywhere will just make your headers totally unreadable.
> Please don't do that.

Ack, I agree.

---
~Randy


More information about the llh-discuss mailing list