diff options
Diffstat (limited to 'results/scraper/fex/documentation/1746')
| -rw-r--r-- | results/scraper/fex/documentation/1746 | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/results/scraper/fex/documentation/1746 b/results/scraper/fex/documentation/1746 new file mode 100644 index 00000000..6d22aa41 --- /dev/null +++ b/results/scraper/fex/documentation/1746 @@ -0,0 +1,13 @@ +Self Modifying Code (SMC) Support +#### Overview +X86 has fully coherent icache, and in some models, prefetch queue and OoO buffers are also coherent (citation needed, unit test pending). + +This means that in order to be fully correct we need to detect code changes when they happen, execute only new code after the write completes, across all threads, and that no thread should observe any other thread running stale code. + +FEX currently supports 4 modes of SMC +- No support +- Mman (Invalidation around mmap, munmap, etc apis) +- Mtrack (Mman + segfault based detection of changes) +- Full (Disables most cross-block optimisations, checks every instruction for modification before executing it) + +(@skmp todo: fill with more information about what actually is supported, next tasks, related tickets, etc) \ No newline at end of file |