[CRIU] criu_restore() in Open MPI problems

Adrian Reber adrian at lisas.de
Tue Mar 18 11:41:06 PDT 2014


On Tue, Mar 18, 2014 at 09:56:44PM +0400, Pavel Emelyanov wrote:
> On 03/18/2014 09:03 PM, Adrian Reber wrote:
> > Now that dumping works from Open MPII am trying to restore.
> > Right now it fails with:
> > 
> > (00.000119) TCP queue memory limits are 2097152:3145728
> > (00.000303) cpu: fpu:1 fxsr:1 xsave:1
> > (00.000399) vdso: Parsing at 7fff84c27000 7fff84c29000
> > (00.000407) vdso: Base address ffffffffff700000
> > (00.000440) Reading image tree
> > (00.000468) Migrating process tree (GID 25983->29676 SID 9042->29676)
> > (00.000475) Will restore in 0 namespaces
> > (00.000479) NS mask to use 0
> > (00.000487) Collecting 41/21 (flags 0)
> > (00.000514)  `- ... done
> > (00.000520) Error (tty.c:1213): tty: Standard stream is not a terminal, aborting
> > 
> > I am not sure what this really means, but I suspect it has to do
> > something with dumping with criu_set_shell_job(true) and restoring from
> > inside a program instead of the command line. Running the command line
> 
> Do you run it with the -j option?

Yes, I am using -j on the restore.

> > tool instead of the criu_restore() works much better but fails in the
> > end with:
> > 
> > pie: Restoring EXE link
> > pie: Restoring scheduler params 0.0.0
> > pie: 25983: Restored
> > pie: Error (pie/restorer.c:277): Thread pid mismatch 25986/25985
> 
> Does it _always_ ends up like this? This means that we've failed to obtain
> the desired pid and task was created with another one.

I thought it always ended up like this. But now that you said it I
retried it and now it successfully restores the process. It then crashes
somewhere in the Open MPI libraries because it needs to be restored by
Open MPI which does set up the environment. So I can restore my process
from the command line using criu but with the library not because of

(00.000520) Error (tty.c:1213): tty: Standard stream is not a terminal, aborting

It seems criu expects running on a terminal when using -j?

		Adrian


More information about the CRIU mailing list