• Eugene Loh's avatar
    kallsyms: store type information in its own array · 1c7651f4
    Eugene Loh authored
    When a module is loaded, its symbols' Elf_Sym information is stored
    in a symtab.  Further, type information is also captured.  Since
    Elf_Sym has no type field, historically the st_info field has been
    hijacked for storing type:  st_info was overwritten.
    
    commit 5439c985 ("module: Overwrite
    st_size instead of st_info") changes that practice, as its one-liner
    indicates.  Unfortunately, this change overwrites symbol size,
    information that a tool like DTrace expects to find.
    
    Allocate a typetab array to store type information so that no Elf_Sym
    field needs to be overwritten.
    
    Fixes: 5439c985 ("module: Overwrite st_size instead of st_info")
    Signed-off-by: default avatarEugene Loh <eugene.loh@oracle.com>
    Reviewed-by: default avatarNick Alcock <nick.alcock@oracle.com>
    [jeyu: renamed typeoff -> typeoffs ]
    Signed-off-by: default avatarJessica Yu <jeyu@kernel.org>
    1c7651f4
module-internal.h 989 Bytes