H. Peter Anvin wrote:
> I suggested include/kernel and include/arch with include/linux and
> include/asm being reserved for the kernel interfaces (ioctl and their
> structures mostly.)

That sounds good.  One other refinement I would like to see is that
architecture specific but always present header files don't get used
directly in architecture-independant .c flies.  Some common examples of
this are <asm/io.h> and <asm/uaccess.h>  The problem is that often there
is some code that is identical between some or all of the archs.  Then
one of two things happen:
  * The code gets duplicated in many *.h files with all the bad things that
    comde duplication causes - especially since they're all under seperate
    maintainership
  * We have a big ugly conversion like what happened with 'asm/spinlock.h' ->
    'linux/spinlock.h'

If we only have arch-independant *.c files only include things out of
<kernel/*> (which may, of course, include things in <arch/*>) we can
avoid these conversions in the future and promote code reuse between the
architectures.

Also we should probably consider implementing a reasonalbe hierarchy to
the proposed <kernel/*.h> directory - for instance <kernel/bus/pci.h>.

-Mitch
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/

Reply via email to