From 2cf99367ed7cdf4f0b2a929f6bddd7ef8c8a6441 Mon Sep 17 00:00:00 2001 From: Zhipeng Xie Date: Thu, 12 Mar 2020 05:10:55 -0400 Subject: [PATCH 20/38] use original reloc for symbols exported from modules symbols exported in a patch will generate a symbol version with object module name in Module.symvers, but the symbol is actually in patch module which cause livepatch symbol lookup failed. Signed-off-by: Zhipeng Xie --- kpatch-build/create-diff-object.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/kpatch-build/create-diff-object.c b/kpatch-build/create-diff-object.c index 83836f6..2a3a5de 100644 --- a/kpatch-build/create-diff-object.c +++ b/kpatch-build/create-diff-object.c @@ -3533,14 +3533,7 @@ static bool need_klp_reloc(struct kpatch_elf *kelf, struct lookup_table *table, return false; } - /* - * The symbol is exported by the to-be-patched module, or by - * another module which the patched module depends on. Use a - * klp relocation because of late module loading: the patch - * module may be loaded before the to-be-patched (or other) - * module. - */ - return true; + return false; } if (symbol.global) { -- 2.33.0