[CRIU] [PATCH CRIU 08/14] restore/net/ipv6: net device and def/all configuration
Pavel Tikhomirov
ptikhomirov at virtuozzo.com
Mon Apr 4 06:58:10 PDT 2016
On 04/04/2016 04:38 PM, Pavel Emelyanov wrote:
> On 04/04/2016 01:30 PM, Pavel Tikhomirov wrote:
>>
>>
>> On 04/04/2016 01:16 PM, Pavel Emelyanov wrote:
>>>
>>>> @@ -163,9 +163,11 @@ static int net_conf_op(char *tgt, int *conf, int n, int op, char *proto,
>>>> continue;
>>>> }
>>>> /*
>>>> - * If dev conf value is the same as default skip restoring it
>>>> + * If dev conf value is the same as default skip restoring it,
>>>> + * mtu may be changed by disable_ipv6 so we can not skip
>>>> + * it's restore
>>>> */
>>>
>>> No, this means that we should restore mtu after disable_ipv6. And we still can check
>>> for it to match default value.
>>
>> Imagine situation:
>> 1)restore disable_ipv6 for default
>> 2)restore mtu for default
>> 3)create eth0
>> 4)restore disable_ipv6 for eth0
>> 5)restore mtu for eth0
>>
>> After step 3 both default and eth0 mtu are set to default value. But
>> after step 4 eth0's one can possibly change. So do you mean we need to
>> first restore both default/disable_ipv6 and eth0/disable_ipv6 and only
>> after that restore default/mtu ?
>
> No. By step 5 will eth0's mtu match the default mtu?
By step 5 we will have eth0/mtu(in image) equal to default/mtu(in image)
equal to default/mtu(sysctl) but not equal to eth0/mtu(sysctl).
>
>>>
>>>> - if (def_conf && conf[i] == def_conf[i]) {
>>>> + if (def_conf && conf[i] == def_conf[i] && strcmp(devconfs[i], "mtu")) {
>>>> pr_debug("DEBUG Skip %s/%s, val =%d\n", tgt, devconfs[i], conf[i]);
>>>> continue;
>>>> }
>>>
>>
>
--
Best regards, Tikhomirov Pavel
Software Developer, Virtuozzo.
More information about the CRIU
mailing list