From: Michal Suchanek Date: Thu, 7 Dec 2017 14:31:19 +0000 (+0100) Subject: depmod: Don't add .TOC. when it's in the kernel. X-Git-Tag: v25~10 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e22e1c1f6efb4b8643d159b4c66a5f392ad4ff5a;p=thirdparty%2Fkmod.git depmod: Don't add .TOC. when it's in the kernel. d46136bb59c4 ("depmod: Ignore PowerPC64 ABIv2 .TOC. symbol") adds fake .TOC. unconditionally but when there is .TOC. in the kernel adding the fake one breaks resolving .TOC. Fixes: d46136bb59c4 ("depmod: Ignore PowerPC64 ABIv2 .TOC. symbol") Signed-off-by: Michal Suchanek --- diff --git a/tools/depmod.c b/tools/depmod.c index 7ff3e9ed..9db602d7 100644 --- a/tools/depmod.c +++ b/tools/depmod.c @@ -2480,7 +2480,8 @@ static void depmod_add_fake_syms(struct depmod *depmod) /* On S390, this is faked up too */ depmod_symbol_add(depmod, "_GLOBAL_OFFSET_TABLE_", true, 0, NULL); /* On PowerPC64 ABIv2, .TOC. is more or less _GLOBAL_OFFSET_TABLE_ */ - depmod_symbol_add(depmod, "TOC.", true, 0, NULL); + if (!depmod_symbol_find(depmod, "TOC.")) + depmod_symbol_add(depmod, "TOC.", true, 0, NULL); } static int depmod_load_symvers(struct depmod *depmod, const char *filename)