summary refs log tree commit diff stats
path: root/results/scraper/fex/3948
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/3948
parent63d2e9d409831aa8582787234cae4741847504b7 (diff)
downloademulator-bug-study-f2ec263023649e596c5076df32c2d328bc9393d2.tar.gz
emulator-bug-study-f2ec263023649e596c5076df32c2d328bc9393d2.zip
add downloaded fex bug-reports
Diffstat (limited to 'results/scraper/fex/3948')
-rw-r--r--results/scraper/fex/394811
1 files changed, 11 insertions, 0 deletions
diff --git a/results/scraper/fex/3948 b/results/scraper/fex/3948
new file mode 100644
index 00000000..979fa0ab
--- /dev/null
+++ b/results/scraper/fex/3948
@@ -0,0 +1,11 @@
+Cross-process tear free split-lock emulation can't be implemented without kernel support (or TME)
+In order to correctly handle split-lock emulation, we need a global mutex. We could easily get this through FEXServer handing a shared page to all FEXInterpreter instances.

+

+The problem with this is that if a process dies when one of its threads is handling a split-lock (Or cross-16byte boundary atomic) then the mutex will be permanently set. Effectively hanging every running FEXInterpreter process on the system.

+

+There's no way to work around this in a tear-free fashion and also never have hangs. It /needs/ to be done in the kernel.

+

+The "alternative" and preferred approach would be if all ARM vendors just support TME, but that's never going to occur.

+

+As for starting the discussion with the ARM kernel maintainers for getting this supported upstream...

+![nope](https://github.com/user-attachments/assets/b202a8c8-529d-4810-8662-d95cf7533520)