summary refs log tree commit diff stats
path: root/results/scraper/fex/2754
diff options
context:
space:
mode:
authorChristian Krinitsin <mail@krinitsin.com>2025-07-17 09:10:43 +0200
committerChristian Krinitsin <mail@krinitsin.com>2025-07-17 09:10:43 +0200
commitf2ec263023649e596c5076df32c2d328bc9393d2 (patch)
tree5dd86caab46e552bd2e62bf9c4fb1a7504a44db4 /results/scraper/fex/2754
parent63d2e9d409831aa8582787234cae4741847504b7 (diff)
downloadqemu-analysis-main.tar.gz
qemu-analysis-main.zip
add downloaded fex bug-reports HEAD main
Diffstat (limited to 'results/scraper/fex/2754')
-rw-r--r--results/scraper/fex/275417
1 files changed, 17 insertions, 0 deletions
diff --git a/results/scraper/fex/2754 b/results/scraper/fex/2754
new file mode 100644
index 000000000..51bb7cdbb
--- /dev/null
+++ b/results/scraper/fex/2754
@@ -0,0 +1,17 @@
+Canonical PPA build somehow breaking thunks
+Behaviour when loading thunks. `Failed to load MakeHostTrampolineForGuestFunction from FEX executable`

+

+Symbol of `MakeHostTrampolineForGuestFunction` in libX11-host when built from the Canonical PPA builders.

+```

+ryanh@ubuntu:/mnt/Work/Work/work/FEXNew/Build_Lenovo$ objdump -D /usr/lib/fex-emu/HostThunks/libX11-host.so | grep "MakeHostTrampolineForGuestFunction"

+000000000002ac64 <_ZN7FEXCore34MakeHostTrampolineForGuestFunctionEPvmm>:

+   31044:       97ffe708        bl      2ac64 <_ZN7FEXCore34MakeHostTrampolineForGuestFunctionEPvmm>

+  ```

+Symbol of `MakeHostTrampolineForGuestFunction` in libX11-host when built locally.

+  ```

+ryanh@ubuntu:/mnt/Work/Work/work/FEXNew/Build_Lenovo$ objdump -D HostLibs_64/libX11-host.so | grep "MakeHostTrampolineForGuestFunction"

+000000000002a890 <_ZN7FEXCore34MakeHostTrampolineForGuestFunctionEPvmm>:

+   31340:       94001a88        bl      37d60 <_ZN7FEXCore34MakeHostTrampolineForGuestFunctionEPvmm@plt>

+   ```

+

+Somehow this weak symbol is getting converted from a plt to a direct branch with the canonical PPA, breaking FEX's thunks in the process. `-Bsymbolic-functions` seems to be the only additional compile option that stands out but when manually adding it I couldn't reproduce this issue. Do we need to convert it to always be an undefined symbol rather than a weak symbol so this can never occur?
\ No newline at end of file