Re: [PATCH] mm: Switch NUMA_BUILD and COMPACTION_BUILD to new IS_ENABLED() syntax

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 15.8.2011 12:27, Michal Hocko wrote:
> On Wed 10-08-11 17:12:40, Michal Marek wrote:
>> Introduced in 3.1-rc1, IS_ENABLED(CONFIG_NUMA) expands to a true value
>> iff CONFIG_NUMA is set. This makes it easier to grep for code that
>> depends on CONFIG_NUMA.
> 
> It looks this doesn't work properly. I can see the following build
> error:
>   CHK     include/linux/version.h
>   CHK     include/generated/utsrelease.h
>   UPD     include/generated/utsrelease.h
>   CC      arch/x86/kernel/asm-offsets.s
> In file included from include/linux/kmod.h:22:0,
>                  from include/linux/module.h:13,
>                  from include/linux/crypto.h:21,
>                  from arch/x86/kernel/asm-offsets.c:8:
> include/linux/gfp.h: In function ‘gfp_zonelist’:
> include/linux/gfp.h:265:1: error: ‘__enabled_CONFIG_NUMA’ undeclared (first use in this function)
> include/linux/gfp.h:265:1: note: each undeclared identifier is reported only once for each function it appears in
> include/linux/gfp.h:265:1: error: ‘__enabled_CONFIG_NUMA_MODULE’ undeclared (first use in this function)
> make[1]: *** [arch/x86/kernel/asm-offsets.s] Error 1
> 
> I do not have CONFIG_NUMA set so it seems to have issues with config
> symbols which are not set to any value. Is this something that could be
> fixed?

It works if CONFIG_NUMA is not set, but it doesn't work if CONFIG_NUMA
is not visible (if its dependencies are not met). The fix would be to
generate the __enabled_* defines for all symbols, not only for the
visible ones. I'll repost the patch once this is fixed.

Michal

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]