You are not logged in.
Hi,
i have a dual-boot system with Arch and Windows 10.
Hibernation in Arch works, but if i hibernate Arch, boot into Win10 and then resume back to Arch, my network connection is lost.
When i hibernate Arch and resume Arch directly, everything works fine. So i would guess, it has something to do with Win10, but i changed nothing there.
I just upgraded my mainboard, cpu and ram, but the network-card is the same and worked with Arch and Windows before without an issue.
~ $ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp6s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether e4:c3:2a:db:b2:c5 brd ff:ff:ff:ff:ff:ff
~ $
I'm using netctl and as in https://wiki.archlinux.org/title/netctl … _on_resume described, i created this file:
~ $ cat /etc/systemd/system/netctl-auto-resume@.service
[Unit]
Description=restart netctl-auto on resume.
Requisite=netctl-auto@%i.service
After=sleep.target sys-subsystem-net-devices-%i.device
[Service]
Type=oneshot
ExecStart=/usr/bin/systemctl restart netctl-auto@%i.service
[Install]
WantedBy=sleep.target
What i noticed is, that this service failed with an error:
~ $ systemctl status netctl-auto@enp6s0.service
× netctl-auto@enp6s0.service - Automatic wireless network connection using netctl profiles
Loaded: loaded (/usr/lib/systemd/system/netctl-auto@.service; disabled; preset: disabled)
Active: failed (Result: exit-code) since Fri 2023-09-15 17:13:59 CEST; 15min ago
Docs: man:netctl.special(7)
Process: 12525 ExecStart=/usr/bin/netctl-auto start enp6s0 (code=exited, status=1/FAILURE)
Process: 12527 ExecStopPost=/usr/bin/netctl-auto clean enp6s0 (code=exited, status=0/SUCCESS)
CPU: 8ms
Sep 15 17:13:59 paulbrauseDesktop systemd[1]: Starting Automatic wireless network connection using netctl profiles...
Sep 15 17:13:59 paulbrauseDesktop netctl-auto[12525]: The interface 'enp6s0' is already up
Sep 15 17:13:59 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Control process exited, code=exited, status=1/FAILURE
Sep 15 17:13:59 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Failed with result 'exit-code'.
Sep 15 17:13:59 paulbrauseDesktop systemd[1]: Failed to start Automatic wireless network connection using netctl profiles.
The only thing to get the network starting is:
sudo netctl restart ethernet-dhcp
The netctl-profile looks like this:
~ $ cat /etc/netctl/ethernet-dhcp
Description='A basic dhcp ethernet connection'
Interface=enp6s0
Connection=ethernet
IP=dhcp
#DHCPClient=dhcpcd
#DHCPReleaseOnStop=no
## for DHCPv6
#IP6=dhcp
#DHCP6Client=dhclient
## for IPv6 autoconfiguration
#IP6=stateless
I have no clue, why this works for years and now, after upgrading board etc, doesn't.
Thanks in advance.
Last edited by paulbrause (2023-09-20 11:02:38)
Offline
Hibernation in Arch works, but if i hibernate Arch, boot into Win10 and then resume back to Arch, my network connection is lost.
Here's the story of a bear: https://bbs.archlinux.org/viewtopic.php … 4#p1960554
tl;dr: DO NOT DO THAT AT ALL!
Also 3rd link below. Mandatory.
Disable it (it's NOT the BIOS setting!) and reboot windows and linux twice for voodo reasons.
Online
Hibernation and Fast-Start is disabled in Windows.
Rebooted a few times, but no voodoo.
Offline
Ok, you do understand that you likewise cannot just hibernate linux and boot windows?
You cannot run two OS on the same HW at the same time (what is, what your approach effectively achieves)
Online
Hmmm, to be honest, no, i do not understand this, because this is what I did the last few years...
I never hibernated Windows, but I was able to "systemctl hibernate" hibernate Arch. The next time the PC was powered on, I choose in the boot manager Windows and all was working fine. And after shutting down Windows and resuming Arch, all was fine too.
So i must admit, I didn't know that this "normally" isn't possible to achieve.
From https://wiki.archlinux.org/title/Dual_boot_with_Windows :
There are two OSs that can be hibernated, you can hibernate Windows and boot Linux (or another OS), or you can hibernate Linux and boot Windows, or hibernate both OSs.
So this is incorrect?
Offline
It also says in a red box
Warning: Data loss can occur if Windows hibernates and you dual boot into another OS and make changes to files on a filesystem (such as NTFS) that can be read and written to by Windows and Linux, and that has been mounted by Windows [3]. Similarly, data loss can occur if Linux hibernates, and you dual boot into another OS etc. Windows may hibernate even when you press shutdown, see section #Windows settings.
The paragraph you posted might be misleading. You /can/ do that - you can also ram a rusty nail into your eye. Whether that's a good idea is a completely different question.
There might simply be a different behavior in windows reg. the wifi chip, but it is by far and in general a common victim of concurrent use and I'm not at all surprised that now leads to issues.
You cannot relieably hibernate and boot another OS, because the hibernating system expects and relies on the HW showing up in the state it was left in when waking from the hibernation, and that's entirely not guaranteed if you used the HW in any other way inbetween.
Edit: you want to check dmesg/the system journal for the actual error around the NIC and you might be able to work around it by rescanning the PCI bus, but the general approach remains unreliable and is simply not a good idea.
Last edited by seth (2023-09-15 20:57:22)
Online
Ah, okay. Now i understand. Thank you.
So it seems to be better with my setup not to hibernate. I will take that into account.
Offline
So, I've now followed your suggestion and no longer hibernate my system. When I need to switch to Windows, I reboot normally.
Otherwise I put the system into sleep mode using
systemctl suspend
However, I also have the problem that I have no internet or network access after reactivating.
And again only
sudo netctl restart ethernet-dhcp
helps.
So should one also not use the sleep mode? Or is there another solution for this?
Last edited by paulbrause (2023-09-19 11:41:51)
Offline
Please post your complete system journal after wakign from S3:
sudo journalctl -b | curl -F 'file=@-' 0x0.st
And no, you can perfectly expect the system to sleep and then wake up and function. Problems only arise when you're running to OS concurrently, albeit one of them in hibernation.
Online
Offline
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Reached target Sleep.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Starting restart netctl-auto on resume....
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Automatic wireless network connection using netctl profiles is inactive.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Dependency failed for restart netctl-auto on resume..
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Job netctl-auto-resume@enp6s0.service/start failed with result 'dependency'.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Starting System Suspend...
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Created slice Slice /system/netctl-auto.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Starting Automatic wireless network connection using netctl profiles...
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Main process exited, code=killed, status=15/TERM
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Failed with result 'signal'.
Sep 19 14:16:51 paulbrauseDesktop systemd-sleep[4525]: Entering sleep state 'suspend'...
Sep 19 14:16:51 paulbrauseDesktop kernel: PM: suspend entry (deep)
Sep 19 14:16:51 paulbrauseDesktop netctl-auto[4528]: The interface 'enp6s0' is already up
Sep 19 14:16:51 paulbrauseDesktop kernel: Filesystems sync: 0.016 seconds
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Stopped restart netctl-auto on resume..
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Control process exited, code=exited, status=1/FAILURE
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Starting restart netctl-auto on resume....
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Failed with result 'exit-code'.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Failed to start Automatic wireless network connection using netctl profiles.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Dependency failed for restart netctl-auto on resume..
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Job netctl-auto-resume@enp6s0.service/start failed with result 'dependency'.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Starting Automatic wireless network connection using netctl profiles...
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Main process exited, code=killed, status=15/TERM
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Failed with result 'signal'.
Sep 19 14:16:51 paulbrauseDesktop netctl-auto[4539]: The interface 'enp6s0' is already up
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Stopped restart netctl-auto on resume..
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Control process exited, code=exited, status=1/FAILURE
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Starting restart netctl-auto on resume....
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Failed with result 'exit-code'.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Failed to start Automatic wireless network connection using netctl profiles.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Dependency failed for restart netctl-auto on resume..
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Job netctl-auto-resume@enp6s0.service/start failed with result 'dependency'.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Starting Automatic wireless network connection using netctl profiles...
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Main process exited, code=killed, status=15/TERM
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Failed with result 'signal'.
Sep 19 14:16:51 paulbrauseDesktop netctl-auto[4547]: The interface 'enp6s0' is already up
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Stopped restart netctl-auto on resume..
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Control process exited, code=exited, status=1/FAILURE
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Starting restart netctl-auto on resume....
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Failed with result 'exit-code'.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Failed to start Automatic wireless network connection using netctl profiles.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Dependency failed for restart netctl-auto on resume..
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Job netctl-auto-resume@enp6s0.service/start failed with result 'dependency'.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Starting Automatic wireless network connection using netctl profiles...
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Main process exited, code=killed, status=15/TERM
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Failed with result 'signal'.
Sep 19 14:16:51 paulbrauseDesktop netctl-auto[4555]: The interface 'enp6s0' is already up
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Stopped restart netctl-auto on resume..
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Control process exited, code=exited, status=1/FAILURE
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Starting restart netctl-auto on resume....
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Failed with result 'exit-code'.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Failed to start Automatic wireless network connection using netctl profiles.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Dependency failed for restart netctl-auto on resume..
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Job netctl-auto-resume@enp6s0.service/start failed with result 'dependency'.
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: Starting Automatic wireless network connection using netctl profiles...
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Main process exited, code=killed, status=15/TERM
Sep 19 14:16:51 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Failed with result 'signal'.
Sep 19 14:16:52 paulbrauseDesktop netctl-auto[4563]: The interface 'enp6s0' is already up
Sep 19 14:16:52 paulbrauseDesktop systemd[1]: Stopped restart netctl-auto on resume..
Sep 19 14:16:52 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Control process exited, code=exited, status=1/FAILURE
Sep 19 14:16:52 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Start request repeated too quickly.
Sep 19 14:16:52 paulbrauseDesktop systemd[1]: netctl-auto-resume@enp6s0.service: Failed with result 'signal'.
Sep 19 14:16:52 paulbrauseDesktop systemd[1]: Failed to start restart netctl-auto on resume..
Sep 19 14:16:52 paulbrauseDesktop systemd[1]: netctl-auto@enp6s0.service: Failed with result 'exit-code'.
Sep 19 14:16:52 paulbrauseDesktop systemd[1]: Failed to start Automatic wireless network connection using netctl profiles.
There seems netctl-auto enabled and perhaps some sleep hooks?
Please post the output of
find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -f
Online
netctl-auto is still left over from my efforts to get hibernation to run. Should I disable the service?
~ $ find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -f
autofs.service | multi-user.target.wants
avahi-daemon.service | multi-user.target.wants
avahi-daemon.socket | sockets.target.wants
cronie.service | multi-user.target.wants
cups.path | multi-user.target.wants
cups.service | printer.target.wants
cups.socket | sockets.target.wants
dbus-org.freedesktop.Avahi.service | system
dbus-org.freedesktop.timesync1.service | system
display-manager.service | system
gcr-ssh-agent.socket | sockets.target.wants
getty@tty1.service | getty.target.wants
gnome-keyring-daemon.socket | sockets.target.wants
httpd.service | multi-user.target.wants
mariadb.service | multi-user.target.wants
netctl-auto-resume@enp6s0.service | sleep.target.wants
netctl@ethernet\x2ddhcp.service | multi-user.target.wants
nscd.service | multi-user.target.wants
ntpd.service | multi-user.target.wants
p11-kit-server.socket | sockets.target.wants
pipewire-pulse.socket | sockets.target.wants
pipewire-session-manager.service | user
pipewire.socket | sockets.target.wants
reflector.service | multi-user.target.wants
reflector.timer | timers.target.wants
remote-fs.target | multi-user.target.wants
set-cfs-tweaks.service | hibernate.target.wants
set-cfs-tweaks.service | hybrid-sleep.target.wants
set-cfs-tweaks.service | multi-user.target.wants
set-cfs-tweaks.service | suspend.target.wants
set-cfs-tweaks.service | suspend-then-hibernate.target.wants
systemd-timesyncd.service | sysinit.target.wants
teamviewerd.service | multi-user.target.wants
wireplumber.service | pipewire.service.wants
What I just noticed: the network problem only seems to occur when I leave the computer off for a longer period of time. If I activate sleep mode for just a few seconds and start the computer, then everything works as it should.
Offline
netctl-auto-resume@enp6s0.service | sleep.target.wants
What is that and why is that there?
Online
I got this from here:
https://wiki.archlinux.org/title/Netctl … _on_resume
Should i deactivate this?
Offline
afaict you're not using netctl-auto (nor is there a wifi NIC) so you rather don't need that.
(Quite frankly, just dhcpcd would do)
Online
I have deactivated netctl-auto and completely uninstalled netctl-auto-resume and so far the problem does not seem to reappear.
Thanks again!
Offline
\o/
Assuming it stays this way, please always remember to mark resolved threads by editing your initial posts subject - so others will know that there's no task left, but maybe a solution to find.
Thanks.
Online