Hello, On Mon, Oct 24, 2016 at 05:05:26PM +0200, Arnd Bergmann wrote: > This adds an asm/asm-prototypes.h header for ARM to fix the > broken symbol versioning for symbols exported from assembler > files. > > In addition to the header, we have to do these other small > changes: > > - move the exports from bitops.h to {change,clear,set,...}bit.S > - move the exports from csumpartialgeneric.S into the files > including it > > I couldn't find the correct prototypes for the compiler builtins, > so I went with the fake 'void f(void)' prototypes that we had > before. > > This leaves the mmioset/mmiocpy function for now, as it's not > obvious how to best handle them. > > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> In my test builds of 4.9-rc5 plus 4efca4ed05cb ("kbuild: modversions for EXPORT_SYMBOL() for asm") cc6acc11cad1 ("kbuild: be more careful about matching preprocessed asm ___EXPORT_SYMBOL") (which are in -rc6) I got many warnings à la: WARNING: "memset" [drivers/media/usb/airspy/airspy.ko] has no CRC! and booting the resulting kernel failed with messages of the type: [ 3.024126] usbcore: no symbol version for __memzero [ 3.029107] usbcore: Unknown symbol __memzero (err -22) so hardly any module could be loaded. modprobe -f works however, but that's not what my initramfs does. With this patch and https://patchwork.kernel.org/patch/9392291/ ("ARM: move mmiocpy/mmioset exports to io.c") I could compile a kernel without CRC warnings and it boots fine. So it would be great to get these two patches into 4.9. Thanks Uwe
Attachment:
signature.asc
Description: PGP signature