From 66681deab6874218eedc244138dbc464daf13011 Mon Sep 17 00:00:00 2001 From: hubin Date: Tue, 10 May 2022 15:28:26 +0800 Subject: [PATCH 28/37] create-diff-object: ignore changed of section __patchable_function_entries Linux 5.10 aarch64 uses -fpatchable-function-entry=N to generate N NOPs at the beginning of each function, Section __patchable_function_entries is generated to record the starting address of these NOPs. Section __patchable_function_entries will change if the number of functions changed during making hotpatch, here we just ignore the change of this section. Signed-off-by: hubin --- kpatch-build/create-diff-object.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kpatch-build/create-diff-object.c b/kpatch-build/create-diff-object.c index b27edd8..666e44c 100644 --- a/kpatch-build/create-diff-object.c +++ b/kpatch-build/create-diff-object.c @@ -3103,7 +3103,8 @@ static void kpatch_process_special_sections(struct kpatch_elf *kelf, list_for_each_entry(sec, &kelf->sections, list) { if (strcmp(sec->name, "__tracepoints") && strcmp(sec->name, "__tracepoints_ptrs") && - strcmp(sec->name, "__tracepoints_strings")) + strcmp(sec->name, "__tracepoints_strings") && + strcmp(sec->name, "__patchable_function_entries")) continue; sec->status = SAME; -- 2.33.0