You are not logged in.

#1 2012-09-20 08:29:31

jakobcreutzfeldt
Member
Registered: 2011-05-12
Posts: 1,041

[solved] eth0 requires restart after suspend/resume (systemd/dhcpcd)

My work computer has the annoying quality of needing the eth0 interface restarted (ifconfig eth0 down && ifconfig eth0 up) when I resume the computer from being suspended. I'm using systemd as my init system and networking is simply managed by dhcpcd@eth0.service. I have almost the same setup at home and I don't have this problem. The main differences are that the work computer also has NetworkManager installed (possible shared computer, need Gnome just in case) but NetworkManager.service is disabled; this computer connects via a proxy (shouldn't matter); and the hardware is presumably different  though both have Intel interfaces.

$ lspci                                                                                                      
00:00.0 Host bridge: Intel Corporation 4 Series Chipset DRAM Controller (rev 03)                             
00:02.0 VGA compatible controller: Intel Corporation 4 Series Chipset Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation 4 Series Chipset Integrated Graphics Controller (rev 03)       
00:03.0 Communication controller: Intel Corporation 4 Series Chipset HECI Controller (rev 03)                
00:03.2 IDE interface: Intel Corporation 4 Series Chipset PT IDER Controller (rev 03)                        
00:03.3 Serial controller: Intel Corporation 4 Series Chipset Serial KT Controller (rev 03)                  
00:19.0 Ethernet controller: Intel Corporation 82567LM-3 Gigabit Network Connection (rev 02)                
00:1a.0 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #4 (rev 02)          
00:1a.1 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #5 (rev 02)          
00:1a.2 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #6 (rev 02)          
00:1a.7 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB2 EHCI Controller #2 (rev 02)         
00:1b.0 Audio device: Intel Corporation 82801JD/DO (ICH10 Family) HD Audio Controller (rev 02)               
00:1c.0 PCI bridge: Intel Corporation 82801JD/DO (ICH10 Family) PCI Express Port 1 (rev 02)                  
00:1c.4 PCI bridge: Intel Corporation 82801JD/DO (ICH10 Family) PCI Express Port 5 (rev 02)                  
00:1d.0 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #1 (rev 02)          
00:1d.1 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #2 (rev 02)          
00:1d.2 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB UHCI Controller #3 (rev 02)          
00:1d.7 USB controller: Intel Corporation 82801JD/DO (ICH10 Family) USB2 EHCI Controller #1 (rev 02)         
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev a2)                                              
00:1f.0 ISA bridge: Intel Corporation 82801JDO (ICH10DO) LPC Interface Controller (rev 02)                   
00:1f.2 SATA controller: Intel Corporation 82801JD/DO (ICH10 Family) SATA AHCI Controller (rev 02) 

