Bug 1127334

Summary: interface br0 taking forever to come up
Product: [Fedora] Fedora Reporter: Brian <bugzilla-redhat>
Component: initscriptsAssignee: Lukáš Nykrýn <lnykryn>
Status: CLOSED UPSTREAM QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 20CC: jonathan, lnykryn, vpavlin, zbyszek
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-08-08 09:58:09 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Brian 2014-08-06 16:44:04 UTC
Description of problem:
Either on boot or after the fact, one of the bridge interfaces takes 47s+ to start with it's IP + 10 aliases.  It takes ~13 seconds to come without the alias range, so that's not the source of the problem.

When booting, this causes an awful race condition where dhcp, bind, and virtual guests all fail because the can't bind to ip addresses that are not yet set.

Version-Release number of selected component (if applicable):
This didn't happen in F19

How reproducible:
every time

Steps to Reproduce:
1. systemctl restart network
2.
3.

Actual results:

time systemctl stop network && time systemctl start network

real    0m1.661s
user    0m0.002s
sys     0m0.025s

real    1m2.003s
user    0m0.004s
sys     0m0.027s

[root@hq2 network-scripts]# time ifdown br0 && time ifup br0

real    0m0.298s
user    0m0.112s
sys     0m0.163s
./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:0: No such file or directory
./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:1: No such file or directory
./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:2: No such file or directory
./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:3: No such file or directory
./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:4: No such file or directory
./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:5: No such file or directory
./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:6: No such file or directory
./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:7: No such file or directory
./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:8: No such file or directory
./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:9: No such file or directory
./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:10: No such file or directory

real    0m48.858s
user    0m0.340s
sys     0m0.372s



Expected results:
Under 2 seconds.

Additional info:
--ifcfg-eth0--
# Intel Corporation 82574L Gigabit Network Connection
DEVICE=eth0
HWADDR=00:30:48:F5:02:83
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
NOZEROCONF=yes
BOOTPROTO=none
NM_CONTROLLED=no
BRIDGE=br0


--ifcfg-br0--
DEVICE=br0
TYPE=Bridge
BOOTPROTO=none
ONBOOT=yes
DELAY=0
NM_CONTROLLED=no
IPV6INIT=no
NOZEROCONF=yes
IPADDR=70.xx.xx.209
NETMASK=255.255.255.240
GATEWAY=70.xx.xx.222
DNS1=127.0.0.1
#DEFROUTE=yes
#PEERROUTES=yes
IPV4_FAILURE_FATAL=yes
LINKDELAY=0


--ifcfg-br0-range--
IPADDR_START=70.xx.xx.210
IPADDR_END=70.xx.xx.220
CLONENUM_START=0
NETMASK=255.255.255.240

Comment 1 Lukáš Nykrýn 2014-08-07 11:46:37 UTC
Hmm, this is weird there should be no difference between F20 and F19 in this area. But I will look at it more closely. Just to be sure which version of initscripts are you using?

Comment 2 Lukáš Nykrýn 2014-08-07 12:41:13 UTC
So the delay is caused by performing arping, because we are now checking if there are not duplicit ip addresses on the network also for aliases. I think that this could be considered as a configuration problem, you just need to set ARPCHECK=no in the range file.

./network-functions: line 114: /etc/sysconfig/network-scripts/ifcfg-br0:0: No such file or directory
This is a different issue and it was caused by the change that we are currently initializing ipv6 by default and there is a bug. For now I would recommend to set IPV6INIT=no in the range file.

After those two changes your setup works for me on rawhide. Unfortunately I don't have any instance of fedora 20. Can you please try that?

Comment 3 Brian 2014-08-07 13:47:33 UTC
Lukáš, I'd give you a big gay kiss if you were here right now, and I'm not even gay!

with ARPCHECK=no in ifcfg-br0 and the ifcfg-br0-range0 (and IPV6INIT=no for the range)

time ifdown br0 && time ifup br0

real    0m0.251s
user    0m0.090s
sys     0m0.144s

real    0m0.407s
user    0m0.146s
sys     0m0.218s


Thanks!

btw, I'm running initscripts-9.51-2.fc20.x86_64

Comment 4 Lukáš Nykrýn 2014-08-08 09:58:09 UTC
Ehm, thanks? :-)

But anyway, I pushed a fix for the ipv6 issue to upstream git, it will be in some future update. https://git.fedorahosted.org/cgit/initscripts.git/commit/?id=832668b72dac67bc550a13b3275855b31a7236f6