mirror of
https://github.com/dynup/kpatch
synced 2024-12-22 21:22:07 +00:00
create-diff-object: Handle ppc64le toc with only constants
When a ppcle64 ".toc" section contains only constants, the compiler might not (won't?) create a corresponding ".rela.toc" section. In such cases, create-diff-object crashes, assuming ".rela.toc" exists whenever .toc exists. Simply report that no rela are available when looking up possible relocations in .toc. Fixes #1078. Signed-off-by: Julien Thierry <jthierry@redhat.com>
This commit is contained in:
parent
fcc7dad42a
commit
fbfc8f9bec
@ -177,6 +177,10 @@ static struct rela *toc_rela(const struct rela *rela)
|
||||
rela->type != R_PPC64_TOC16_LO_DS)
|
||||
return (struct rela *)rela;
|
||||
|
||||
/* Only constants in toc */
|
||||
if (!rela->sym->sec->rela)
|
||||
return NULL;
|
||||
|
||||
/* Will return NULL for .toc constant entries */
|
||||
return find_rela_by_offset(rela->sym->sec->rela,
|
||||
(unsigned int)rela->addend);
|
||||
|
Loading…
Reference in New Issue
Block a user