Bug 485171

Summary: SATA errors thrown instead of resuming
Product: [Fedora] Fedora Reporter: W.C. Epperson <bugzilla>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 10CC: kernel-maint, raanan, skr
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-12-18 07:54:02 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description W.C. Epperson 2009-02-12 02:29:45 UTC
Description of problem:

What happens with this HP dv6-1030us laptop is that suspend appears to work from outside appearances, but resume throws continuous scrolling errors on a text console screen, and the resume never happens.  It's hard to capture the
error messages in that environment, but they include (all prefixed with
ata1: or ata2:):

serror: {DevExch}
SATA link down (sstatus 1 scontrol 300)
EH complete
exception Emask 0x10 SAct 0x0 Serr 0x4000000 action 0xe frozen
irg_stat connection 0x00000040 connection status changed

Responses on hal.org indicate that this is a kernel bug, not a hal/pm-suspend issue.

Version-Release number of selected component (if applicable):
2.6.27.12-170.2.5.fc10.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Boot machine, login to Gnome desktop
2. Suspend via gnome-power-applet button OR pm-suspend from terminal OR closing laptop lid
3. Attempt to resume by opening laptop lid 
  
Actual results:
Text screen with scrolling errors as noted above.

Expected results:
Resume to previous Gnome session state


Additional info:

Here are the suspend log, the smartctl and hdparm info on the SATA drive,
and the lspci info on the SATA controller.  Other information cheerfully
furnished on request.

cat /var/log/pm-suspend.log:

Initial commandline parameters: --quirk-dpms-suspend
--quirk-dpms-on
--quirk-vbestate-restore
--quirk-vbemode-restore
--quirk-vga-mode3
--quirk-vbe-post
Mon Feb  9 22:11:12 EST 2009: Running hooks for suspend.
/usr/lib64/pm-utils/sleep.d/00auto-quirk suspend suspend: success.
/usr/lib64/pm-utils/sleep.d/00logging suspend suspend: Linux
mudgen.epperson.homelinux.net 2.6.27.12-170.2.5.fc10.x86_64 #1 SMP Wed Jan
21 01:33:24 EST 2009 x86_64 x86_64 x86_64 GNU/Linux
Module                  Size  Used by
ppdev                  15752  0
parport_pc             34200  0
lp                     19428  0
parport                42784  3 ppdev,parport_pc,lp
hidp                   23424  1
michael_mic            10752  4
arc4                   10240  4
ecb                    11264  4
crypto_blkcipher       24196  1 ecb
fuse                   60992  2
i915                   67080  2
drm                   201328  3 i915
rfcomm                 43808  4
bridge                 56224  0
stp                    10756  1 bridge
bnep                   22016  2
sco                    19204  2
l2cap                  28544  21 hidp,rfcomm,bnep
sunrpc                191208  3
ip6t_REJECT            12160  2
nf_conntrack_ipv6      22984  2
ip6table_filter        11136  1
ip6_tables             26128  1 ip6table_filter
ipv6                  287272  34 ip6t_REJECT,nf_conntrack_ipv6
cpufreq_ondemand       15504  1
acpi_cpufreq           17552  1
freq_table             12928  2 cpufreq_ondemand,acpi_cpufreq
dm_multipath           23704  0
uinput                 16128  0
snd_hda_intel         478752  3
snd_seq_dummy          11396  0
snd_seq_oss     %

[root@mudgen ~]# smartctl -i /dev/sda
smartctl version 5.38 [x86_64-redhat-linux-gnu] Copyright (C) 2002-8 Bruce
Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF INFORMATION SECTION ===
Device Model:     FUJITSU MHZ2320BH G2
Serial Number:    K618T8B2V2FV
Firmware Version: 8909
User Capacity:    320,072,933,376 bytes
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   8
ATA Standard is:  ATA-8-ACS revision 3f
Local Time is:    Tue Feb 10 20:40:37 2009 EST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

[root@mudgen ~]# hdparm -i /dev/sda

/dev/sda:

 Model=FUJITSU MHZ2320BH G2                    , FwRev=8909    ,
SerialNo=K618T8B2V2FV
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=?16?
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=625142448
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
 AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
 Drive conforms to: unknown:  ATA/ATAPI-3,4,5,6,7

 * signifies the current active mode

lspci -v for controller:

00:1f.2 SATA controller: Intel Corporation ICH9M/M-E SATA AHCI Controller
(rev 03) (prog-if 01 [AHCI 1.0])
        Subsystem: Hewlett-Packard Company Device 3627
        Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 19
        I/O ports at 7108 [size=8]
        I/O ports at 711c [size=4]
        I/O ports at 7100 [size=8]
        I/O ports at 7118 [size=4]
        I/O ports at 7020 [size=32]
        Memory at da505000 (32-bit, non-prefetchable) [size=2K]
        Capabilities: [80] Message Signalled Interrupts: Mask- 64bit- Count=1/16
