Re: [PATCH 3/3] objtool: check: Handle calling non-function symbols in other sections
From: Julien Thierry
Date: Mon Sep 21 2020 - 05:56:13 EST
On 9/18/20 9:07 PM, Josh Poimboeuf wrote:
On Tue, Sep 15, 2020 at 08:53:18AM +0100, Julien Thierry wrote:
Relocation for a call destination could point to a symbol that has
type STT_NOTYPE.
Then shouldn't the callee be changed to STT_FUNC?
Not if it's a code symbol that does not follow standard calling convention.
It's really the same case as the !reloc, except this time it's in a
different .text section. In arm64 there are different sections that are
used (.text for basic code, .idmap.text for code mapped in a manner
where virtual address == physical address, .hyp.text for kvm priviledged
code, .tramp.text for trampolines...). There aren't many cases, but some
symbols reference symbols in other sections, but the symbol being called
isn't a proper function.
--
Julien Thierry