Messages in this thread | | | From | Kyle Moffett <> | Subject | Re: [RFC][MEGAPATCH] Change __ASSEMBLY__ to __ASSEMBLER__ (defined by GCC from 2.95 to current CVS) | Date | Mon, 12 Sep 2005 17:39:35 -0400 |
| |
On Sep 12, 2005, at 17:14:26, Paul Jackson wrote: > Sam wrote: >> ... for absolutely no gain. > > I hear the usual and reasonable arguments on one side, > favoring consolidating the headers. > > The final phrase "absolutely no gain" suggests a lack > of consideration for the usual and reasonable arguments > that no doubt exist on the other side.
I dunno about Sam, but I've looked at this a lot, and there really seem to be no advantages to keeping them separate. There's a lot of cruft in the kernel headers, and in many cases a lack of organization. By keeping the user-accessible kernel-headers separate, you save work in the short term by putting off cleaning up that cruft, but in the long term you have twice the maintenance burden, in addition to the fact that you'll need to clean up the cruft eventually anyways. The user-space-accessible versions will be identical to the kernel-space-accessible ones except without some private kernel stuff. Also, by having the separation _within_ the kernel tree, we can help trigger more thought about kernel/user ABI for new drivers, because it's much more obvious exactly what the userspace interface is when it goes in. It also makes it much easier to have a template header file to show driver authors how to get their user/kernel interfaces correct the first time. If someone sees something about this that I'm missing, then please tell me, but as far as I can tell, keeping this project out of the kernel would give "absolutely no gain" over doing it in kernel, and would in fact result in massive amounts of duplicated effort ("You forgot to patch user-kernel-headers to add your shiny new IOCTL!"). It also is dismissive to suckers^H^H^H^H^H^Hpeople who are willing to invest effort in cleaning up kernel headers, removing messy include cycles, breaking up monoliths like linux/sched.h, etc.
Cheers, Kyle Moffett
-- Unix was not designed to stop people from doing stupid things, because that would also stop them from doing clever things. -- Doug Gwyn
- 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/
| |