[2.6.27-rc3] section mismatches and compilation warnings

From: Rufus & Azrael
Date: Wed Aug 13 2008 - 12:53:22 EST


Hello all,

Here are my warnings and section mismatches when compiling fresh 2.6.27-rc3 kernel.

Regards. WARNING: arch/x86/mm/built-in.o(.text+0x520): Section mismatch in reference from the function set_pte_vaddr_pud() to the function .init.text:spp_getpage()
The function set_pte_vaddr_pud() references
the function __init spp_getpage().
This is often because set_pte_vaddr_pud lacks a __init
annotation or the annotation of spp_getpage is wrong.

WARNING: arch/x86/mm/built-in.o(.text+0x571): Section mismatch in reference from the function set_pte_vaddr_pud() to the function .init.text:spp_getpage()
The function set_pte_vaddr_pud() references
the function __init spp_getpage().
This is often because set_pte_vaddr_pud lacks a __init
annotation or the annotation of spp_getpage is wrong.

WARNING: arch/x86/mm/built-in.o(.meminit.text+0x2f2): Section mismatch in reference from the function alloc_low_page() to the function .init.text:early_ioremap()
The function __meminit alloc_low_page() references
a function __init early_ioremap().
If early_ioremap is only used by alloc_low_page then
annotate early_ioremap with a matching annotation.

WARNING: arch/x86/mm/built-in.o(.meminit.text+0x5f9): Section mismatch in reference from the function phys_pmd_init() to the function .init.text:early_iounmap()
The function __meminit phys_pmd_init() references
a function __init early_iounmap().
If early_iounmap is only used by phys_pmd_init then
annotate early_iounmap with a matching annotation.

WARNING: arch/x86/mm/built-in.o(.meminit.text+0x84d): Section mismatch in reference from the function phys_pud_init() to the function .init.text:early_iounmap()
The function __meminit phys_pud_init() references
a function __init early_iounmap().
If early_iounmap is only used by phys_pud_init then
annotate early_iounmap with a matching annotation.

WARNING: mm/built-in.o(.text+0x11843): Section mismatch in reference from the function mminit_verify_zonelist() to the variable .meminit.data:mminit_loglevel
The function mminit_verify_zonelist() references
the variable __meminitdata mminit_loglevel.
This is often because mminit_verify_zonelist lacks a __meminitdata
annotation or the annotation of mminit_loglevel is wrong.

WARNING: arch/x86/kernel/built-in.o(.cpuinit.text+0x4610): Section mismatch in reference from the function uv_cpu_init() to the function .init.text:uv_system_init()
The function __cpuinit uv_cpu_init() references
a function __init uv_system_init().
If uv_system_init is only used by uv_cpu_init then
annotate uv_system_init with a matching annotation.

