ソースを参照

ARM: Fix build error for SMP=n builds

Unfortunately, the module fixups cause the kernel to fail to build
when SMP is not enabled.  Fix this by removing the reference to
fixup_smp on non-SMP fixup kernels, but ensuring that if we do have
the SMP fixup section, we refuse to load the module.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King 14 年 前
コミット
20feaab032
1 ファイル変更4 行追加0 行削除
  1. 4 0
      arch/arm/kernel/module.c

+ 4 - 0
arch/arm/kernel/module.c

@@ -323,7 +323,11 @@ int module_finalize(const Elf32_Ehdr *hdr, const Elf_Shdr *sechdrs,
 #endif
 #endif
 	s = find_mod_section(hdr, sechdrs, ".alt.smp.init");
 	s = find_mod_section(hdr, sechdrs, ".alt.smp.init");
 	if (s && !is_smp())
 	if (s && !is_smp())
+#ifdef CONFIG_SMP_ON_UP
 		fixup_smp((void *)s->sh_addr, s->sh_size);
 		fixup_smp((void *)s->sh_addr, s->sh_size);
+#else
+		return -EINVAL;
+#endif
 	return 0;
 	return 0;
 }
 }