From e9f355c5c4e141bab41f2c5324507d58e297eee0 Mon Sep 17 00:00:00 2001 From: Maxim Uvarov Date: Fri, 20 Jan 2012 17:45:24 -0800 Subject: [PATCH] add __init arguments to init functions Fix following issues: WARNING: vmlinux.o(.text+0x3aba): Section mismatch in reference from the function xen_align_and_add_e820_region() to the function .init.text:e820_add_region() The function xen_align_and_add_e820_region() references the function __init e820_add_region(). This is often because xen_align_and_add_e820_region lacks a __init annotation or the annotation of e820_add_region is wrong. WARNING: vmlinux.o(.text+0x2e9ec): Section mismatch in reference from the function acpi_map_cpu2node() to the variable .cpuinit.data:__apicid_to_node The function acpi_map_cpu2node() references the variable __cpuinitdata __apicid_to_node. This is often because acpi_map_cpu2node lacks a __cpuinitdata annotation or the annotation of __apicid_to_node is wrong. WARNING: vmlinux.o(.text+0x2e9f1): Section mismatch in reference from the function acpi_map_cpu2node() to the function .cpuinit.text:numa_set_node() The function acpi_map_cpu2node() references the function __cpuinit numa_set_node(). This is often because acpi_map_cpu2node lacks a __cpuinit annotation or the annotation of numa_set_node is wrong. WARNING: vmlinux.o(.text+0x3f9b4): Section mismatch in reference from the function enable_iommus() to the function .init.text:iommu_set_device_table() The function enable_iommus() references the function __init iommu_set_device_table(). This is often because enable_iommus lacks a __init annotation or the annotation of iommu_set_device_table is wrong. Signed-off-by: Maxim Uvarov --- arch/ia64/kernel/acpi.c | 2 +- arch/x86/kernel/acpi/boot.c | 2 +- arch/x86/kernel/amd_iommu_init.c | 4 ++-- arch/x86/xen/setup.c | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/arch/ia64/kernel/acpi.c b/arch/ia64/kernel/acpi.c index 3be485a300b1..fd0c49eaf002 100644 --- a/arch/ia64/kernel/acpi.c +++ b/arch/ia64/kernel/acpi.c @@ -804,7 +804,7 @@ int acpi_isa_irq_to_gsi(unsigned isa_irq, u32 *gsi) */ #ifdef CONFIG_ACPI_HOTPLUG_CPU static __cpuinit -int acpi_map_cpu2node(acpi_handle handle, int cpu, int physid) +int __cpuinit acpi_map_cpu2node(acpi_handle handle, int cpu, int physid) { #ifdef CONFIG_ACPI_NUMA int pxm_id; diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c index 56657259a8e2..35afc6f26374 100644 --- a/arch/x86/kernel/acpi/boot.c +++ b/arch/x86/kernel/acpi/boot.c @@ -587,7 +587,7 @@ void __init acpi_set_irq_model_ioapic(void) #ifdef CONFIG_ACPI_HOTPLUG_CPU #include -static void acpi_map_cpu2node(acpi_handle handle, int cpu, int physid) +static void __cpuinit acpi_map_cpu2node(acpi_handle handle, int cpu, int physid) { #ifdef CONFIG_ACPI_NUMA int nid; diff --git a/arch/x86/kernel/amd_iommu_init.c b/arch/x86/kernel/amd_iommu_init.c index bfc8453bd98d..624f41733c1d 100644 --- a/arch/x86/kernel/amd_iommu_init.c +++ b/arch/x86/kernel/amd_iommu_init.c @@ -1262,7 +1262,7 @@ static void iommu_apply_resume_quirks(struct amd_iommu *iommu) * This function finally enables all IOMMUs found in the system after * they have been initialized */ -static void enable_iommus(void) +static void __init enable_iommus(void) { struct amd_iommu *iommu; @@ -1292,7 +1292,7 @@ static void disable_iommus(void) * disable suspend until real resume implemented */ -static void amd_iommu_resume(void) +static void __init amd_iommu_resume(void) { struct amd_iommu *iommu; diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c index e57ca1cc5c5b..a88b5884a6f5 100644 --- a/arch/x86/xen/setup.c +++ b/arch/x86/xen/setup.c @@ -190,7 +190,7 @@ static unsigned long __init xen_get_max_pages(void) return min(max_pages, MAX_DOMAIN_PAGES); } -static void xen_align_and_add_e820_region(u64 start, u64 size, int type) +static void __init xen_align_and_add_e820_region(u64 start, u64 size, int type) { u64 end = start + size; -- 2.50.1