[CRIU] [lxc-devel] LXC live migrate

Eric W. Biederman ebiederm at xmission.com
Mon Jan 20 15:00:26 PST 2014


Pavel Emelyanov <xemul at parallels.com> writes:

> On 11/27/2013 01:18 PM, Marian Marinov wrote:
>>>>> I rebooted the container without getty on tty1 and then I got this:
>>>>>
>>>>> (00.260757) Error (mount.c:255): 86:/dev/tty4 doesn't have a proper root mount
>>>
>>> This is the reason. That's container's console which is a bind mounted tty from
>>> the host. And since this is an external connection, CRIU doesn't dump one.
>>>
>>> There are two ways to resolve this. The first is disable container's console. It's
>>> fast, but ugly. The second way is supporting one, but it would require criu hacking.
>>> We should detect, that this is an external tty, decide, that we're OK to disconnect
>>> it after dump and on restore -- connect it back.
>> 
>> The ugly fix does not work either. Because even if you comment the lxc.tty option criu is complaining:
>> 
>> (00.243390) Error (mount.c:255): 82:/dev/console doesn't have a proper root mount
>
> But this also means, that the /dev/console is bind mounted from the host,
> so external console didn't disappear.
>
>> (00.243626) Error (namespaces.c:445): Namespaces dumping finished with error 65280
>> (00.244029) Error (cr-dump.c:1811): Dumping FAILED.

Apologies for comming to this late but I have a question about this
class of problem.

The way I had always envisioned checkpoint/restart handling physical
devices is to generate hotplug events for the devices going away, and
possibly for the new devices upon restore.

Is there a a problem with that approach or is this something you simply
haven't or at least hadn't gotten to yet?

Eric


More information about the CRIU mailing list