Suspend Issues or Soft Kernel Locks and no wireless; which is worse?
Eric Griffith
egriffith92 at gmail.com
Wed Aug 10 03:24:15 UTC 2011
Alright so basically...suspend's not working right; bomb of information below
Laptop Model: ASUS N73JQ-X2
Kernel: 2.6.40-4.fc15.i686
Desktop Enviro: KDE 4.6.5
The last time Suspend worked with no issues was Linux Mint 10 which
had, I think, kernel 2.6.35 (with ubuntu mods).
Alright, here's what's happening: KDE Power Management is set that if
I close my laptop lid, it should go into sleep mode. When I close the
lid, I give it a few seconds to enter sleep, and then I open it back
up. I'm met with a black screen, with a blinking cursor in the top
left. Fedora (15) is non-responsive to keyboard and mouse events
(SysRQ is enabled and doesn't work, so thats out the window), only
solution is to power it down and power it back up. Little googling
around and I'm met with a post by an owner of an ASUS N71, one
generation back. With a custom sleep script for ehci-hcd that worked
for them. Figure I'll give it a shot. Throw the script into
/etc/pm/sleep.d/, give it the necessary permissions. Reboot to make
sure it loads it, and then try sleep again.
It works!
...kinda.
Closed the lid, gave it a few seconds. Opened the lid back up, black
screen, and moved the mouse, my desktop appears a second later. I see
that knetworkmanager says I have no network; no problem, sleep always
kills the network interface before bringing it back up. Wait a second
wireless to come back....its not coming back. Mouse over
knetworkmanager in the systray: ethernet + wireless = 'unmanaged.'
*blink blink* Bug report pops up! Not for knetworkmanager... CPU #0 is
having soft kernel locks, and a lot of them. More and more bug reports
kept coming in, non stop until I powered down the laptop. Looking at
Fedora's automatic bug reporting, it says CPU#0 locked up for
23seconds, followed by the name of the custom sleep script I just
added. I'm pasting the sleep script below, if anyone is familiar with
suspend / sleep and can look it over, maybe give me a few hints on
what to do
Below is the backtrace for the kernel lockups, I do have more
information related to the lockup, but since Fedora keeps a bug report
inside 20+ different files each detailing 1 and only 1 thing, I'm not
sure which is relevant and which isn't. Also below is the script, and
pm-suspend.log
Backtrace first:
BUG: soft lockup - CPU#0 stuck for 23s! [20_custom-ehci_:3920]
Modules linked in: ebtable_nat ebtables ipt_MASQUERADE iptable_nat
nf_nat xt_CHECKSUM iptable_mangle bridge sunrpc 8021q garp stp llc
cpufreq_ondemand acpi_cpufreq mperf ip6t_REJECT nf_conntrack_ipv6
nf_defrag_ipv6 ip6table_filter ip6_tables rfcomm nf_conntrack_ipv4
nf_defrag_ipv4 xt_state nf_conntrack bnep btusb snd_hda_codec_hdmi
snd_hda_codec_realtek snd_hda_intel snd_hda_codec snd_hwdep snd_seq
snd_seq_device snd_pcm snd_timer snd soundcore arc4 ath9k mac80211
ath9k_common ath9k_hw ath cfg80211 bluetooth snd_page_alloc
asus_laptop sparse_keymap rfkill virtio_net kvm_intel kvm fglrx(P)
iTCO_wdt xhci_hcd iTCO_vendor_support microcode i7core_edac uvcvideo
edac_core videodev joydev atl1c media serio_raw uas usb_storage video
radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core [last unloaded:
scsi_wait_scan]
Modules linked in: ebtable_nat ebtables ipt_MASQUERADE iptable_nat
nf_nat xt_CHECKSUM iptable_mangle bridge sunrpc 8021q garp stp llc
cpufreq_ondemand acpi_cpufreq mperf ip6t_REJECT nf_conntrack_ipv6
nf_defrag_ipv6 ip6table_filter ip6_tables rfcomm nf_conntrack_ipv4
nf_defrag_ipv4 xt_state nf_conntrack bnep btusb snd_hda_codec_hdmi
snd_hda_codec_realtek snd_hda_intel snd_hda_codec snd_hwdep snd_seq
snd_seq_device snd_pcm snd_timer snd soundcore arc4 ath9k mac80211
ath9k_common ath9k_hw ath cfg80211 bluetooth snd_page_alloc
asus_laptop sparse_keymap rfkill virtio_net kvm_intel kvm fglrx(P)
iTCO_wdt xhci_hcd iTCO_vendor_support microcode i7core_edac uvcvideo
edac_core videodev joydev atl1c media serio_raw uas usb_storage video
radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core [last unloaded:
scsi_wait_scan]
Pid: 3920, comm: 20_custom-ehci_ Tainted: P
2.6.40-4.fc15.i686 #1 ASUSTeK Computer Inc. N71Jq/N71Jq
EIP: 0060:[<c0604a29>] EFLAGS: 00000203 CPU: 0
EIP is at dma_pte_free_pagetable+0xcf/0x1a0
EAX: 3000000f EBX: 00000004 ECX: 08000000 EDX: 00000005
ESI: 28000010 EDI: f3ada428 EBP: efe49e68 ESP: efe49e38
DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Process 20_custom-ehci_ (pid: 3920, ti=f400e000 task=f2853280 task.ti=efe48000)
Stack:
efe49e58 08000000 00000004 07ffffff f389c100 00000000 f3ada000 ffffffff
00000004 00000024 f389c100 f401f060 efe49e94 c0604fd9 ffffffff 00000000
f389c10c 00000292 00000000 f401f000 f389c100 00000006 f401f060 efe49ea8
Call Trace:
[<c0604fd9>] domain_exit+0xc5/0x18c
[<c0605d79>] device_notifier+0x58/0x5f
[<c081748f>] notifier_call_chain+0x2b/0x4d
[<c045813e>] __blocking_notifier_call_chain+0x40/0x52
[<c045816f>] blocking_notifier_call_chain+0x1f/0x21
[<c067fda2>] __device_release_driver+0x98/0x9c
[<c067fdc3>] device_release_driver+0x1d/0x28
[<c067f2cb>] driver_unbind+0x4d/0x7b
[<c067f27e>] ? store_drivers_probe+0x33/0x33
[<c067edd6>] drv_attr_store+0x25/0x2a
[<c0533e50>] sysfs_write_file+0xc3/0xee
[<c04eb4a4>] vfs_write+0x8f/0xd7
[<c0533d8d>] ? sysfs_open_file+0x1dc/0x1dc
[<c04eb666>] sys_write+0x42/0x63
[<c08143cc>] syscall_call+0x7/0xb
Code: e8 00 75 0f 8d 46 01 8d 53 01 e8 0b ed ff ff 89 c6 eb 70 8d 4b
ff b8 01 00 00 00 8b 7d e8 8d 0c c9 d3 e0 89 c1 8d 40 ff 89 45 dc <f6>
07 03 74 26 89 f8 89 4d d4 e8 23 ed ff ff 31 d2 2d 00 00 00
__________________________________________________________________________________________________________________________________________________
__________________________________________________________________________________________________________________________________________________
/var/log/pm-suspend.log:
Initial commandline parameters:
Sun Aug 7 21:26:13 EDT 2011: Running hooks for suspend.
Running hook /usr/lib/pm-utils/sleep.d/00logging suspend suspend:
Linux eric-laptop 2.6.40-4.fc15.i686 #1 SMP Fri Jul 29 18:54:39 UTC
2011 i686 i686 i386 GNU/Linux
Module Size Used by
ebtable_nat 1451 0
ebtables 12183 1 ebtable_nat
ipt_MASQUERADE 1716 3
iptable_nat 3734 1
nf_nat 15054 2 ipt_MASQUERADE,iptable_nat
xt_CHECKSUM 921 1
iptable_mangle 1247 1
bridge 60481 0
ppdev 6216 0
parport_pc 17816 0
lp 6973 0
parport 26550 3 ppdev,parport_pc,lp
sunrpc 168805 1
8021q 14146 0
garp 4938 1 8021q
stp 1391 2 bridge,garp
llc 3726 3 bridge,garp,stp
cpufreq_ondemand 4782 8
acpi_cpufreq 8212 1
mperf 1137 1 acpi_cpufreq
ip6t_REJECT 3395 2
nf_conntrack_ipv6 6429 1
nf_defrag_ipv6 7174 1 nf_conntrack_ipv6
ip6table_filter 1215 1
ip6_tables 9828 1 ip6table_filter
rfcomm 49712 8
nf_conntrack_ipv4 6874 5 iptable_nat,nf_nat
nf_defrag_ipv4 1093 1 nf_conntrack_ipv4
xt_state 942 3
nf_conntrack 56146 6
ipt_MASQUERADE,iptable_nat,nf_nat,nf_conntrack_ipv6,nf_conntrack_ipv4,xt_state
bnep 11740 2
snd_hda_codec_hdmi 20135 1
snd_hda_codec_realtek 241838 1
snd_hda_intel 20567 2
snd_seq 43528 0
snd_hda_codec 71160 3
snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel
snd_seq_device 5033 1 snd_seq
snd_hwdep 4905 1 snd_hda_codec
snd_pcm 63457 3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec
snd_timer 15237 2 snd_seq,snd_pcm
snd 48471 13
snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel,snd_seq,snd_seq_device,snd_hda_codec,snd_hwdep,snd_pcm,snd_timer
soundcore 5027 1 snd
arc4 1085 2
ath9k 87478 0
mac80211 211951 1 ath9k
ath9k_common 1984 1 ath9k
ath9k_hw 256555 2 ath9k,ath9k_common
ath 12198 2 ath9k,ath9k_hw
btusb 12468 1
asus_laptop 12357 0
cfg80211 126267 3 ath9k,mac80211,ath
bluetooth 165011 23 rfcomm,bnep,btusb
sparse_keymap 2746 1 asus_laptop
snd_page_alloc 6035 2 snd_hda_intel,snd_pcm
fglrx 2542058 139
rfkill 12939 4 asus_laptop,cfg80211,bluetooth
microcode 11178 0
joydev 7219 0
serio_raw 3394 0
i7core_edac 13106 0
edac_core 33238 3 i7core_edac
uvcvideo 51089 0
videodev 64085 1 uvcvideo
media 9214 2 uvcvideo,videodev
iTCO_wdt 10436 0
iTCO_vendor_support 2070 1 iTCO_wdt
xhci_hcd 88848 0
atl1c 26732 0
virtio_net 10262 0
kvm_intel 38794 0
kvm 274764 1 kvm_intel
video 10684 0
radeon 622900 0
ttm 45930 1 radeon
drm_kms_helper 23178 1 radeon
drm 156049 3 radeon,ttm,drm_kms_helper
i2c_algo_bit 4206 1 radeon
i2c_core 21572 5 videodev,radeon,drm_kms_helper,drm,i2c_algo_bit
total used free shared buffers cached
Mem: 1987012 793700 1193312 0 27432 325660
-/+ buffers/cache: 440608 1546404
Swap: 8000508 0 8000508
/usr/lib/pm-utils/sleep.d/00logging suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/00powersave suspend suspend:
/usr/lib/pm-utils/sleep.d/00powersave suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/01grub suspend suspend:
/usr/lib/pm-utils/sleep.d/01grub suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/49bluetooth suspend suspend:
/usr/lib/pm-utils/sleep.d/49bluetooth suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/55NetworkManager suspend suspend:
Having NetworkManager put all interaces to sleep...Done.
/usr/lib/pm-utils/sleep.d/55NetworkManager suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/56atd suspend suspend:
/usr/lib/pm-utils/sleep.d/56atd suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/56dhclient suspend suspend:
/usr/lib/pm-utils/sleep.d/56dhclient suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/75modules suspend suspend:
/usr/lib/pm-utils/sleep.d/75modules suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/90clock suspend suspend:
/usr/lib/pm-utils/sleep.d/90clock suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/94cpufreq suspend suspend:
/usr/lib/pm-utils/sleep.d/94cpufreq suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/95led suspend suspend:
/usr/lib/pm-utils/sleep.d/95led suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/95packagekit suspend suspend:
/usr/lib/pm-utils/sleep.d/95packagekit suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/98video-quirk-db-handler suspend suspend:
ATI Catalyst driver detected, not using quirks.
/usr/lib/pm-utils/sleep.d/98video-quirk-db-handler suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/99video suspend suspend:
kernel.acpi_video_flags = 0
/usr/lib/pm-utils/sleep.d/99video suspend suspend: success.
Sun Aug 7 21:26:14 EDT 2011: performing suspend
__________________________________________________________________________________________________________________________________________________
__________________________________________________________________________________________________________________________________________________
SCRIPT:
#!/bin/sh
# copy to /etc/pm/sleep.d/, chmod 755, and install acpi(d)
#inspired by http://art.ubuntuforums.org/showpost.php?p=9744970&postcount=19
#...and http://thecodecentral.com/2011/01/18/fix-ubuntu-10-10-suspendhibernate-not-working-bug
# tidied by tqzzaa :)
VERSION=1.1
DEV_LIST=/tmp/usb-dev-list
DRIVERS_DIR=/sys/bus/pci/drivers
DRIVERS="ehci xhci" # ehci_hcd, xhci_hcd
HEX="[[:xdigit:]]"
MAX_BIND_ATTEMPTS=2
BIND_WAIT=0.1
unbindDev() {
echo -n > $DEV_LIST 2>/dev/null
for driver in $DRIVERS; do
DDIR=$DRIVERS_DIR/${driver}_hcd
for dev in `ls $DDIR 2>/dev/null | egrep "^$HEX+:$HEX+:$HEX"`; do
echo -n "$dev" > $DDIR/unbind
echo "$driver $dev" >> $DEV_LIST
done
done
}
bindDev() {
if [ -s $DEV_LIST ]; then
while read driver dev; do
DDIR=$DRIVERS_DIR/${driver}_hcd
while [ $((MAX_BIND_ATTEMPTS)) -gt 0 ]; do
echo -n "$dev" > $DDIR/bind
if [ ! -L "$DDIR/$dev" ]; then
sleep $BIND_WAIT
else
break
fi
MAX_BIND_ATTEMPTS=$((MAX_BIND_ATTEMPTS-1))
done
done < $DEV_LIST
fi
rm $DEV_LIST 2>/dev/null
}
case "$1" in
hibernate|suspend) unbindDev;;
resume|thaw) bindDev;;
esac
THINGS THAT DONT HELP:
1) Bluetooth device is powered off, so not that piece of hardware
2) USB mouse plugged in / unplugged, doesnt matter.
3) MicroSD - SD card adapter plugged in, or not, doesn't matter, still nothing.
4) Using the free drivers; so its not (limited) to me using FGLRX
All available updates are applied; the KDE mailing list couldn't help,
so I'm tossing it to you guys in hopes something can come out from
this. Again... sorry for the sudden, massive email >.>
More information about the users
mailing list