Messages in this thread | | | Date | Fri, 2 Sep 2005 22:28:59 -0600 | From | Erik Andersen <> | Subject | Re: [RFC] Splitting out kernel<=>userspace ABI headers |
| |
On Sat Sep 03, 2005 at 12:07:58AM +0000, H. Peter Anvin wrote: > Followup to: <20050902235833.GA28238@codepoet.org> > By author: Erik Andersen <andersen@codepoet.org> > In newsgroup: linux.dev.kernel > > > > <uClibc maintainer hat on> > > That would be wonderful. > > </off> > > > > It would be especially nice if everything targeting user space > > were to use only all the nice standard ISO C99 types as defined > > in include/stdint.h such as uint32_t and friends... > > > > Absolutely not. This would be a POSIX namespace violation; they > *must* use double-underscore types.
I assume you are worried about the stuff under asm that ends up being included by nearly every header file in the world. Of course asm must use double-underscore types. But the thing is, the vast majority of the kernel headers live under linux/include/linux/ and do not use double-underscore types, they use kernel specific, non-underscored types such as s8, u32, etc. My copy of IEEE 1003.1 and my copy of ISO/IEC 9899:1999 both fail to prohibit using the shiny new ISO C99 type for the various #include <linux/*> header files, which is what I was suggesting.
The world would be so much nicer a place if user space were free to #include linux/* header files rather than keeping a per-project private copy of all kernel structs of interest. And where these kernel headers would #include stdint.h and define their stucts in terms of ISO C99 types. I see nothing at all in the standards preventing such a change,
-Erik
-- Erik B. Andersen http://codepoet-consulting.com/ --This message was written using 73% post-consumer electrons-- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |