summary refs log tree commit diff stats
path: root/results/scraper/fex/2754
diff options
context:
space:
mode:
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