Mesa (staging/20.3): radv: Add Android module info to linker script.
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Jan 13 00:04:29 UTC 2021
Module: Mesa
Branch: staging/20.3
Commit: b439d0e679cd16817bb0a62ba8dc91d4cc8d7c66
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b439d0e679cd16817bb0a62ba8dc91d4cc8d7c66
Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date: Tue Jan 12 12:47:59 2021 +0100
radv: Add Android module info to linker script.
The Android Vulkan loader needs this symbol, so the addition of the
linker script broke Vulkan for Android.
(For non-Android builds: I checked that having a non-existent symbol in
the linker script works ok and doesn't put the symbol in the library)
Fixes: 41bb6459d3a ("radv: restrict exported symbols with static llvm")
Acked-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8437>
(cherry picked from commit 4956f6d0bf477568731f3965125299b8857d5835)
---
.pick_status.json | 2 +-
src/amd/vulkan/vulkan.sym | 5 +++++
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/.pick_status.json b/.pick_status.json
index 2ca59aa8dff..dea21bea3f2 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -112,7 +112,7 @@
"description": "radv: Add Android module info to linker script.",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"master_sha": null,
"because_sha": "41bb6459d3a7dba21ff811069dc4757d7789fd12"
},
diff --git a/src/amd/vulkan/vulkan.sym b/src/amd/vulkan/vulkan.sym
index c85a22e905a..2ca40faa09e 100644
--- a/src/amd/vulkan/vulkan.sym
+++ b/src/amd/vulkan/vulkan.sym
@@ -4,6 +4,11 @@
vk_icdGetPhysicalDeviceProcAddr;
vk_icdNegotiateLoaderICDInterfaceVersion;
+ # Andoid looks for this global in HAL modules. In the source it occurs
+ # as HAL_MODULE_INFO_SYM (which is just a #define for HMI) and it's an
+ # instance of struct hwvulkan_module_t.
+ HMI;
+
local:
# When static linking LLVM, all its symbols are public API.
# That may cause symbol collision, so explicitly demote everything.
More information about the mesa-commit
mailing list