Relevant journalctl output for suspend & resume (just tested now so there's no real separation in time between the two):

Sep 20 10:10:08 chupacabra kernel: ACPI: Preparing to enter system sleep state S3
Sep 20 10:10:08 chupacabra kernel: PM: Saving platform NVS memory
Sep 20 10:10:08 chupacabra kernel: Disabling non-boot CPUs ...
Sep 20 10:10:08 chupacabra kernel: Broke affinity for irq 41
Sep 20 10:10:08 chupacabra kernel: CPU 1 is now offline
Sep 20 10:10:08 chupacabra kernel: Broke affinity for irq 42
Sep 20 10:10:08 chupacabra kernel: CPU 2 is now offline
Sep 20 10:10:08 chupacabra kernel: Broke affinity for irq 43
Sep 20 10:10:08 chupacabra kernel: CPU 3 is now offline
Sep 20 10:10:08 chupacabra kernel: ACPI: Low-level resume complete
Sep 20 10:10:08 chupacabra kernel: PM: Restoring platform NVS memory
Sep 20 10:10:08 chupacabra kernel: Enabling non-boot CPUs ...
Sep 20 10:10:08 chupacabra kernel: Booting Node 0 Processor 1 APIC 0x1
Sep 20 10:10:08 chupacabra kernel: hpet: hpet3 irq 41 for MSI
Sep 20 10:10:08 chupacabra kernel: CPU1 is up
Sep 20 10:10:08 chupacabra kernel: Booting Node 0 Processor 2 APIC 0x2
Sep 20 10:10:08 chupacabra kernel: hpet: hpet4 irq 42 for MSI
Sep 20 10:10:08 chupacabra kernel: CPU2 is up
Sep 20 10:10:08 chupacabra kernel: Booting Node 0 Processor 3 APIC 0x3
Sep 20 10:10:08 chupacabra kernel: hpet: hpet5 irq 43 for MSI
Sep 20 10:10:08 chupacabra kernel: CPU3 is up
Sep 20 10:10:08 chupacabra kernel: ACPI: Waking up from system sleep state S3
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1a.0: wake-up capability disabled by ACPI
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1a.1: wake-up capability disabled by ACPI
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1a.2: wake-up capability disabled by ACPI
Sep 20 10:10:08 chupacabra kernel: ehci_hcd 0000:00:1a.7: wake-up capability disabled by ACPI
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1d.0: wake-up capability disabled by ACPI
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1d.1: wake-up capability disabled by ACPI
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1d.2: wake-up capability disabled by ACPI
Sep 20 10:10:08 chupacabra kernel: ehci_hcd 0000:00:1d.7: wake-up capability disabled by ACPI
Sep 20 10:10:08 chupacabra kernel: PM: noirq resume of devices complete after 0.725 msecs
Sep 20 10:10:08 chupacabra kernel: PM: early resume of devices complete after 0.082 msecs
Sep 20 10:10:08 chupacabra kernel: i915 0000:00:02.0: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: mei 0000:00:03.0: irq 47 for MSI/MSI-X
Sep 20 10:10:08 chupacabra kernel: ata_generic 0000:00:03.2: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: e1000e 0000:00:19.0: wake-up capability disabled by ACPI
Sep 20 10:10:08 chupacabra kernel: e1000e 0000:00:19.0: irq 49 for MSI/MSI-X
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1a.1: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1a.0: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: usb usb4: root hub lost power or was reset
Sep 20 10:10:08 chupacabra kernel: usb usb3: root hub lost power or was reset
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1a.2: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: ehci_hcd 0000:00:1a.7: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: usb usb5: root hub lost power or was reset
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1d.0: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: usb usb6: root hub lost power or was reset
Sep 20 10:10:08 chupacabra kernel: snd_hda_intel 0000:00:1b.0: irq 50 for MSI/MSI-X
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1d.1: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: usb usb7: root hub lost power or was reset
Sep 20 10:10:08 chupacabra kernel: uhci_hcd 0000:00:1d.2: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: ehci_hcd 0000:00:1d.7: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: usb usb8: root hub lost power or was reset
Sep 20 10:10:08 chupacabra kernel: pci 0000:00:1e.0: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: ahci 0000:00:1f.2: setting latency timer to 64
Sep 20 10:10:08 chupacabra kernel: serial 00:07: activated
Sep 20 10:10:08 chupacabra kernel: e1000e 0000:00:19.0: eth0: MAC Wakeup cause - Unicast Packet
Sep 20 10:10:08 chupacabra kernel: ata4: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
Sep 20 10:10:08 chupacabra kernel: ata5: SATA link down (SStatus 0 SControl 300)
Sep 20 10:10:08 chupacabra kernel: ata7: SATA link down (SStatus 0 SControl 300)
Sep 20 10:10:08 chupacabra kernel: ata6: SATA link down (SStatus 0 SControl 300)
Sep 20 10:10:08 chupacabra kernel: ata4.00: ACPI cmd ef/03:0c:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata4.00: ACPI cmd ef/03:45:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata4.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata4.00: ACPI cmd ef/03:0c:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata4.00: ACPI cmd ef/03:45:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata4.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata4.00: configured for UDMA/100
Sep 20 10:10:08 chupacabra kernel: usb 4-2: reset low-speed USB device number 3 using uhci_hcd
Sep 20 10:10:08 chupacabra kernel: ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd ef/03:0c:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd ef/03:45:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd c6/00:10:00:00:00:a0 (SET MULTIPLE MODE) succeeded
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd e3/00:00:00:00:00:a0 (IDLE) succeeded
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd b1/c1:00:00:00:00:a0 (DEVICE CONFIGURATION OVERLAY) filtered out
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd f5/00:00:00:00:00:a0 (SECURITY FREEZE LOCK) filtered out
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd ef/03:0c:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd ef/03:45:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd c6/00:10:00:00:00:a0 (SET MULTIPLE MODE) succeeded
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd e3/00:00:00:00:00:a0 (IDLE) succeeded
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd b1/c1:00:00:00:00:a0 (DEVICE CONFIGURATION OVERLAY) filtered out
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd f5/00:00:00:00:00:a0 (SECURITY FREEZE LOCK) filtered out
Sep 20 10:10:08 chupacabra kernel: ata3.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out
Sep 20 10:10:08 chupacabra kernel: ata3.00: configured for UDMA/100
Sep 20 10:10:08 chupacabra kernel: sd 2:0:0:0: [sda] Starting disk
Sep 20 10:10:08 chupacabra kernel: PM: resume of devices complete after 5405.973 msecs
Sep 20 10:10:08 chupacabra kernel: PM: Finishing wakeup.
Sep 20 10:10:08 chupacabra kernel: Restarting tasks ... done.
Sep 20 10:10:08 chupacabra dbus-daemon[272]: dbus[272]: [system] Activating service name='org.freedesktop.PackageKit' (using servicehelper)
Sep 20 10:10:08 chupacabra dbus[272]: [system] Activating service name='org.freedesktop.PackageKit' (using servicehelper)
Sep 20 10:10:08 chupacabra dbus-daemon[272]: dbus[272]: [system] Activating via systemd: service name='org.freedesktop.NetworkManager' unit='dbus-org.freedesktop.NetworkManager.service'
Sep 20 10:10:08 chupacabra dbus[272]: [system] Activating via systemd: service name='org.freedesktop.NetworkManager' unit='dbus-org.freedesktop.NetworkManager.service'
Sep 20 10:10:08 chupacabra dbus-daemon[272]: dbus[272]: [system] Activation via systemd failed for unit 'dbus-org.freedesktop.NetworkManager.service': Unit dbus-org.freedesktop.NetworkManager.service
Sep 20 10:10:08 chupacabra dbus[272]: [system] Activation via systemd failed for unit 'dbus-org.freedesktop.NetworkManager.service': Unit dbus-org.freedesktop.NetworkManager.service failed to load: N
Sep 20 10:10:08 chupacabra dbus-daemon[272]: (packagekitd:716): GLib-GObject-WARNING **: invalid (NULL) pointer instance
Sep 20 10:10:08 chupacabra dbus-daemon[272]: (packagekitd:716): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
Sep 20 10:10:08 chupacabra dbus-daemon[272]: dbus[272]: [system] Successfully activated service 'org.freedesktop.PackageKit'
Sep 20 10:10:08 chupacabra dbus[272]: [system] Successfully activated service 'org.freedesktop.PackageKit'
Sep 20 10:10:11 chupacabra kernel: EXT4-fs (sda3): re-mounted. Opts: commit=0
Sep 20 10:10:11 chupacabra kernel: EXT4-fs (sda4): re-mounted. Opts: user_xattr,commit=0
Sep 20 10:10:11 chupacabra sudo[439]: pam_unix(sudo:session): session closed for user root

And here's the journalctl output for post-resume eth0 stuff:

Sep 20 10:11:04 chupacabra sudo[1012]: brandon : TTY=pts/3 ; PWD=/home/brandon/src/AUR/st ; USER=root ; COMMAND=/sbin/ifconfig eth0 down
Sep 20 10:11:04 chupacabra sudo[1012]: pam_unix(sudo:session): session opened for user root by brandon(uid=0)
Sep 20 10:11:04 chupacabra sudo[1012]: pam_unix(sudo:session): session closed for user root
Sep 20 10:11:06 chupacabra sudo[1015]: brandon : TTY=pts/3 ; PWD=/home/brandon/src/AUR/st ; USER=root ; COMMAND=/sbin/ifconfig eth0 up
Sep 20 10:11:06 chupacabra sudo[1015]: pam_unix(sudo:session): session opened for user root by brandon(uid=0)
Sep 20 10:11:06 chupacabra kernel: e1000e 0000:00:19.0: irq 49 for MSI/MSI-X
Sep 20 10:11:06 chupacabra sudo[1015]: pam_unix(sudo:session): session closed for user root
Sep 20 10:11:06 chupacabra kernel: e1000e 0000:00:19.0: irq 49 for MSI/MSI-X
Sep 20 10:11:06 chupacabra kernel: IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
Sep 20 10:11:21 chupacabra dhcpcd[32664]: eth0: carrier acquired
Sep 20 10:11:21 chupacabra kernel: e1000e: eth0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: None
Sep 20 10:11:21 chupacabra kernel: e1000e 0000:00:19.0: eth0: 10/100 speed: disabling TSO
Sep 20 10:11:21 chupacabra kernel: IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Sep 20 10:11:21 chupacabra dhcpcd[32664]: eth0: sending IPv6 Router Solicitation
Sep 20 10:11:21 chupacabra dhcpcd[32664]: eth0: sendmsg: Cannot assign requested address
Sep 20 10:11:21 chupacabra dhcpcd[32664]: eth0: rebinding lease of 172.22.3.106
Sep 20 10:11:25 chupacabra dhcpcd[32664]: eth0: acknowledged 172.22.3.106 from 10.60.4.214
Sep 20 10:11:25 chupacabra dhcpcd[32664]: eth0: leased 172.22.3.106 for 6000 seconds
Sep 20 10:11:25 chupacabra dhcpcd[32664]: eth0: sending IPv6 Router Solicitation
Sep 20 10:11:29 chupacabra dhcpcd[32664]: eth0: sending IPv6 Router Solicitation
Sep 20 10:11:33 chupacabra dhcpcd[32664]: eth0: sending IPv6 Router Solicitation
Sep 20 10:11:33 chupacabra dhcpcd[32664]: eth0: no IPv6 Routers available

I can't see anything in there that would indicate why this is happening. Also, it's not a hardware problem since suspend/resume in Gnome with NetworkManager doesn't have this problem. Has anyone else experienced this problem?

Last edited by jakobcreutzfeldt (2012-09-20 12:04:42)

Offline

#2 2012-09-20 09:20:28

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: [solved] eth0 requires restart after suspend/resume (systemd/dhcpcd)

Your last journal excerpt shows link not ready, then link becomes ready, and finally a successful dhcp lease. What exactly is the problem after that?

Offline

#3 2012-09-20 09:37:27

jakobcreutzfeldt
Member
Registered: 2011-05-12
Posts: 1,041

Re: [solved] eth0 requires restart after suspend/resume (systemd/dhcpcd)

That's only after explicitly bringing the interface down and then back up again. Before that, dhcpcd can't find eth0.

Offline

#4 2012-09-20 11:44:00

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: [solved] eth0 requires restart after suspend/resume (systemd/dhcpcd)

OK, that wasn't clear from your post.

In that case, I'd suggest you bring it down before suspend, and bring it up again after resume. This can be automated either with custom systemd services, or scripts in /usr/lib/systemd/system-sleep.

Offline

#5 2012-09-20 12:04:30

jakobcreutzfeldt
Member
Registered: 2011-05-12
Posts: 1,041

Re: [solved] eth0 requires restart after suspend/resume (systemd/dhcpcd)

tomk wrote:

OK, that wasn't clear from your post.

In that case, I'd suggest you bring it down before suspend, and bring it up again after resume. This can be automated either with custom systemd services, or scripts in /usr/lib/systemd/system-sleep.

Sorry about not being clear. Ok, well it's not ideal since I'd rather this be fixed, but that solution is certainly a do-able enough to just not worry about actually fixing the underlying problem. Thanks!

Offline

#6 2012-09-20 12:49:03

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: [solved] eth0 requires restart after suspend/resume (systemd/dhcpcd)

Well yeah - I kinda went for the "let's just make it work" approach, didn't I? smile

If you want to actually fix it, there's a line in your journal output that says:

e1000e 0000:00:19.0: wake-up capability disabled by ACPI

- might be a starting point for you.

Also, examine the journal output when it works i,e. under Gnome, see what the difference is.

Offline

Board footer

Powered by FluxBB