[CRIU] Sync TODO-s for mount.c work

Pavel Emelyanov xemul at parallels.com
Fri Apr 24 12:43:06 PDT 2015


On 04/24/2015 09:29 PM, Oleg Nesterov wrote:
> Sorry, I was busy today. And didn't sleep ;) So I can't follow this
> discussion today. Will try tomorrow.
> 
> But I am all confused...
> 
> On 04/23, Pavel Emelyanov wrote:
>>
>> Ah, sure. It should be NOT before master_is_external, like this
>>
>>    (fsroot_mounted(m) || root_is_visible(m)) && !master_is_external()
>>
>> Provided master_is_external() is false for private mounts, this should
>> handle Oleg's case with mount --make-rprivate,
>                                   ^^^^^^^^^^^^^
>                                 --make-rslave
> 
> How???
> 
> I mean, once again, that we need more changes than correct implementaion
> of is_not_external().
> 
> In case of my "--make-rslave" example everything will be master_is_external,
> and
> 
>> all mountpoints will be bind-mounted from host with MS_SLAVE flag.
> 
> this won't restore the mountpoint correctly?

Why not? Will, but in sub-optimal manner -- instead of just cloning the mounts
tree criu will umount all the cloned mountpoints, then all the host mountpoints 
will be duplicatied (when you bind-mount a point it gets effectively duplicated
but with probably different mountpoint) and then moved to slave mode.

> OK, most probably I misenderstood you/Tycho. Will try to read this all
> tomorrow.

Sure :)

-- Pavel


More information about the CRIU mailing list