35 lines
1.5 KiB
Diff
35 lines
1.5 KiB
Diff
|
From fb93d3ff8b63bdfdf88a8f25a715f816a52d5dd8 Mon Sep 17 00:00:00 2001
|
||
|
From: Dave Airlie <airlied@redhat.com>
|
||
|
Date: Mon, 13 Dec 2021 14:50:06 +1000
|
||
|
Subject: [PATCH] loader/aarch64: attempt to avoid text relocations in the
|
||
|
unknown code
|
||
|
|
||
|
The commit below added a TEXTREL into the loader library, TEXTRELs
|
||
|
and security people don't get on well, so we'd like to avoid that.
|
||
|
|
||
|
This is my attempt at fixing it, I'm not an aarch64 expert at all,
|
||
|
so I'd really appreciate someone who is to take a look.
|
||
|
|
||
|
Fixes: 4f78f14c0533 ("loader: Add aarch64 unknown ext chain implementation")
|
||
|
---
|
||
|
loader/unknown_ext_chain_gas_aarch64.S | 3 ++-
|
||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/loader/unknown_ext_chain_gas_aarch64.S b/loader/unknown_ext_chain_gas_aarch64.S
|
||
|
index 1e065007d..a1fa46205 100644
|
||
|
--- a/loader/unknown_ext_chain_gas_aarch64.S
|
||
|
+++ b/loader/unknown_ext_chain_gas_aarch64.S
|
||
|
@@ -50,7 +50,8 @@ terminError\num:
|
||
|
mov x0, x11 // Vulkan instance pointer (first arg)
|
||
|
mov x1, VK_DEBUG_REPORT_ERROR_BIT_EXT // The error logging bit (second arg)
|
||
|
mov x2, #0 // Zero (third arg)
|
||
|
- ldr x3, =termin_error_string // The error string (fourth arg)
|
||
|
+ adrp x9, termin_error_string
|
||
|
+ ldr x3, [x9, #:lo12:termin_error_string] // The error string (fourth arg)
|
||
|
ldr x4, [x11, x10] // The function name (fifth arg)
|
||
|
bl loader_log // Log the error message before we crash
|
||
|
mov x0, #0
|
||
|
--
|
||
|
2.33.1
|
||
|
|