On Tue, 2006-09-12 at 17:44 +0100, David Woodhouse wrote:
> Basically all but PowerPC and i386 have problems; and the latter works
> only if you apply the patches I sent to Linus a few days ago.
> 
> This is just a basic check that the headers which _are_ exported don't
> try to include other headers which aren't. This can happen either
> because the former should not, or the latter _should_ be exported.
> Mostly, however, the solution is just to make sure the latter is
> included only within #ifdef __KERNEL__, because it's only needed within
> that ifdef anyway.

As of today, a number of other architectures are fixed and we're left
with a few stragglers whose headers may not be clean in the
linux-kernel-headers tarball I intend to make based on the 2.6.18
release.

These have been fixed in patches which the architecture maintainer has
already sent to Linus:

asm-mips/posix_types.h requires asm/sgidefs.h, which does not exist in exported 
headers
asm-mips/ptrace.h requires asm/isadep.h, which does not exist in exported 
headers
asm-mips/sigcontext.h requires asm/sgidefs.h, which does not exist in exported 
headers
asm-mips/statfs.h requires asm/sgidefs.h, which does not exist in exported 
headers
asm-mips/stat.h requires asm/sgidefs.h, which does not exist in exported headers
asm-mips/unistd.h requires asm/sgidefs.h, which does not exist in exported 
headers
asm-mips/user.h requires asm/reg.h, which does not exist in exported headers

asm-parisc/page.h requires asm-generic/memory_model.h, which does not exist in 
exported headers

asm-frv/page.h requires asm-generic/memory_model.h, which does not exist in 
exported headers
asm-frv/ptrace.h requires asm/registers.h, which does not exist in exported 
headers
asm-frv/sigcontext.h requires asm/registers.h, which does not exist in exported 
headers
asm-frv/termios.h requires asm-generic/termios.h, which does not exist in 
exported headers
asm-frv/user.h requires asm/registers.h, which does not exist in exported 
headers


These have patches which have been sent to the arch maintainer but which
I believe have not yet been forwarded to Linus:

asm-arm/elf.h requires asm/procinfo.h, which does not exist in exported headers
asm-arm/page.h requires asm-generic/page.h, which does not exist in exported 
headers


And these remain broken with no word from the maintainer. I've directly
Cc'd some arch maintainers this time in case they're not subscribed to
linux-arch:

asm-arm26/elf.h requires asm/procinfo.h, which does not exist in exported 
headers
asm-arm26/page.h requires asm-generic/page.h, which does not exist in exported 
headers
asm-cris/byteorder.h requires asm/arch/byteorder.h, which does not exist in 
exported headers
asm-cris/elf.h requires asm/arch/elf.h, which does not exist in exported headers
asm-cris/page.h requires asm/arch/page.h, which does not exist in exported 
headers
asm-cris/posix_types.h requires asm/bitops.h, which does not exist in exported 
headers
asm-cris/ptrace.h requires asm/arch/ptrace.h, which does not exist in exported 
headers
asm-cris/termios.h requires asm/rs485.h, which does not exist in exported 
headers
asm-cris/unistd.h requires asm/arch/unistd.h, which does not exist in exported 
headers
asm-cris/user.h requires asm/arch/user.h, which does not exist in exported 
headers
asm-h8300/page.h requires asm-generic/memory_model.h, which does not exist in 
exported headers
asm-m32r/page.h requires asm-generic/memory_model.h, which does not exist in 
exported headers
asm-m32r/ptrace.h requires asm/m32r.h, which does not exist in exported headers
asm-m32r/signal.h requires linux/linkage.h, which does not exist in exported 
headers
asm-m32r/unistd.h requires asm/syscall.h, which does not exist in exported 
headers
asm-m32r/user.h requires asm/processor.h, which does not exist in exported 
headers
asm-m68k/page.h requires asm-generic/page.h, which does not exist in exported 
headers
asm-m68knommu/page.h requires asm-generic/page.h, which does not exist in 
exported headers
asm-sh/page.h requires asm-generic/memory_model.h, which does not exist in 
exported headers
asm-sh/ptrace.h requires asm/ubc.h, which does not exist in exported headers
asm-sh64/page.h requires asm-generic/memory_model.h, which does not exist in 
exported headers
asm-sh64/shmparam.h requires asm/cache.h, which does not exist in exported 
headers
asm-sh64/signal.h requires asm/processor.h, which does not exist in exported 
headers
asm-sh64/user.h requires asm/processor.h, which does not exist in exported 
headers
asm-sparc/auxio.h requires asm/system.h, which does not exist in exported 
headers
asm-sparc/page.h requires asm-generic/memory_model.h, which does not exist in 
exported headers
asm-sparc/pbm.h requires asm/oplib.h, which does not exist in exported headers
asm-sparc/pgtsun4.h requires asm/contregs.h, which does not exist in exported 
headers
asm-sparc/turbosparc.h requires asm/pgtsrmmu.h, which does not exist in 
exported headers
asm-sparc64/floppy.h requires linux/init.h, which does not exist in exported 
headers
asm-sparc64/kdebug.h requires linux/notifier.h, which does not exist in 
exported headers
asm-sparc64/mostek.h requires asm/idprom.h, which does not exist in exported 
headers
asm-sparc64/page.h requires asm/const.h, which does not exist in exported 
headers
asm-sparc64/parport.h requires asm/ebus.h, which does not exist in exported 
headers
asm-sparc64/pstate.h requires asm/const.h, which does not exist in exported 
headers
asm-sparc64/shmparam.h requires asm/spitfire.h, which does not exist in 
exported headers
asm-um/page.h requires asm/vm-flags.h, which does not exist in exported headers
asm-um/unistd.h requires linux/syscalls.h, which does not exist in exported 
headers
asm-v850/page.h requires asm/machdep.h, which does not exist in exported headers
asm-v850/param.h requires asm/machdep.h, which does not exist in exported 
headers
asm-xtensa/byteorder.h requires asm/processor.h, which does not exist in 
exported headers
asm-xtensa/elf.h requires asm/coprocessor.h, which does not exist in exported 
headers
asm-xtensa/page.h requires asm-generic/memory_model.h, which does not exist in 
exported headers
asm-xtensa/shmparam.h requires asm/processor.h, which does not exist in 
exported headers
asm-xtensa/sigcontext.h requires asm/processor.h, which does not exist in 
exported headers


It may be that UM and ARM26 don't need to be exporting headers, because
they can use headers from the host architecture and from ARM32,
respectively. If that's the case, we should just remove the Kbuild files
from those architectures' include directories.

-- 
dwmw2

-
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to