WARNING: arch/x86/kernel/built-in.o(.data+0x5e8): Section mismatch in reference from the variable x86_cpu_to_apicid_early_ptr to the variable .init.data:x86_cpu_to_apicid_early_map
The variable x86_cpu_to_apicid_early_ptr references
the variable __initdata x86_cpu_to_apicid_early_map
If the reference is valid then annotate the
variable with __init* (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,

WARNING: arch/x86/kernel/built-in.o(.data+0x5f0): Section mismatch in reference from the variable x86_bios_cpu_apicid_early_ptr to the variable .init.data:x86_bios_cpu_apicid_early_map
The variable x86_bios_cpu_apicid_early_ptr references
the variable __initdata x86_bios_cpu_apicid_early_map
If the reference is valid then annotate the
variable with __init* (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,

WARNING: arch/x86/kernel/built-in.o(.data+0x5f8): Section mismatch in reference from the variable x86_cpu_to_node_map_early_ptr to the variable .init.data:x86_cpu_to_node_map_early_map
The variable x86_cpu_to_node_map_early_ptr references
the variable __initdata x86_cpu_to_node_map_early_map
If the reference is valid then annotate the
variable with __init* (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,

sound/core/pcm_native.c: In function â??snd_pcm_fasyncâ??:
sound/core/pcm_native.c:3262: attention : label â??outâ?? defined but not used

drivers/net/skfp/pmf.c:86: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:87: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:88: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:89: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:90: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:91: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:92: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:96: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:97: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:98: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:99: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:100: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:101: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:102: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:103: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:104: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:105: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:106: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:107: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:108: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:112: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:113: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:114: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:115: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:116: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:120: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:121: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:123: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:124: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:132: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:133: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:135: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:136: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:137: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:138: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:139: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:140: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:148: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:149: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:150: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:154: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:155: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:156: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:157: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:158: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:159: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:160: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:161: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:162: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:163: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:167: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:171: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:172: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:173: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:174: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:175: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:176: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:177: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:178: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:179: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:180: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:181: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:186: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:187: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:188: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:189: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:190: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:191: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:192: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:193: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:194: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:198: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:199: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:203: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:204: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:208: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:209: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:210: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:211: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:212: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:213: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:214: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:215: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:222: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:229: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:230: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:231: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:234: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:235: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:236: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:237: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:238: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:243: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:244: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:245: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:246: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:247: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:248: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:249: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:250: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:251: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:252: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:253: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:257: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:258: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:259: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:263: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:264: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:268: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:269: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:270: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:271: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:272: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:276: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:277: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:278: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:279: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/pmf.c:280: attention : transtypage d'un pointeur vers un entier de taille différente

drivers/net/skfp/ess.c: In function â??ess_send_responseâ??:
drivers/net/skfp/ess.c:513: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/ess.c: In function â??ess_send_alc_reqâ??:
drivers/net/skfp/ess.c:609: attention : transtypage d'un pointeur vers un entier de taille différente
drivers/net/skfp/ess.c:639: attention : transtypage d'un pointeur vers un entier de taille différente

WARNING: vmlinux.o(.text+0x1b32a): Section mismatch in reference from the function map_high() to the function .init.text:init_extra_mapping_wb()
The function map_high() references
the function __init init_extra_mapping_wb().
This is often because map_high lacks a __init
annotation or the annotation of init_extra_mapping_wb is wrong.

WARNING: vmlinux.o(.text+0x1b347): Section mismatch in reference from the function map_high() to the function .init.text:init_extra_mapping_uc()
The function map_high() references
the function __init init_extra_mapping_uc().
This is often because map_high lacks a __init
annotation or the annotation of init_extra_mapping_uc is wrong.

WARNING: vmlinux.o(.text+0x1d3d0): Section mismatch in reference from the function set_pte_vaddr_pud() to the function .init.text:spp_getpage()
The function set_pte_vaddr_pud() references
the function __init spp_getpage().
This is often because set_pte_vaddr_pud lacks a __init
annotation or the annotation of spp_getpage is wrong.

WARNING: vmlinux.o(.text+0x1d421): Section mismatch in reference from the function set_pte_vaddr_pud() to the function .init.text:spp_getpage()
The function set_pte_vaddr_pud() references
the function __init spp_getpage().
This is often because set_pte_vaddr_pud lacks a __init
annotation or the annotation of spp_getpage is wrong.

WARNING: vmlinux.o(.text+0x7b3f3): Section mismatch in reference from the function mminit_verify_zonelist() to the variable .meminit.data:mminit_loglevel
The function mminit_verify_zonelist() references
the variable __meminitdata mminit_loglevel.
This is often because mminit_verify_zonelist lacks a __meminitdata
annotation or the annotation of mminit_loglevel is wrong.

WARNING: vmlinux.o(.cpuinit.text+0x35a7): Section mismatch in reference from the function get_local_pda() to the function .init.text:free_bootmem()
The function __cpuinit get_local_pda() references
a function __init free_bootmem().
If free_bootmem is only used by get_local_pda then
annotate free_bootmem with a matching annotation.

WARNING: vmlinux.o(.cpuinit.text+0x4970): Section mismatch in reference from the function uv_cpu_init() to the function .init.text:uv_system_init()
The function __cpuinit uv_cpu_init() references
a function __init uv_system_init().
If uv_system_init is only used by uv_cpu_init then
annotate uv_system_init with a matching annotation.

WARNING: vmlinux.o(.meminit.text+0x2f2): Section mismatch in reference from the function alloc_low_page() to the function .init.text:early_ioremap()
The function __meminit alloc_low_page() references
a function __init early_ioremap().
If early_ioremap is only used by alloc_low_page then
annotate early_ioremap with a matching annotation.

WARNING: vmlinux.o(.meminit.text+0x5f9): Section mismatch in reference from the function phys_pmd_init() to the function .init.text:early_iounmap()
The function __meminit phys_pmd_init() references
a function __init early_iounmap().
If early_iounmap is only used by phys_pmd_init then
annotate early_iounmap with a matching annotation.

WARNING: vmlinux.o(.meminit.text+0x84d): Section mismatch in reference from the function phys_pud_init() to the function .init.text:early_iounmap()
The function __meminit phys_pud_init() references
a function __init early_iounmap().
If early_iounmap is only used by phys_pud_init then
annotate early_iounmap with a matching annotation.

WARNING: vmlinux.o(.data+0x2f68): Section mismatch in reference from the variable x86_cpu_to_apicid_early_ptr to the variable .init.data:x86_cpu_to_apicid_early_map
The variable x86_cpu_to_apicid_early_ptr references
the variable __initdata x86_cpu_to_apicid_early_map
If the reference is valid then annotate the
variable with __init* (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,

WARNING: vmlinux.o(.data+0x2f70): Section mismatch in reference from the variable x86_bios_cpu_apicid_early_ptr to the variable .init.data:x86_bios_cpu_apicid_early_map
The variable x86_bios_cpu_apicid_early_ptr references
the variable __initdata x86_bios_cpu_apicid_early_map
If the reference is valid then annotate the
variable with __init* (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,

WARNING: vmlinux.o(.data+0x2f78): Section mismatch in reference from the variable x86_cpu_to_node_map_early_ptr to the variable .init.data:x86_cpu_to_node_map_early_map
The variable x86_cpu_to_node_map_early_ptr references
the variable __initdata x86_cpu_to_node_map_early_map
If the reference is valid then annotate the
variable with __init* (see linux/init.h) or name the variable:
*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,