On Wednesday 21 January 2009, David Miller wrote: > From: Jaswinder Singh Rajput <jaswinder@xxxxxxxxxx> > Date: Wed, 21 Jan 2009 05:34:17 +0530 > > > usr/include/asm-generic/fcntl.h is giving 2 'make headers_check' warnings: > > usr/include/asm-generic/fcntl.h:127: leaks CONFIG_64BIT to userspace where it is not valid > > usr/include/asm-generic/fcntl.h:149: leaks CONFIG_64BIT to userspace where it is not valid > > > > usr/include/asm-generic/fcntl.h: > ... > > #ifndef CONFIG_64BIT will always be true for userspace. So what is the use of #ifndef CONFIG_64BIT ? > > Good catch. > > This file needs to test for 64-bit'ness using some non-CONFIG_* > test. And the standard built-in CPP macros which can be used > to check for that are different on every platform. I think we should simply define a macro for use in the kernel, e.g. in <asm/types.h>. There already is a BITS_PER_LONG macro in there, maybe we can add an exported __BITS_PER_LONG there that checks for the right macro on each architecture. On parisc, there is a major confusion in this area, at some point, all checks for __LP64__ got replaced with CONFIG_64BIT there. While I have not understood what the problem with __LP64__ was, the check for CONFIG_64BIT on parisc user space looks very wrong. Arnd <>< -- To unsubscribe from this list: send the line "unsubscribe linux-parisc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html