From c7a65e0645b2d1f8382ce27f4edaf1b4f2e09549 Mon Sep 17 00:00:00 2001 From: Quentin Casasnovas Date: Mon, 13 Apr 2015 20:43:45 +0930 Subject: modpost: mismatch_handler: retrieve tosym information only when needed. Signed-off-by: Quentin Casasnovas Signed-off-by: Rusty Russell --- scripts/mod/modpost.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'scripts/mod') diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c index c69681e815b2..bf0cf8173beb 100644 --- a/scripts/mod/modpost.c +++ b/scripts/mod/modpost.c @@ -1432,16 +1432,17 @@ static void default_mismatch_handler(const char *modname, struct elf_info *elf, const char *tosym; const char *fromsym; - tosec = sec_name(elf, get_secindex(elf, sym)); from = find_elf_symbol2(elf, r->r_offset, fromsec); fromsym = sym_name(elf, from); - to = find_elf_symbol(elf, r->r_addend, sym); - tosym = sym_name(elf, to); if (!strncmp(fromsym, "reference___initcall", sizeof("reference___initcall")-1)) return; + tosec = sec_name(elf, get_secindex(elf, sym)); + to = find_elf_symbol(elf, r->r_addend, sym); + tosym = sym_name(elf, to); + /* check whitelist - we may ignore it */ if (secref_whitelist(mismatch, fromsec, fromsym, tosec, tosym)) { -- cgit