[CRIU] rewriting images via criu (or crit?)

Pavel Emelyanov xemul at parallels.com
Tue Oct 28 09:36:27 PDT 2014


On 10/28/2014 07:42 PM, Tycho Andersen wrote:
> On Mon, Oct 27, 2014 at 09:41:48PM +0400, Pavel Emelyanov wrote:
>> On 10/27/2014 08:32 PM, Tycho Andersen wrote:
>>
>>>> I mean, yes, plugin isn't very flexible tool, but it should be faster than
>>>> calling
>>>> a separate tool to modify image. For flexibility one could use crit written
>>>> in python.
>>>
>>> Isn't it mostly just saving you an extra fork()? Assuming the
>>> performance critical bits of crit were written in C, shouldn't it be
>>> essentially equivalent to doing it in criu?
>>
>> How about doing restore-time modification in streaming mode?
>> Like -- criu forks crit with 2 pipes (1 unix seq-packet socket),
>> then sends there images reading modified versions back. This
>> should save a lot of time for fork() (we do fork() a lot in criu
>> restore anyway, e.g. for netns setup), but will still make it
>> possible to use Python powers for images manipulations.
> 
> So you'd do something like pass --crit-cli="..." to criu, which would
> pass that to crit which would read from the pipe and do what it
> wanted?

Yes :) The final CLI syntax is to be sorted out, but the idea is exactly
like you've just described.

Thanks,
Pavel



More information about the CRIU mailing list