Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 438970 - sys-apps/openrc-0.11.1: [oldnet] some interfaces inaccurately handle carrier detection
Summary: sys-apps/openrc-0.11.1: [oldnet] some interfaces inaccurately handle carrier ...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Hosted Projects
Classification: Unclassified
Component: OpenRC (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: OpenRC Team
URL:
Whiteboard: openrc:oldnet
Keywords:
: 439038 439596 (view as bug list)
Depends on:
Blocks: 439098
  Show dependency tree
 
Reported: 2012-10-19 18:31 UTC by Juergen Rose
Modified: 2013-04-25 23:08 UTC (History)
10 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
no-cd.patch (no-cd.patch,681 bytes, patch)
2012-10-23 14:58 UTC, William Hubbs
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Juergen Rose 2012-10-19 18:31:54 UTC
Since today the bridged network interface does not start anymore, because /etc/init.d/net.vbox does no more start.

root@moose:/root(3)# /etc/init.d/net.vbox start
 * Bringing up interface vbox0
 *   Creating Tun/Tap interface vbox0 ...ioctl(TUNSETIFF): Device or resource busy
 [ !! ]
 * ERROR: net.vbox0 failed to start


root@moose:/root(4)# cat /etc/conf.d/net
config_eth0="null"
tuntap_vbox0="tap"
config_vbox0="null"
config_br0="192.168.2.20/24"
routes_br0="default via 192.168.2.100"
bridge_br0="eth0 vbox0"
dns_domain_br0="ibmt.bioinf"
dns_search_br0="ibmt.bioinf"
dns_servers_br0="10.101.10.20 153.96.136.2 141.89.64.1 193.175.213.160"

depend_br0() 
{
   need net.eth0
   need net.vbox0
}

brctl_br0="setfd 0
        sethello 30
        stp off"


root@moose:/root(5)# ll /etc/init.d/net*
lrwxrwxrwx 1 root root     6 Nov  4  2010 /etc/init.d/net.br0 -> net.lo*
lrwxrwxrwx 1 root root     6 Nov  3  2009 /etc/init.d/net.eth0 -> net.lo*
-rwxr-xr-x 1 root root 16919 Oct 19 04:30 /etc/init.d/net.lo*
-rwxr-xr-x 1 root root  1588 Oct 19 04:30 /etc/init.d/netmount*
lrwxrwxrwx 1 root root     6 Nov  4  2010 /etc/init.d/net.vbox0 -> net.lo*



in /var/log/messages I find:

Oct 19 19:59:21 moose kernel: [   28.310404] r8169 0000:05:00.0: eth0: link up
Oct 19 19:59:21 moose kernel: [   29.046462] tun: Universal TUN/TAP device driver, 1.6
Oct 19 19:59:21 moose kernel: [   29.046465] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
Oct 19 19:59:21 moose kernel: [   35.078889] NET: Registered protocol family 10
Oct 19 19:59:21 moose kernel: [   35.079207] IPv6: ADDRCONF(NETDEV_UP): vbox0: link is not ready



root@moose:/root(7)# emerge --info
Portage 2.1.11.30 (default/linux/amd64/10.0/desktop, gcc-4.6.3, glibc-2.15-r3, 3.6.2-gentoo x86_64)
=================================================================
System uname: Linux-3.6.2-gentoo-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q9650_@_3.00GHz-with-gentoo-2.2
Timestamp of tree: Fri, 19 Oct 2012 14:30:01 +0000
app-shells/bash:          4.2_p37
dev-java/java-config:     2.1.12
dev-lang/python:          2.7.3-r2, 3.2.3-r1
dev-util/cmake:           2.8.9-r1
dev-util/pkgconfig:       0.27.1
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.11
sys-apps/sandbox:         2.6
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.9.6-r3, 1.10.3, 1.11.6, 1.12.4
sys-devel/binutils:       2.22.90
sys-devel/gcc:            4.6.3
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.6 (virtual/os-headers)
sys-libs/glibc:           2.15-r3
Repositories: gentoo x11 arcon bicatali sage-on-gentoo science lisp sunrise java-overlay ibormuth x-portage x-cpan g-octave
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA PUEL Intel-SDP dlj-1.1 skype-eula skype-4.0.0.7-copyright googleearth AdobeFlash-10.3 cadsoft Oracle-BCLA-JavaSE MakeMKV-EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/openvpn/easy-rsa /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch xattr"
FFLAGS="-march=native -O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de fr ru"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/x11 /var/lib/layman/arcon /var/lib/layman/bicatali /var/lib/layman/sage-on-gentoo /var/lib/layman/science /var/lib/layman/lisp /var/lib/layman/sunrise /var/lib/layman/java-overlay /var/lib/layman/ibormuth /usr/local/portage /var/lib/cpan /var/lib/g-octave"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="64bit R X Xaw3d a52 aac acl acpi admin afs alsa amd64 ao apache2 apng applet archive arpack asf aspell assistant atlas audacious audiofile automap automount bash-completion berkdb blas blast bluetooth bluray boo boost branding bzip2 cairo cdda cddb cdf cdio cdparanoia cdr cg cgi chm cli consolekit corba cracklib crypt css cuda cups curl cxx daap db dbi dbm dbus declarative designer devhelp device-mapper dga dia dirac djvu doc dot dri ds2490 ds9097 ds9097u dts dv dvb dvd dvdr dvi dynamicplugin eds egl elf emacs emboss emf encode epiphany evo examples exif expat extensions extra extras faac faad fam ffmpeg fftw firefox fits flac fltk fontconfig foomaticdb fortran fortran95 fpx fts3 fuse g3dvl galago garmin gcj gd gdal gdbm gdu gedit geoip geolocation geos gfortran gif gimp git glade glib glpk gml gmp gnome gnome-keyring gnome-print gnuplot gnutls gold gphoto2 gpm grammar graphics graphtft graphviz grass gsl gsm gstreamer gtk gtk3 gudev guile harness hddtemp hdf hdf5 hdri html http httpd hvm hwdb iconv icq icu id3 id3tag ide imagemagick imap inotify ipod ipv6 irda ithreads jabber jadetex java java6 jbig john jpeg jpeg2k kate kdepim kdrive kerberos keymap kpathsea kqemu kvm ladspa lame lapack latex lcms ldap lensfun libffi libkms libnotify libsamplerate lirc live lm_sensors lua lzo mad mail maildir mapnik math matroska media-library mercurial mikmod mkl mmx mmxext mng modules mono motif mozilla mp3 mp4 mpeg mpi mplayer mtp mudflap multilib musepack musicbrainz mysql mysqli nautilus ncurses neXt netcdf netpbm network networking networkmanager nfs nls nntp nptl nsplugin ntfs ntp numpy nvidia obex objc ocaml ocr octave odbc ofa ogdi ogg openexr opengl openmp overview pae pam pango pcre pda pdf perl plotutils plugins png podcast policykit portaudio posix postgres postscript ppds pppd preview-latex proj projectm projectx pstricks pulseaudio python python-bindings q16 q32 qemu qhull qt3support qt4 quicktime raw readline reiserfs reports rle romio rpc rrdcgi rrdtool sage samba sasl schroedinger science sdk sdl secure-delete semantic-desktop server session shout sip slang slp smart smbclient smp sms sndfile snmp soap sockets soup sox speex spell sql sqlite sse sse2 sse4 ssl ssse3 startup-notification stlport subtitles subversion sudo suexec svg svm swig szip t1lib tcl tcpd tex tex4ht texmacs tgif theora thesaurus threads thunderbird tidy tiff tk tools truetype udev udisks unicode upower usb userlocales utempter vaapi vdpau video virtualbox visio vorbis wav webdav webdav-serf webkit wifi wmf wxwidgets x264 xa xattr xcb xemacs xetex xext xft xine xml xmlreader xmlrpc xpm xv xvid xvmc yaml youtube zlib zvbi" ALSA_CARDS="intel8x0" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_core authn_dbm authn_default authn_file authz_core authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgid dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info lbmethod_byrequests log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif slotmem_shm so socache_shmcb speling status unique_id unixd userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="canon fuji ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CURL_SSL="nss" DRACUT_MODULES="caps lvm mdraid syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de fr ru" NETBEANS_MODULES="apisupport cnd dlight enterprise ergonomics groovy gsf harness ide identity j2ee java mobility nb php profiler ruby websvccommon xml" PHP_TARGETS="php5-3" PYTHON_TARGETS="python3_2 python2_7" QEMU_SOFTMMU_TARGETS="arm i386 x86_64" QEMU_USER_TARGETS="arm i386 x86_64" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="nouveau vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 1 Juergen Rose 2012-10-21 09:26:19 UTC
The problems seems to occur at all my computers, which are configured to work with a bridged network interface. I see the following boot messages:

...
 * Starting D-BUS system messagebus ...
 * Bringing up interface eth0
 *   Waiting for carrier (5 seconds) ..                                 [ ok ] 
 *   Waiting for IPv6 addresses ...                                     [ ok ] 
 * Bringing up interface vbox0
 *   Creating Tun/Tap interface vbox0 ...                               [ ok ] 
 *   Waiting for carrier (5 seconds) .....                              [ !! ]
 *   no carrier
 * ERROR: net.vbox0 failed to start
 * ERROR: cannot start net.br0 as net.vbox0 would not start
 * ERROR: cannot start ntp-client as net.vbox0 would not start
 * Starting rpcbind ...                                                 [ ok ]
...
 * Starting automounter ...                                             [ ok ]
 * ERROR: cannot start netmount as net.vbox0 would not start
...

If I later try to start /etc/init.d/net.vbox I get the message from the last posting (octl(TUNSETIFF): Device or resource busy).


A lot of network services autofs, netmount etc does not start. The only workaround I found so far is to switch to a nonbridged network interface.
Comment 2 Conrad Kostecki gentoo-dev 2012-10-22 09:55:12 UTC
Adding carrier_timeout_vbox0="0" in /etc/conf.d/net seems to help.
Comment 3 William Hubbs gentoo-dev 2012-10-22 13:57:18 UTC
*** Bug 439038 has been marked as a duplicate of this bug. ***
Comment 4 William Hubbs gentoo-dev 2012-10-22 14:57:36 UTC
I have changed the script so that 0 is the default setting for
carrier_timeout_iface. this is in commit 8d17c63.
Comment 5 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2012-10-23 10:00:50 UTC
(In reply to comment #4)
> I have changed the script so that 0 is the default setting for
> carrier_timeout_iface. this is in commit 8d17c63.

Ok, this isn't right either.

I updated my laptop per my usual dogfooding, and then networking failed to come up again.

My wireless card needs at LEAST carrier_timeout_wlan0="4" to work.
Comment 6 William Hubbs gentoo-dev 2012-10-23 14:58:33 UTC
Created attachment 327226 [details, diff]
no-cd.patch

@robbat2:
This patch would take carrier detection back to the way it was in
0.10.x. If you apply it do things work again?
Comment 7 DaggyStyle 2012-10-27 18:38:48 UTC
(In reply to comment #6)
> Created attachment 327226 [details, diff] [details, diff]
> no-cd.patch
> 
> @robbat2:
> This patch would take carrier detection back to the way it was in
> 0.10.x. If you apply it do things work again?

patch doesn't works for me, I still get this:
dhcpcd[9306]: version 5.2.12 starting
dhcpcd[9306]: tap0: broadcasting for a lease
dhcpcd[9306]: tap0: carrier lost
dhcpcd[9306]: timed out
dhcpcd[9306]: allowing 8 seconds for IPv4LL timeout
dhcpcd[9306]: timed out

here is my config:
config_eth0="null"

bridge_br0="eth0 tap0 tap1 tap2"
brctl_br0="setfd 0
sethello 0
stp on" 
rc_net_br0_need="net.eth0 net.tap1 net.tap0 net.tap2"

config_tap0="dhcp"
tuntap_tap0="tap"
tunctl_tap0="-g virt_users"
mac_tap0="0A:F8:1E:71:23:90"

config_tap1="dhcp"
tuntap_tap1="tap"
mac_tap1="0A:F8:1E:71:23:91"

config_tap2="dhcp"
tuntap_tap2="tap"
tunctl_tap2="-u mythtv"
mac_tap2="0A:F8:1E:71:23:92"
Comment 8 William Hubbs gentoo-dev 2012-10-27 22:01:58 UTC
(In reply to comment #7)
> (In reply to comment #6)
> > Created attachment 327226 [details, diff] [details, diff] [details, diff]
> > no-cd.patch
> > 
> > @robbat2:
> > This patch would take carrier detection back to the way it was in
> > 0.10.x. If you apply it do things work again?
> 
> patch doesn't works for me, I still get this:
> dhcpcd[9306]: version 5.2.12 starting
> dhcpcd[9306]: tap0: broadcasting for a lease
> dhcpcd[9306]: tap0: carrier lost
> dhcpcd[9306]: timed out
> dhcpcd[9306]: allowing 8 seconds for IPv4LL timeout
> dhcpcd[9306]: timed out
> 
> here is my config:
> config_eth0="null"
> 
> bridge_br0="eth0 tap0 tap1 tap2"
> brctl_br0="setfd 0
> sethello 0
> stp on" 
> rc_net_br0_need="net.eth0 net.tap1 net.tap0 net.tap2"
> 
> config_tap0="dhcp"
> tuntap_tap0="tap"
> tunctl_tap0="-g virt_users"
> mac_tap0="0A:F8:1E:71:23:90"
> 
> config_tap1="dhcp"
> tuntap_tap1="tap"
> mac_tap1="0A:F8:1E:71:23:91"
> 
> config_tap2="dhcp"
> tuntap_tap2="tap"
> tunctl_tap2="-u mythtv"
> mac_tap2="0A:F8:1E:71:23:92"

The first thing I suggest is upgrading your dhcpcd to the latest.
Then, if you still have this issue, please open another bug since this is not the same issue we are discussing on this bug. In the future, please read the bug before you post and say you are having the same issue.

Thanks,

William
Comment 9 Csaba Tóth 2012-11-01 09:01:23 UTC
I have the same error, tap interface didn't started after upgrade of openrc.
As suggested writing the carrier_timeout line solved:

config_tap0="192.168.10.1 netmask 255.255.255.0"
tuntap_tap0="tap"
tunctl_tap0="-u virtppp"
mac_tap0="52:54:00:12:34:57"
carrier_timeout_tap0="0"
Comment 10 William Hubbs gentoo-dev 2012-11-01 22:47:24 UTC
*** Bug 439596 has been marked as a duplicate of this bug. ***
Comment 11 Xuefer 2012-11-02 02:12:23 UTC
as reporter of bug #439596 that is merged to this, i'd ask if this bug is confirmed yet. what else info needed to reproduce it in dev side?
Comment 12 Aidan Marks 2012-11-03 22:59:21 UTC
ran into this (ioctl(TUNSETIFF): Device or resource busy) on two boxes with bridging.  both broke with openrc 0.11.x.  Tried the carrier_timeout_tap0="0" or "5" and restarting the tap interface but didn't work on the first machine I tried. Had to revert to 0.10.5 to get back up and running.
Comment 13 Matthew Schultz 2012-11-06 15:03:44 UTC
My tap interfaces weren't coming up either with openrc-0.11.2 until I added the timeout 0 line:

tuntap_tap0="tap"
config_tap0="192.168.100.1/24"
tunctl_tap0="-u mschultz"
carrier_timeout_tap0="0"

Just to note, I don't use bridging since it's unnecessary for running vms.

So is the carrier_timeout_tapX line required now to bring up tap interfaces or is this really a bug?
Comment 14 William Hubbs gentoo-dev 2012-11-06 15:19:34 UTC
The default in openrc-0.11.4 is to not wait for a carrier unless you set
carrier_timeout_$IFACE to some value, so this should no longer be an
issue.
Comment 15 Matthew Schultz 2012-11-06 16:08:55 UTC
(In reply to comment #14)
> The default in openrc-0.11.4 is to not wait for a carrier unless you set
> carrier_timeout_$IFACE to some value, so this should no longer be an
> issue.

Tap interfaces can come up now without carrier_timeout_$IFACE in openrc-0.11.4.  Thanks for the fix William.