Enable-
        Capabilities: [70] Power Management version 3
        Capabilities: [a8] SATA HBA <?>
        Capabilities: [b0] PCIe advanced features <?>
        Kernel driver in use: ahci

Comment 1 W.C. Epperson 2009-02-12 02:34:33 UTC
In original report, the paste of pm-suspend.log truncated on snd_seq_oss line.  Missing part of log is:

                       39104  0 
snd_seq_midi_event     14848  1 snd_seq_oss
snd_seq                61968  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_seq_device         15380  3 snd_seq_dummy,snd_seq_oss,snd_seq
snd_pcm_oss            52224  0 
snd_mixer_oss          23168  1 snd_pcm_oss
ieee80211_crypt_tkip    17280  0 
snd_pcm                85512  2 snd_hda_intel,snd_pcm_oss
wl                   1083200  0 
uvcvideo               62344  0 
r8169                  40964  0 
snd_timer              30352  2 snd_seq,snd_pcm
pcspkr                 11008  0 
i2c_i801               17820  0 
snd_page_alloc         16656  2 snd_hda_intel,snd_pcm
snd_hwdep              16392  1 snd_hda_intel
compat_ioctl32         16512  1 uvcvideo
i2c_core               29216  2 drm,i2c_i801
videodev               40704  2 uvcvideo,compat_ioctl32
joydev                 19328  0 
mii                    13056  1 r8169
snd                    68984  16 snd_hda_intel,snd_seq_dummy,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer,snd_hwdep
btusb                  20760  4 
v4l1_compat            21380  2 uvcvideo,videodev
video                  28316  0 
battery                21000  0 
ac                     13320  0 
wmi                    14912  0 
usb_storage           109216  0 
output                 11264  1 video
soundcore              14992  1 snd
bluetooth              60068  16 hidp,rfcomm,bnep,sco,l2cap,btusb
ieee80211_crypt        13316  2 ieee80211_crypt_tkip,wl
             total       used       free     shared    buffers     cached
Mem:       3992832     875152    3117680          0       6472     216592
-/+ buffers/cache:     652088    3340744
Swap:      6040400      10556    6029844
success.
/usr/lib64/pm-utils/sleep.d/00powersave hibernate hibernate: success.
/usr/lib64/pm-utils/sleep.d/01grub hibernate hibernate: success.
/usr/lib64/pm-utils/sleep.d/49bluetooth hibernate hibernate: not applicable.
/usr/lib64/pm-utils/sleep.d/50ntpd hibernate hibernate: Shutting down ntpd: [  OK  ]
success.
/usr/lib64/pm-utils/sleep.d/55NetworkManager hibernate hibernate: success.
/usr/lib64/pm-utils/sleep.d/55battery hibernate hibernate: success.
/usr/lib64/pm-utils/sleep.d/65alsa hibernate hibernate: success.
/usr/lib64/pm-utils/sleep.d/75modules hibernate hibernate: not applicable.
/usr/lib64/pm-utils/sleep.d/90chvt hibernate hibernate: success.
/usr/lib64/pm-utils/sleep.d/90clock hibernate hibernate: success.
/usr/lib64/pm-utils/sleep.d/94cpufreq hibernate hibernate: success.
/usr/lib64/pm-utils/sleep.d/95led hibernate hibernate: not applicable.
/usr/lib64/pm-utils/sleep.d/95packagekit hibernate hibernate: success.
/usr/lib64/pm-utils/sleep.d/98smart-kernel-video hibernate hibernate: success.
/usr/lib64/pm-utils/sleep.d/99hd-apm-restore.hook hibernate hibernate: saving level 128 for device sda
SG_IO: bad/missing ATA_16 sense data::  70 00 05 00 00 00 00 0a 00 00 00 00 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
SG_IO: bad/missing ATA_16 sense data::  70 00 05 00 00 00 00 0a 00 00 00 00 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 HDIO_DRIVE_CMD(identify) failed: Input/output error
Advanced Power Management not supported by device sdb.
success.

Comment 2 Raanan 2009-02-12 21:28:07 UTC
I have the same thing on a LG R510 laptop. even tried the 2.6.29 rc4 to see if it helps, it does not. 

uname -r 
2.6.29-0.22.rc4.git1.fc10.x86_64

[raanan@raanan-laptop-new ~]$ hdparm -i /dev/sda

/dev/sda:

 Model=Hitachi HTS543225L9A300                 , FwRev=FBEOC40C, SerialNo=081105FB2F00LLJEDDAA
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=DualPortCache, BuffSize=7114kB, MaxMultSect=16, MultSect=?0?
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=488397168
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6
 AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
 Drive conforms to: unknown:  ATA/ATAPI-2,3,4,5,6,7

 * signifies the current active mode


lspci -v for the sata controller - 

