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/1666 | |
| parent | 63d2e9d409831aa8582787234cae4741847504b7 (diff) | |
| download | qemu-analysis-main.tar.gz qemu-analysis-main.zip | |
Diffstat (limited to 'results/scraper/fex/1666')
| -rw-r--r-- | results/scraper/fex/1666 | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/results/scraper/fex/1666 b/results/scraper/fex/1666 new file mode 100644 index 000000000..73a139beb --- /dev/null +++ b/results/scraper/fex/1666 @@ -0,0 +1,21 @@ +Deferred signals investigation +## Overview +This has interesting complications and can resolve unity problems. + +## Current high level idea + +Add a new config option or two that enables "deferred/safe signal handling" +- Introduce the concept of "exit points" in the JIT, places where we can handle state +- Sprinkle "exit points" around in blocks in such a way that there is a bounded time between them +- Modify signal setters to block all signals on signals entry +- Modify signal handlers to resume JIT execution up to the next "exit point", and then handle the signal +- Edge cases: signals on syscalls, signals in non-jit code +- Add a signal torture test or two to our tests + +## Other related ideas +- Add signal safe mode for all locks + +## Curent low level ideas for first implementation +- use `ldb/stb [ctx-1], #0` + a guard page before the context for low cost handling of "should we exit from exit point" checks + +(Description updated by @skmp) \ No newline at end of file |