diff options
| author | Christian Krinitsin <mail@krinitsin.com> | 2025-07-17 09:10:43 +0200 |
|---|---|---|
| committer | Christian Krinitsin <mail@krinitsin.com> | 2025-07-17 09:10:43 +0200 |
| commit | f2ec263023649e596c5076df32c2d328bc9393d2 (patch) | |
| tree | 5dd86caab46e552bd2e62bf9c4fb1a7504a44db4 /results/scraper/fex/1107 | |
| parent | 63d2e9d409831aa8582787234cae4741847504b7 (diff) | |
| download | qemu-analysis-main.tar.gz qemu-analysis-main.zip | |
Diffstat (limited to 'results/scraper/fex/1107')
| -rw-r--r-- | results/scraper/fex/1107 | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/results/scraper/fex/1107 b/results/scraper/fex/1107 new file mode 100644 index 000000000..b665fd84d --- /dev/null +++ b/results/scraper/fex/1107 @@ -0,0 +1,23 @@ +Defer host signal installation until guest installs signal handler +Right now we install all of the host signal handlers up front. +Instead of installing all of them, retain the information and only install with the kernel once the guest has installed one. +Specifically this will need to immediately install the signal handlers that FEX requires, then defer everything else. + +- x86 host needs: SIGILL SIG63 +- AArch64 host needs: SIGBUS SIGILL SIG63 +- We may eventually also need SIGSYS installed up front. + +The rest of the signals can be deferred. +This is important for TTY handoff issues. The kernel changes behaviour of TTY handoff if you have specific signal handlers installed or not. + +```bash +FEXInterpreter /bin/sh +ls +<terminal never gives back the control to user> +``` + +Once signals are correctly deferred then this should be tested again and ensured it is fixed. + +Files: +- Source/Tests/LinuxSyscalls/SignalDelegator.cpp - For signal installation +- External/FEXCore/Source/Interface/Core/JIT/{Arm64, x86_64}/JIT.cpp - For the backends installing signals with `RegisterHostSignalHandler` and `RegisterHostSignalHandlerForGuest` \ No newline at end of file |