Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752221AbdHJHkg (ORCPT ); Thu, 10 Aug 2017 03:40:36 -0400 Received: from mx1.redhat.com ([209.132.183.28]:57270 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751361AbdHJHkf (ORCPT ); Thu, 10 Aug 2017 03:40:35 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com A8B92C00F7E9 Authentication-Results: ext-mx07.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx07.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=otubo@redhat.com Subject: Re: [PATCH] hv_set_ifconfig.sh double check before setting ip From: Eduardo Otubo To: David Miller Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, devel@linuxdriverproject.org, sthemmin@microsoft.com, haiyangz@microsoft.com, kys@microsoft.com References: <20170808135345.17027-1-otubo@redhat.com> <20170808.211150.2070475124549651350.davem@davemloft.net> <494db0c8-8c31-f2ce-17fc-7b96b74f0b28@redhat.com> Organization: Red Hat Message-ID: <0b0a89e2-250e-69d9-9b24-1cf49e9c1d26@redhat.com> Date: Thu, 10 Aug 2017 09:40:27 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <494db0c8-8c31-f2ce-17fc-7b96b74f0b28@redhat.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.31]); Thu, 10 Aug 2017 07:40:34 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1730 Lines: 42 On 08/09/2017 11:02 AM, Eduardo Otubo wrote: > On 08/09/2017 06:11 AM, David Miller wrote: >> From: Eduardo Otubo >> Date: Tue, 8 Aug 2017 15:53:45 +0200 >> >>> This patch fixes the behavior of the hv_set_ifconfig script when setting >>> the interface ip. Sometimes the interface has already been configured by >>> network daemon, in this case hv_set_ifconfig causes "RTNETLINK: file >>> exists error"; in order to avoid this error this patch makes sure double >>> checks the interface before trying anything. >>> >>> Signed-off-by: Eduardo Otubo >> >> And if the daemon sets the address after you test it but before >> you try to set it in the script, what happens? >> >> This is why I hate changes like this. They don't remove the problem, >> they make it smaller. And smaller in a bad way. Smaller makes the >> problem even more harder to diagnose when it happens. >> >> There is implicitly no synchonization between network configuration >> daemons and things people run by hand like this script. >> >> So, caveat emptor. >> >> I'm not applying this, sorry. But also, looking from a different point of view, the current upstream solution does not avoid the problems you mentioned. My fix at least avoids double configuration and RTNETLINK errors. So perhaps you could consider this as "a better version walking towards an ideal fix"? >> > > This is just part of the resolution, actually. For RHEL I also configure > hyperv-daemons' systemd config file to be run only after network service > is up. > > So perhaps my solution should be distro-agnostic and only involve this > script as part of it? In this case I'll elaborate a little more then. > > Thanks for the comment.