On Wed, Oct 7, 2020 at 11:47 AM Borislav Petkov bp@alien8.de wrote:
On Wed, Oct 07, 2020 at 06:45:36PM +0200, Borislav Petkov wrote:
It doesn't look like it is toolchain-specific and in both cases, copy_mc_fragile's checksum is 0.
SUSE Leap 15.1:
Name : binutils Version : 2.32-lp151.3.6.1
$ grep -E "(copy_mc_fragile|copy_user_generic_unrolled)" Module.symvers 0x00000000 copy_mc_fragile vmlinux EXPORT_SYMBOL_GPL 0xecdcabd2 copy_user_generic_unrolled vmlinux EXPORT_SYMBOL
debian testing:
Package: binutils Version: 2.35-2
$ grep -E "(copy_mc_fragile|copy_user_generic_unrolled)" Module.symvers 0x00000000 copy_mc_fragile vmlinux EXPORT_SYMBOL_GPL 0xecdcabd2 copy_user_generic_unrolled vmlinux EXPORT_SYMBOL
Ok, I think I have it:
From: Borislav Petkov bp@suse.de Date: Wed, 7 Oct 2020 18:55:35 +0200 Subject: [PATCH] x86/mce: Allow for copy_mc_fragile symbol checksum to be generated
Add asm/mce.h to asm/asm-prototypes.h so that that asm symbol's checksum can be generated in order to support CONFIG_MODVERSIONS with it and fix:
WARNING: modpost: EXPORT symbol "copy_mc_fragile" [vmlinux] version \ generation failed, symbol will not be versioned.
For reference see:
4efca4ed05cb ("kbuild: modversions for EXPORT_SYMBOL() for asm") 334bb7738764 ("x86/kbuild: enable modversions for symbols exported from asm")
Oh nice! I just sent a patch [1] to fix this up as well, but mine goes after minimizing when it is exported, I think perhaps both are needed.
http://lore.kernel.org/r/160209507277.2768223.9933672492157583642.stgit@dwil...