[CRIU] [PATCH] dump/x86: sanitize the ERESTART_RESTARTBLOCK -> EINTR transition

Cyrill Gorcunov gorcunov at gmail.com
Tue Mar 24 12:27:49 PDT 2015


On Tue, Mar 24, 2015 at 08:22:58PM +0100, Oleg Nesterov wrote:
> 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.
> 
> Signed-off-by: Oleg Nesterov <oleg at redhat.com>
Acked-by: Cyrill Gorcunov <gorcunov at openvz.org>

Thanks a huge, Oleg!


More information about the CRIU mailing list