[CRIU] Re: [RFC 0/4] Bring ability to multiple c/r of a program

Cyrill Gorcunov gorcunov at openvz.org
Mon Jul 23 03:01:41 EDT 2012


On Mon, Jul 23, 2012 at 10:42:58AM +0400, Pavel Emelyanov wrote:
...
> > 
> >  1) we write all this restorer code in assembly, which means we
> >     _always_ generate same code for all program versions
> 
> We _always_ generate the same code for the 2nd restorer for all program
> versions.

Yeah, until one day we need to change it for some reason. Please lets
not rely on instructions level, this is bad approach.

> >  2) we use C, thus crtools instructions might have been changed
> >     between builds
> > 
> > in either way it's pretty fragile to "memcmp" over restorer blob
> > for instructions match.
> > 
> > With uuid approach crtools need to meet at least two conditions
> > on restorer blob which can't be met without special construction
> > of such vma area
> > 
> >  1) VMA must be executable
> >  2) VMA must _start_ with uuid and its sha1 hash
> > 
> > these conditions will never met in real programs.
> 
> Please, prove.

The signature data it pretty known and has no sane meaning
on insns level (there is no jump on the steam which finish with

00000044  6236              bound esi,[esi]
00000046  633430            arpl [eax+esi],si
00000049  31                db 0x31

) and for sure this is not what real programs do.

	Cyrill


More information about the CRIU mailing list