FS#30871 - [ifplugd] Does not gracefully handle 'netcfg.action eth0 up's that fail.

Attached to Project: Arch Linux
Opened by jstjohn (jstjohn) - Thursday, 26 July 2012, 22:42 GMT
Last edited by Eric Belanger (Snowman) - Tuesday, 30 April 2013, 01:13 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Thomas Bächler (brain0)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:
If you plug in an Ethernet cable to a system running ifplugd and netcfg, and the `/etc/ifplugd/netcfg.action eth0 up`—that ifplugd runs on cable insertion—fails, then ifplugd is stuck in a mostly non-responsive state in which it does not respond to future unplugs and cable insertions.
Note: I described this issue using 'eth0', but everything in my system is configured for 'lan0'.

Steps to reproduce:
1.) Have all netcfg profiles down/off with ifplugd running via net-auto-wired and the Ethernet cable unplugged
2.) In a ethernet-dhcp netcfg profile, set DHCP_TIMEOUT to a small value (e.g. '1')
3.) Plug in the Ethernet cable, and notice that ifplugd will attempt to get a DHCP lease and promptly fail
4.) Unplug the Ethernet cable, wait a few seconds, then plug it back in.
5.) At this point, I would expect ifplugd to start the ethernet-dhcp netcfg profile and try it again, but /var/log/messages shows that ifplugd doesn't do anything at this point.
6.) The only way to recover from this is to manually run `netcfg ethernet-dhcp start`

Additional info:
* package version(s): ifplugd-0.28-11 netcfg-2.8.8-1 dhcpcd-5.5.6-1 initscripts-2012.06.3-2
* config and/or log files etc.

In /etc/ifplugd/ifplugd.conf, only the following two lines are uncommented:
NET_IFS="lan0"
ARGS="-fwI -u0 -d10"

Here is the netcfg profile that I'm having issues with:
CONNECTION='ethernet'
DESCRIPTION='A DHCP Ethernet connection using iproute'
INTERFACE='lan0'
IP='dhcp'
DHCP_TIMEOUT=90
AUTO_WIRED=1

In /etc/rc.conf, I background the start of net-auto-wired. I also don't have any values set for a static IP address, etc. in /etc/rc.conf

Below is the relevant part of /var/log/messages. I have annotated parts of it to indicate which "steps to reproduce" item is happening when. Note that `netcfg current` showed that no profiles were running every time it's shown in the logs here.

