Skip to content

Commit

Permalink
pre-dump: skip dead tasks
Browse files Browse the repository at this point in the history
Program terminated with signal SIGSEGV, Segmentation fault.
 #0  0x0000000000435744 in cr_pre_dump_finish (ret=0) at cr-dump.c:1452
1452			pr_info("\tPre-dumping %d\n", ctl->pid.virt);
(gdb) bt
 #0  0x0000000000435744 in cr_pre_dump_finish (ret=0) at cr-dump.c:1452
 #1  cr_pre_dump_tasks (pid=pid@entry=24) at cr-dump.c:1556
 #2  0x000000000041f665 in main (argc=<optimized out>, argv=0x7ffda430e818, envp=<optimized out>) at crtools.c:753

https://github.com/xemul/criu/issues/189

Cc: Mike Rapoport <rppt@linux.vnet.ibm.com>
Signed-off-by: Andrew Vagin <avagin@virtuozzo.com>
  • Loading branch information
avagin committed Jul 10, 2016
1 parent 2ef702b commit a59b552
Showing 1 changed file with 3 additions and 0 deletions.
3 changes: 3 additions & 0 deletions criu/cr-dump.c
Original file line number Diff line number Diff line change
Expand Up @@ -1449,6 +1449,9 @@ static int cr_pre_dump_finish(int ret)
struct parasite_ctl *ctl = dmpi(item)->parasite_ctl;
struct page_xfer xfer;

if (!task_alive(item))
continue;

pr_info("\tPre-dumping %d\n", ctl->pid.virt);
timing_start(TIME_MEMWRITE);
ret = open_page_xfer(&xfer, CR_FD_PAGEMAP, ctl->pid.virt);
Expand Down

0 comments on commit a59b552

Please sign in to comment.