resume from disk fails to reload network drivers

Bug #59077 reported by Jeff Trull
8
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Fix Released
Undecided
Unassigned
linux-source-2.6.17 (Ubuntu)
Won't Fix
Medium
Unassigned

Bug Description

Binary package hint: acpi-support

I have both a wireless (Prism2.5 using hostap_pci driver) and a wired (8139) network interface:

0000:00:11.0 Network controller: Intersil Corporation Prism 2.5 Wavelan chipset (rev 01)
0000:00:12.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

Prior to hibernate they are properly loaded (excerpt from lsmod):

hostap_pci 60944 2
hostap 128964 1 hostap_pci
ieee80211_crypt 6848 2 hostap,ieee80211_crypt_ccmp
...
8139too 29568 0
8139cp 24384 0
mii 6528 2 8139too,8139cp

During hibernate both are unloaded (only hostap_pci seems to print anything):

Sep 5 10:29:25 localhost kernel: [17181025.452000] hostap_pci: Driver unloaded

but after resume from disk neither module is present in the lsmod output and network-manager cannot find any devices.

sudo modprobe hostap_pci
and
sudo modprobe 8139too

are required to restore the interfaces to their prior working order.

In case this is relevant, the /sys/class info for the drivers prior to hibernate:

ll -d /sys/class/net/*/device/driver
lrwxrwxrwx 1 root root 0 2006-09-05 12:26 /sys/class/net/eth0/device/driver -> ../../../bus/pci/drivers/8139too
lrwxrwxrwx 1 root root 0 2006-09-05 12:05 /sys/class/net/wifi0/device/driver -> ../../../bus/pci/drivers/hostap_pci
lrwxrwxrwx 1 root root 0 2006-09-05 12:05 /sys/class/net/wlan0/device/driver -> ../../../bus/pci/drivers/hostap_pci

Attempted workarounds:

I tried adding hostap_pci to the MODULES="" line in /etc/default/acpi-support but it didn't change anything (module still unloaded prior to hibernate and not reloaded).

I tried adding hostap_pci to the MODULES_WHITELIST but this only caused the module to act strangely. I think it really needs to be unloaded/reloaded as designed.

I tried adding a custom script to /etc/acpi/resume.d with the command "modprobe hostap_pci" but this didn't help either.

[question: how do the resume scripts know which modules were unloaded by the suspend scripts?]

Note: this is not the same as bug 40125, which is a network-manager issue. It's possibly the same as 25614, although there's not enough detail there to tell.

Tags: cft-2.6.27
Revision history for this message
Jeff Trull (jetrull) wrote :

More details:

acpi-support v0.85
kernel 2.6.15-26-k7

Revision history for this message
Jeff Trull (jetrull) wrote : further investigation results

This happens because hibernate.sh gets a segfault, and the resume scripts don't get run. /var/log/messages shows a "scheduling while atomic" problem (see attached).

Simon Law (sfllaw)
Changed in acpi-support:
importance: Untriaged → Medium
status: Unconfirmed → Confirmed
Revision history for this message
Jeff Trull (jetrull) wrote : Root cause

this is a kernel bug. I tracked it down with CONFIG_DEBUG_SPINLOCK_SLEEP and some Googling. Everyone with K7-based hardware is affected (not just those with a K7-optimized kernel). This problem was identified and fixed in the upstream kernel back in July and released in 2.6.18 (description follows). Applying this patch caused this issue to disappear for me.

Can this acpi-support bug be changed to a kernel bug? Should I file a separate one?

Thanks,
Jeff

Revision history for this message
exactt (giesbert) wrote :

you can change the affected package by clicking on the small triangle left to the package name in the yellow line on top of the page. then search for linux-source and change it.

which version of ubuntu are you running?

Revision history for this message
Brian Murray (brian-murray) wrote :

I am assigning this bug to the 'ubuntu-kernel-team' per their bug policy. For future reference you can learn more about their bug policy at https://wiki.ubuntu.com/KernelTeamBugPolicies .

Changed in linux-source-2.6.17:
assignee: nobody → ubuntu-kernel-team
Revision history for this message
Sergio Zanchetta (primes2h) wrote :

The 18 month support period for Edgy Eft 6.10 has reached it's end of life. As a result, we are closing the linux-source-2.6.17 Edgy Eft kernel task.

Hardy Heron 8.04 was recently released. It would be helpful if you could test the new release and verify if this is still an issue - http://www.ubuntu.com/getubuntu/download . You should be able to test your bug using the LiveCD. Please let us know your results. Thanks.

Changed in linux-source-2.6.17:
status: Confirmed → Invalid
Changed in linux:
status: New → Incomplete
Changed in linux-source-2.6.17:
status: Invalid → Won't Fix
Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

The Ubuntu Kernel Team is planning to move to the 2.6.27 kernel for the upcoming Intrepid Ibex 8.10 release. As a result, the kernel team would appreciate it if you could please test this newer 2.6.27 Ubuntu kernel. There are one of two ways you should be able to test:

1) If you are comfortable installing packages on your own, the linux-image-2.6.27-* package is currently available for you to install and test.

--or--

2) The upcoming Alpha5 for Intrepid Ibex 8.10 will contain this newer 2.6.27 Ubuntu kernel. Alpha5 is set to be released Thursday Sept 4. Please watch http://www.ubuntu.com/testing for Alpha5 to be announced. You should then be able to test via a LiveCD.

Please let us know immediately if this newer 2.6.27 kernel resolves the bug reported here or if the issue remains. More importantly, please open a new bug report for each new bug/regression introduced by the 2.6.27 kernel and tag the bug report with 'linux-2.6.27'. Also, please specifically note if the issue does or does not appear in the 2.6.26 kernel. Thanks again, we really appreicate your help and feedback.

Revision history for this message
Jeff Trull (jetrull) wrote :

As noted in my comment below, this was resolved upstream in 2.6.18

Changed in linux:
status: Incomplete → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote : Kernel team bugs

Per a decision made by the Ubuntu Kernel Team, bugs will longer be assigned to the ubuntu-kernel-team in Launchpad as part of the bug triage process. The ubuntu-kernel-team is being unassigned from this bug report. Refer to https://wiki.ubuntu.com/KernelTeamBugPolicies for more information. Thanks.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.