• Takashi Iwai's avatar
    modpost: abort if a module symbol is too long · 5cfb203a
    Takashi Iwai authored
    Module symbols have a limited length, but currently the build system
    allows the build finishing even if the driver code contains a too long
    symbol name, which eventually overflows the modversion_info[] item.
    The compiler may catch at compiling *.mod.c like
      CC      xxx.mod.o
      xxx.mod.c:18:16: warning: initializer-string for array of chars is too long
    but it's merely a warning.
    
    This patch adds the check of the symbol length in modpost and stops
    the build properly.
    
    Currently MODULE_NAME_LEN is defined in modpost.c instead of referring
    to the definition in kernel header because including linux/module.h is
    messy and we must cover cross-compilation.
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
    5cfb203a
modpost.c 65 KB