criu/compel
Andrei Vagin f5a408cdd3 dump/ppc64,arm,mips: sanitize the ERESTART_RESTARTBLOCK -> EINTR transition
1. The -ERESTART_RESTARTBLOCK case in get_task_regs() depends on kernel
   internals too much, and for no reason. We shouldn't rely on fact that
   a) we are going to do sigreturn() and b) restore_sigcontext() always
   sets restart_block->fn = do_no_restart_syscall which returns -EINTR.

   Just change this code to enforce -EINTR after restore, this is what
   we actually want until we teach criu to handle ERESTART_RESTARTBLOCK.

2. Add pr_warn() to make the potential bug-reports more understandable,
   a sane application should handle -EINTR correctly but this is not
   always the case.

Fixes: #1325
Report-by: Mr Travis
Inspired-by: dd71cca58a ("dump/x86: sanitize the ERESTART_RESTARTBLOCK -> EINTR transition")
Signed-off-by: Andrei Vagin <avagin@gmail.com>
2021-01-05 00:34:40 -08:00
..
arch dump/ppc64,arm,mips: sanitize the ERESTART_RESTARTBLOCK -> EINTR transition 2021-01-05 00:34:40 -08:00
include compel: don't mmap parasite as RWX 2020-11-08 01:55:25 -08:00
plugins compel/log: Provide %u specifier parsing 2020-11-18 23:53:56 -08:00
src compel/handle-elf: override unexpected precalculated addresses 2020-12-08 22:35:40 +00:00
test compel: Remove compel.h 2020-03-27 19:36:20 +03:00
.gitignore compel: adapt .gitgnore for aarch64 and ppc64le 2017-08-09 18:51:42 +03:00
compel-host compel cli: show includes 2017-03-15 00:09:55 +03:00
Makefile compel: Don't use CFLAGS_PIE for libcompel.so 2019-09-07 15:59:50 +03:00