<<Steps to reproduce #1-3>>
2012-07-26T18:09:42.328626-04:00 hostname kernel: [ 4878.491041] r8169 0000:04:00.0: lan0: link up
2012-07-26T18:09:42.328650-04:00 hostname kernel: [ 4878.491777] ADDRCONF(NETDEV_CHANGE): lan0: link becomes ready
2012-07-26T18:09:43.250044-04:00 hostname ifplugd(lan0)[481]: Link beat detected.
2012-07-26T18:09:44.351292-04:00 hostname ifplugd(lan0)[481]: Executing '/etc/ifplugd/netcfg.action lan0 up'.
2012-07-26T18:09:44.366672-04:00 hostname ifplugd(lan0)[481]: client: up
2012-07-26T18:09:44.378839-04:00 hostname ifplugd(lan0)[481]: client: loading wl-apt
2012-07-26T18:09:44.380898-04:00 hostname ifplugd(lan0)[481]: client: loading ethernet-dhcp
2012-07-26T18:09:44.382963-04:00 hostname ifplugd(lan0)[481]: client: loading wl-home
2012-07-26T18:09:44.407564-04:00 hostname dhcpcd[3998]: version 5.5.6 starting
2012-07-26T18:09:44.423193-04:00 hostname dhcpcd[3998]: lan0: sending IPv6 Router Solicitation
2012-07-26T18:09:44.423271-04:00 hostname dhcpcd[3998]: lan0: rebinding lease of 10.99.42.9
2012-07-26T18:09:48.424384-04:00 hostname dhcpcd[3998]: lan0: sending IPv6 Router Solicitation
2012-07-26T18:09:49.424485-04:00 hostname dhcpcd[3998]: timed out
2012-07-26T18:09:49.426026-04:00 hostname ifplugd(lan0)[481]: client: :: ethernet-dhcp up DHCP IP lease attempt failed.
2012-07-26T18:09:49.426858-04:00 hostname ifplugd(lan0)[481]: client: [fail]
2012-07-26T18:09:49.527788-04:00 hostname ifplugd(lan0)[481]: Program execution failed, return value is 1.
2012-07-26T18:09:54.974940-04:00 hostname sudo: user : TTY=pts/1 ; PWD=/etc/ifplugd ; USER=root ; COMMAND=/usr/bin/netcfg current
2012-07-26T18:09:56.940912-04:00 hostname sudo: user : TTY=pts/1 ; PWD=/etc/ifplugd ; USER=root ; COMMAND=/usr/bin/netcfg current
2012-07-26T18:10:01.812540-04:00 hostname sudo: user : TTY=pts/1 ; PWD=/etc/ifplugd ; USER=root ; COMMAND=/usr/bin/netcfg current
<<Steps to reproduce #4>>
2012-07-26T18:10:18.785362-04:00 hostname kernel: [ 4914.875006] r8169 0000:04:00.0: lan0: link down
2012-07-26T18:10:19.560300-04:00 hostname ifplugd(lan0)[481]: Link beat lost.
2012-07-26T18:10:23.548623-04:00 hostname kernel: [ 4919.629640] r8169 0000:04:00.0: lan0: link up
2012-07-26T18:10:23.664907-04:00 hostname ifplugd(lan0)[481]: Link beat detected.
<<Steps to reproduce #5>>
2012-07-26T18:10:48.216983-04:00 hostname sudo: user : TTY=pts/1 ; PWD=/etc/ifplugd ; USER=root ; COMMAND=/usr/bin/netcfg current
2012-07-26T18:10:56.206679-04:00 hostname sudo: user : TTY=pts/1 ; PWD=/etc/ifplugd ; USER=root ; COMMAND=/usr/bin/netcfg current
2012-07-26T18:10:57.220360-04:00 hostname sudo: user : TTY=pts/1 ; PWD=/etc/ifplugd ; USER=root ; COMMAND=/usr/bin/netcfg current
2012-07-26T18:10:57.774527-04:00 hostname sudo: user : TTY=pts/1 ; PWD=/etc/ifplugd ; USER=root ; COMMAND=/usr/bin/netcfg current
2012-07-26T18:11:30.045798-04:00 hostname sudo: user : TTY=pts/1 ; PWD=/etc/ifplugd ; USER=root ; COMMAND=/usr/bin/netcfg current
<<Steps to reproduce #6>>
2012-07-26T18:11:35.236003-04:00 hostname sudo: user : TTY=pts/1 ; PWD=/etc/ifplugd ; USER=root ; COMMAND=/usr/bin/netcfg ethernet-dhcp start
2012-07-26T18:11:35.343969-04:00 hostname dhcpcd[4519]: version 5.5.6 starting
2012-07-26T18:11:35.359410-04:00 hostname dhcpcd[4519]: lan0: sending IPv6 Router Solicitation
This task depends upon

Closed by  Eric Belanger (Snowman)
Tuesday, 30 April 2013, 01:13 GMT
Reason for closing:  Won't fix
Additional comments about closing:  netcfg has been moved to AUR
Comment by jstjohn (jstjohn) - Thursday, 26 July 2012, 22:47 GMT
I've had this problem for a while too, so I don't think it's related to the new version of netcfg, nor do I think this is an initscripts issue.

When searching the forums, I found this thread which *might* be related: https://bbs.archlinux.org/viewtopic.php?id=143464

Loading...