Skip to content

Commit

Permalink
Merge pull request #298 from jpoimboe/no-fentry-dynrela
Browse files Browse the repository at this point in the history
create-diff-object: don't create __fentry__ dynrelas
  • Loading branch information
sjenning committed Jul 8, 2014
2 parents 322b9b9 + e847026 commit 44ad2ba
Showing 1 changed file with 16 additions and 2 deletions.
18 changes: 16 additions & 2 deletions kpatch-build/create-diff-object.c
Original file line number Diff line number Diff line change
Expand Up @@ -1816,8 +1816,22 @@ void kpatch_create_dynamic_rela_sections(struct kpatch_elf *kelf,
} else {
/*
* We have a patch to a module which references
* a global symbol. First try to find it in
* the module being patched.
* a global symbol.
*/

/*
* __fentry__ relas can't be converted to
* dynrelas because the ftrace module init code
* runs before the dynrela code can initialize
* them. __fentry__ is exported by the kernel,
* so leave it as a normal rela.
*/
if (!strcmp(rela->sym->name, "__fentry__"))
continue;

/*
* Try to find the symbol in the module being
* patched.
*/
if (lookup_global_symbol(table, rela->sym->name,
&result))
Expand Down

0 comments on commit 44ad2ba

Please sign in to comment.