Bug#858418: openvswitch-switch: deadlock in /usr/share/openvswitch/scripts/ifupdown.sh

2017-05-02 Thread Philippe Latu

Hello,

I experienced the same issue on many routers with openvswitch-switch 
internal interfaces (aka SVIs).


Commenting out the status test in 
'/usr/share/openvswitch/scripts/ifupdown.sh' solves the problem.


#if /etc/init.d/openvswitch-switch status > /dev/null 2>&1; then :; else
#/etc/init.d/openvswitch-switch start
#fi

At my low level of understanding, this test conflicts with systemd 
networking initialization process.


HTH,

--
- P h i l i p p e   L a t u
--
https://www.inetdoc.net



Bug#858418: openvswitch-switch: deadlock in /usr/share/openvswitch/scripts/ifupdown.sh

2017-03-22 Thread Andreas Korsten
Package: openvswitch-switch
Version: 2.6.2~pre+git20161223-3
Severity: important

Dear Maintainer,

at system startup, ifup of an openvswitch interface hangs because of
the following situation in the process table:

| /bin/sh /etc/init.d/openvswitch-switch start
|  \_ ifup --allow=ovs switch0
|  \_ /bin/sh -c /bin/run-parts --exit-on-error /etc/network/if-pre-up.d
|  \_ /bin/run-parts --exit-on-error /etc/network/if-pre-up.d
|  \_ /bin/sh /etc/network/if-pre-up.d/openvswitch
|  \_ /bin/sh /etc/init.d/openvswitch-switch start
|  \_ /bin/systemctl --no-pager 
--job-mode=ignore-dependencies start openvswitch-switch.service

Essentially, the first line blocks the last line.  This happens
because /usr/share/openvswitch/scripts/ifupdown.sh checks
"/etc/init.d/openvswitch-switch status" and tries to execute
"/etc/init.d/openvswitch-switch start" if that fails.  As the startup
script (first line) has not exited yet, systemd considers the unit not
to be up yet, the status check fails and the command in the last line hangs.
Eventally it will time out and the unit will be marked as failed.

Here's my /etc/network/interfaces:

| auto lo
| iface lo inet loopback
| 
| allow-switch0 enp5s0
| iface enp5s0 inet manual
|   ovs_type OVSPort
|   ovs_bridge switch0
|   ovs_options vlan_mode=access tag=109
| 
| iface enp5s0 inet6 manual
|   accept_ra 0
| 
| allow-switch0 vlan109
| iface vlan109 inet dhcp
|   hwaddress 00:24:e8:49:16:b9
|   ovs_type OVSIntPort
|   ovs_bridge switch0
|   ovs_options tag=109
|   ovs_extra set interface ${IFACE} other-config:hwaddr=00:24:e8:49:16:b9
| 
| iface vlan109 inet6 auto
|   accept_ra 1
| 
| allow-ovs switch0
| iface switch0 inet manual
|   ovs_type OVSBridge
|   ovs_ports enp5s0 vlan109
| 
| iface switch0 inet6 manual
|   accept_ra 0



-- System Information:
Debian Release: 9.0
  APT prefers testing
  APT policy: (990, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-2-amd64 (SMP w/8 CPU cores)
Locale: LANG=, LC_CTYPE= (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages openvswitch-switch depends on:
ii  kmod   23-2
ii  libatomic1 6.3.0-6
ii  libc6  2.24-9
ii  libpython2.7-stdlib [python-argparse]  2.7.13-2
ii  netbase5.4
ii  openvswitch-common 2.6.2~pre+git20161223-3
ii  procps 2:3.3.12-3
pn  python:any 
ii  uuid-runtime   2.29.1-1

openvswitch-switch recommends no packages.

openvswitch-switch suggests no packages.

-- no debconf information