Skip to content
  • Tony Breeds's avatar
    powerpc: Check for unsupported relocs when using CONFIG_RELOCATABLE · 144ef909
    Tony Breeds authored
    
    
    When using CONFIG_RELOCATABLE, we build the kernel as a position
    independent executable. The kernel then uses a little bit of relocation
    code to relocate itself. That code only deals with R_PPC64_RELATIVE
    relocations though. If for some reason you use assembly constructs
    such as LOAD_REG_IMMEDIATE() to load the address of a symbol, you'll
    generate different kinds of relocations that won't be processed properly
    and bad things will happen. (We have 2 such bugs today).
    
    The perl script tries to filter out "known" bad ones. It's possible
    that we are missing some in the case of a weak function that nobody
    implements, we'll see if we get false positive and fix it.
    
    Signed-off-by: default avatarTony Breeds <tony@bakeyournoodle.com>
    Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
    144ef909