[CRIU] Fake mount points in dump

Pavel Emelyanov xemul at parallels.com
Thu Jan 21 02:26:24 PST 2016


On 01/20/2016 04:41 PM, Stanislav Kinsburskiy wrote:
> 
> 
> 20.01.2016 14:24, Pavel Emelyanov пишет:
>> On 01/20/2016 04:16 PM, Stanislav Kinsburskiу wrote:
>>> 20 янв. 2016 г. 14:08 пользователь Pavel Emelyanov <xemul at parallels.com> написал:
>>>>
>>>>>> It is. Check the /proc/pid/mountinfo files themselves, maybe the mp just
>>>>>> got propagated from host to container or vice versa.
>>>>> I think the problem is much simpler.
>>>>> Autofs uses "parse" callback for early check, whether it can be dumped
>>>>> (checking pipe status).
>>>>> The intention was to detect unsupported mounts early. But looks like
>>>>> "parse" doesn't suit this role, because it's called for for host mounts.
>>>>> What was the reason behind this callback?
>>>> Parsing fs-specific options.
>>>>
>>> Why it can't be done, say, on dump stage?
>> Pardon? The fstype->parse() is called on dump stage, isn't it?
> 
> Not really.
> It's also called on check and restore stages.

That's side effect. On check it's likely not needed, on restore
it's called to get criu's mountpoints for ... hm ... for ... IIRC
for fsnotifies, but in case of mntns restore it is not called for
criu mntns (shouldn't be called).

>>> What was the reason to invent one more callback?
>> One more additionally to which?
> 
> In addition to dump callback.
> Why it was required to add "parse" callback and parse options there 
> instead of parsing them in "dump" callback?

Because we parse /proc/mountinfo in advance and re-parsing it at
dump time slows things down. It's better to get everything we need
in one go.

-- Pavel


More information about the CRIU mailing list