criu/compel
Ignacio Moreno Gonzalez 95d5e2e59b compel: flush caches after parasite injection
After the CRIU process saves the parasite code for the target thread in
the shared mmap, it is necessary to call __clear_cache before the target
thread executes the code.

Without this step, the target thread may not see the correct code to
execute, which can result in a SIGILL signal.

For the specific arm64 case. this is important so that the newly copied
code is flushed from d-cache to RAM, so that the target thread sees the
new code.

The change is based on commit 6be10a2 by @fu.lin and on input received
from @adrianreber.

[ avagin: tweak code comment ]

Signed-off-by: Ignacio Moreno Gonzalez <Ignacio.MorenoGonzalez@kuka.com>
Signed-off-by: Andrei Vagin <avagin@gmail.com>
2025-11-02 07:48:23 -08:00
..
arch arm64: C/R PAC keys 2025-03-21 12:40:31 -07:00
include compel: fix the stack test 2025-11-02 07:42:55 -08:00
plugins compel: infect: prepare parasite_service() for addition of CET support 2024-09-11 16:02:11 -07:00
src compel: flush caches after parasite injection 2025-11-02 07:48:23 -08:00
test compel: fix the stack test 2025-11-02 07:42:55 -08:00
.gitignore compel: fix gitignore and remove autogenerated code 2025-03-21 12:40:31 -07:00
compel-host compel cli: show includes 2017-03-15 00:09:55 +03:00
Makefile compel: add riscv64 support 2025-03-21 12:40:31 -07:00