Skip to content
  • Linus Torvalds's avatar
    objtool: print out the symbol type when complaining about it · 7fab1c12
    Linus Torvalds authored
    The objtool warning that the kvm instruction emulation code triggered
    wasn't very useful:
    
        arch/x86/kvm/emulate.o: warning: objtool: __ex_table+0x4: don't know how to handle reloc symbol type: kvm_fastop_exception
    
    in that it helpfully tells you which symbol name it had trouble figuring
    out the relocation for, but it doesn't actually say what the unknown
    symbol type was that triggered it all.
    
    In this case it was because of missing type information (type 0, aka
    STT_NOTYPE), but on the whole it really should just have printed that
    out as part of the message.
    
    Because if this warning triggers, that's very much the first thing you
    want to know - why did reloc2sec_off() return failure for that symbol?
    
    So rather than just saying you can't handle some type of symbol without
    saying what the type _was_, just print out the type number too.
    
    Fixes: 24ff6525 ("objtool: Teach get_alt_entry() about more relocation types")
    Link: https://lore.kernel.org/lkml/CAHk-=wiZwq-0LknKhXN4M+T8jbxn_2i9mcKpO+OaBSSq_Eh7tg@mail.gmail.com/
    
    
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    7fab1c12