[CRIU] [PATCH RESEND v1 53/55] pid: Check for equality of getpid() of child to last_level_pid
Kirill Tkhai
ktkhai at virtuozzo.com
Fri Mar 24 08:17:21 PDT 2017
Make the sanity check working in case of mutli-level pids.
Signed-off-by: Kirill Tkhai <ktkhai at virtuozzo.com>
---
criu/cr-restore.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/criu/cr-restore.c b/criu/cr-restore.c
index b6040a53..bb5abd70 100644
--- a/criu/cr-restore.c
+++ b/criu/cr-restore.c
@@ -1429,9 +1429,11 @@ static int restore_task_with_children(void *_arg)
goto err;
}
+
pid = getpid();
- if (vpid(current) != pid) {
- pr_err("Pid %d do not match expected %d\n", pid, vpid(current));
+ if (last_level_pid(current->pid) != pid) {
+ pr_err("Pid %d do not match expected %d (task %d)\n",
+ pid, last_level_pid(current->pid), vpid(current));
set_task_cr_err(EEXIST);
goto err;
}
More information about the CRIU
mailing list