00:1f.2 SATA controller: Intel Corporation ICH9M/M-E SATA AHCI Controller (rev 03) (prog-if 01 [AHCI 1.0])
        Subsystem: LG Electronics, Inc. Device 1775                                                       
        Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 19                                        
        I/O ports at 8108 [size=8]                                                                        
        I/O ports at 8114 [size=4]                                                                        
        I/O ports at 8100 [size=8]                                                                        
        I/O ports at 8110 [size=4]                                                                        
        I/O ports at 8020 [size=32]                                                                       
        Memory at db305000 (32-bit, non-prefetchable) [size=2K]                                           
        Capabilities: [80] Message Signalled Interrupts: Mask- 64bit- Count=1/16 Enable-                  
        Capabilities: [70] Power Management version 3                                                     
        Capabilities: [a8] SATA HBA <?>                                                                   
        Capabilities: [b0] PCIe advanced features <?>                                                     
        Kernel driver in use: ahci

Comment 3 Chuck Ebbert 2009-02-16 21:51:57 UTC
If your machine has settings for it in the BIOS, change the controller from AHCI to IDE mode and see if it works better.

Comment 4 W.C. Epperson 2009-02-16 22:57:13 UTC
No option in BIOS to change AHCI to IDE mode on a HP dv6-1030us.

Comment 5 Raanan 2009-02-17 00:13:24 UTC
(In reply to comment #3)

No option like this on the LG R510.

Comment 6 W.C. Epperson 2009-02-24 01:55:19 UTC
This appears to be the same bug as reported against Ubuntu in
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/301353

Comment 7 Raanan 2009-03-01 12:34:19 UTC
Hi, Sorry but I found the IDE option ion my BIOS, hidden in some screen. 

When setting Hard disk mode to IDE everything works fine. resume is great. 

Does setting it to IDE effect performance ? 

Thanks.

Comment 8 W.C. Epperson 2009-03-01 16:08:29 UTC
Glad you now have resume, Raanan.  You're probably not going to see any actual loss of performance, because even in AHCI mode you're probably ending up with ATA100 setup/performance on the drive/controller.

The fact that IDE mode works IMO indicates that this is indeed a bug in the kernel's handling of AHCI.  It's curious that hibernate/resume works without a hitch.  Apparently power-cycling the controller leaves it in a state resume can handle.  I _think_ that would be the essential difference between the hibernate/suspend scenarios.

Have seen posts indicating that this bug manifests on all of the recent HP Pavilion dv[3-7] laptops, and that recent BIOS updates on some of them make the problem go away.  Am watching for an update for the dv6.  I've been through the very minimal BIOS a number of times and am certain there's no IDE toggle.

Comment 9 W.C. Epperson 2009-04-09 00:42:22 UTC
New bios F11A for the HP dv6-1030us still does not have an IDE toggle, and does not cure the bug.

Comment 10 W.C. Epperson 2009-04-09 02:07:54 UTC
Hmmm.  From /usr/bin/pm-utils-bugreport-info.sh output:

/usr/lib64/pm-utils/sleep.d/99hd-apm-restore.hook suspend suspend: /dev/sdasda: No such file or directory
Advanced Power Management not supported by device sdasda.
SG_IO: bad/missing ATA_16 sense data::  70 00 05 00 00 00 00 0a 00 00 00 00 24 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00
SG_IO: bad/missing ATA_16 sense data::  70 00 05 00 00 00 00 0a 00 00 00 00 24 00 00 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00 00
 HDIO_DRIVE_CMD(identify) failed: Input/output error

But:
# hal-find-by-capability --capability storage
/org/freedesktop/Hal/devices/storage_model_CDDVDW_TS_L633L
/org/freedesktop/Hal/devices/storage_serial_SATA_FUJITSU_MHZ2320K618T8B2V2FV
/org/freedesktop/Hal/devices/storage_serial_Generic__Multi_Card_20071114173400000_0_0
# udi="/org/freedesktop/Hal/devices/storage_serial_SATA_FUJITSU_MHZ2320K618T8B2V2FV";export udi
# hal-get-property --udi "${udi}" --key storage.drive_type
disk
# hal-get-property --udi "${udi}" --key block.device
/dev/sda
# hal-get-property --udi "${udi}" --key block.device | sed 's,^/dev/,,'
sda

Comment 11 W.C. Epperson 2009-05-28 00:34:42 UTC
Fixed for HP dv6-1030us with recent F.21 bios update.  Also see related kernel.org bug http://bugzilla.kernel.org/show_bug.cgi?id=12276

Comment 12 Bug Zapper 2009-11-18 11:05:38 UTC
This message is a reminder that Fedora 10 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 10.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '10'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 10's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 10 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 13 Bug Zapper 2009-12-18 07:54:02 UTC
Fedora 10 changed to end-of-life (EOL) status on 2009-12-17. Fedora 10 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 14 Sebastian Krämer 2010-01-19 19:08:06 UTC
(In reply to comment #13)
> If you can reproduce this bug against a currently maintained version of 
> Fedora please feel free to reopen this bug against that version.

I do experience the bug on an LG R510 with Fedora 12 and opened a bug report for it: #556899