KVM: arm64: nVHE: gen-hyprel: Skip R_AARCH64_ABS32
authorPierre-Clément Tosi <ptosi@google.com>
Mon, 10 Jun 2024 06:32:33 +0000 (07:32 +0100)
committerOliver Upton <oliver.upton@linux.dev>
Thu, 20 Jun 2024 17:40:54 +0000 (17:40 +0000)
commit4ab3f9dd561b428460038a9bb041e92db6197f18
treee7c5a7649d62764cb285306f54b8b991a9a83fb1
parent6e3b773ed6bc5e783fa314b75071f022324f94a8
KVM: arm64: nVHE: gen-hyprel: Skip R_AARCH64_ABS32

Ignore R_AARCH64_ABS32 relocations, instead of panicking, when emitting
the relocation table of the hypervisor. The toolchain might produce them
when generating function calls with kCFI to represent the 32-bit type ID
which can then be resolved across compilation units at link time.  These
are NOT actual 32-bit addresses and are therefore not needed in the
final (runtime) relocation table (which is unlikely to use 32-bit
absolute addresses for arm64 anyway).

Signed-off-by: Pierre-Clément Tosi <ptosi@google.com>
Acked-by: Will Deacon <will@kernel.org>
Link: https://lore.kernel.org/r/20240610063244.2828978-5-ptosi@google.com
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
arch/arm64/kvm/hyp/nvhe/gen-hyprel.c