Bug59695

Differences between revisions 5 and 63 (spanning 58 versions)
Revision 5 as of 2007-10-30 20:45:49
Size: 5980
Editor: m198-218
Comment:
Revision 63 as of 2010-04-21 19:46:51
Size: 13382
Editor: 188-194-18-172-dynip
Comment: kernel wiki
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
[https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695 Bug 59695 ("default value in power.sh potentially kills laptop disks")] is about not preventing bad behaviour of drives (high Load_Cycle_Count numbers) on (laptop) harddrives. #title Bug #59695 High frequency of load/unload cycles on some hard disks may shorten lifetime

||<tablestyle="float:right; font-size: 0.9em; width:30%; background:#F1F1ED; background-repeat: no-repeat; background-position: 98% 0.5ex; margin: 0 0 1em 1em; padding: 0.5em;"><<TableOfContents>>||

[[https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695|Bug 59695 ("default value in power.sh potentially kills laptop disks")]] is about not preventing bad behaviour of drives (high Load_Cycle_Count numbers) on (laptop) harddrives.
Line 5: Line 9:
There appear to be two issues here: HDD spin down and "Power cycling", whereas the first one has a [https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/132 relative] short default (90 seconds), but the latter one gets the most complains (it's about '''Load_Cycle_Count'''). There appear to be two issues here: HDD spin down and "Power cycling", whereas the first one has a [[https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/132|relative]] short default (60 seconds), but the latter one gets the most complains (it's about '''Load_Cycle_Count''').
Line 9: Line 13:
Note: In sections below relating to how to prevent damage to your hard disk, you should replace $HDD everywhere with your device, e.g. "/dev/sda" or "/dev/hda". If you have several harddrives, you need to change it accordingly and duplicate lines in workarounds. Note 1: In sections below relating to how to prevent damage to your hard disk, you should '''replace $HDD''' everywhere with your device, e.g. "/dev/sda" or "/dev/hda". If you have several harddrives, you need to change it accordingly and duplicate lines in workarounds.

Note 1: The kernel wiki gathers info about drives with too aggressive power saving defaults. A script called "storage-fixup" is also available.
https://ata.wiki.kernel.org/index.php/Known_issues#Drives_which_perform_frequent_head_unloads_under_Linux

== Affected hardware ==
##do not add Kubuntu (and other derivatives) when the same Ubuntu version is already added to the table!
|| Machine || Hard Disk || Ubuntu || Other OS|| Workaround || Notes ||
|| Acer Aspire 1642 WLMi || N/A||Ubuntu=YES||N/A||N/A|| ||
|| Acer Aspire 1662wlm ||Hitachi 5k100 60 GB ||Ubuntu=YES||N/A|| N/A || ||
|| Acer Aspire 3610|| N/A|| Ubuntu=YES || N/A || N/A || ||
|| Acer Extensa 5210|| N/A|| Ubuntu=YES || N/A || N/A || ||
|| Acer Travelmate 4010|| Hitachi IC25N060ATMR04 || Ubuntu=YES || XP=YES || N/A || ||
|| Airis N1212 || N/A || Ubuntu=YES || N/A || N/A || acpi=off ||
|| Apple Powerbook G4 || Seagate Momentus 5400.2 100GB|| Ubuntu=YES || N/A || N/A|| ||
|| Apple MacBook Pro C2D ||Fujitsu 160GB ||Gutsy=YES||MACOSX=YES|| N/A || ||
|| Asus A6Q|| Seagate ST980811AS|| Hardy=YES|| XP=NO || -B 254 || ||
|| Asus 1000HA|| Seagate ST9160310AS|| eeebuntu=YES|| XP=NO || N/A || ||
|| Asus G1S-A1 || Hitachi HTS541616J9SA00||Ubuntu=YES||N/A||N/A|| ||
|| Compaq Evo600N || N/A ||Ubuntu=YES||N/A|| N/A || ||
|| Dell D620 ||N/A||Ubuntu=YES||N/A||N/A|| ||
|| Dell Inspiron 1501 || N/A ||Ubuntu=YES || N/A || N/A || ||
|| Dell Inspiron 1525n|| WDC WD2500BEVS-75UST0 || Hardy=YES || Gutsy=NO,Fedora9=Yes || -B 255 || ||
|| Dell Inspiron 9400 ||Samsung 120GB||Ubuntu=YES||N/A||N/A || ||
|| Dell Inspiron 6400 || Samsung HM120JI||Gutsy=YES||N/A||N/A|| ||
|| Dell Latitude C640 ||Western Digital 40GB ||Gutsy=YES||XP=NO|| N/A || ||
|| Dell Latitude c840 || Hitachi DK23EA-30 || Ubuntu=YES || N/A || N/A || ||
|| Dell Latitude D630|| N/A || Ubuntu=YES || N/A || -B 254 || ||
|| Dell Vostro 1000 || Seagate ST9120822AS || Ubuntu=YES || N/A || N/A|| ||
|| Dell Vostro 1400 || N/A || Ubuntu=YES || N/A || -B 254 || ||
|| Dell Vostro 1500 || Seagate ST9160823AS || Gutsy=YES || XP=YES|| || ||
|| Dell XPS M1330|| N/A || Hardy=YES || N/A || -B 254 || ||
|| Dell XPS M1330 || Western Digital WD1200BEVS-75UST0 || Hardy=YES || N/A || -B 255 || ||
|| Dell XPS M1330 || WDC WD2500BEVS-75UST0 || Hardy=YES || N/A || -B 254 || XP=YES ||
|| Dell XPS 1530 || N/A || Ubuntu=YES || N/A || N/A || ||
|| Gateway MT6451|| Western Digital WD1200VE || Gutsy=YES || N/A || N/A || ||
|| HP nx6325 || Samsung HM250JI || Hardy=YES|| Vista=NO || -B 254 || ||
|| HP nx6325 || Fujitsu MHV2060BH || Gutsy=YES || N/A || -B 255 || ||
|| HP nx6325 ||Hitachi HTS541080G9SA00||Ubuntu=YES||N/A||N/A|| ||
|| HP nc8430|| Samsung 250GB || Hardy=YES || N/A || N/A || ||
|| HP nw9440|| Seagate ST910021AS ||Edgy=YES || N/A || N/A || ||
|| HP dv6500 || Western Digital WD800BEVS || Ubuntu=YES || N/A || -B 255|| ||
|| HP dv6602au|| N/A || Ubuntu=YES || N/A || N/A || ||
|| HP compaq 6820s || Hitachi HTS541616J9SA00 || Hardy=YES || Vista=NO || -B 255 || ||
|| HP dv6614tx || N/A|| Hardy=YES || N/A || -B 255 || ||
|| MSI Wind U100 || Western Digital WD800BEVS || Hardy=YES || N/A || -B 254 || ||
|| Thinkpad Z60m|| Hitachi HTS541080G9SA00 || Gutsy=YES || N/A || N/A || ||
|| Thinkpad R52 || Hitachi HTS541060G9AT00||Gutsy=YES||N/A|| -B 192||||
|| Thinkpad 600E|| Hitachi DK239A-65B||Ubuntu=YES|| N/A || N/A ||||
|| Thinkpad Z61t || Toshiba MK1032GSX ||Gutsy=YES||N/A||N/A|| ||
|| Thinkpad T60 || Hitachi HTS541080G9SA00 ||Gutsy=YES||N/A||N/A|| ||
|| Thinkpad T23 || Seagate ST92811A || Ubuntu=YES || N/A || N/A || ||
|| Thinkpad R50e || Hitachi HTS541060G9AT00 || Feisty=YES || N/A || N/A|| ||
|| Thinkpad T42 || Samsung HD || Ubuntu=YES || N/A || -B 254 || ||
|| Thinkpad R61|| Seagate ST9160821AS || Hardy=YES || N/A || N/A || ||
|| Toshiba A100 || Toshiba MK1234GSX ||Ubuntu=YES ||N/A||-B 254|| On battery power ||
|| Toshiba P205 || Fujitsu MHW2120BH || Gutsy=YES || N/A || -B 255 || ||
|| VIA Epia EX10000EG || Western Digital WD10EACS ||Feisty=YES||N/A||N/A|| ||
|| N/A || Hitachi HTS541616J9SA00 || Ubuntu=YES || Vista=YES || N/A || ||
|| N/A || Hitachi HTS541210H9SA00 || Ubuntu=YES || N/A || N/A || ||
|| N/A || Hitachi HTS541010G9SA00 ||Ubuntu=YES|| N/A || N/A ||||
|| N/A || Seagate ST9100824AS || Ubuntu=YES|| Vista=YES || XP=YES|| ||
|| N/A || Seagate ST9160821AS ||Ubuntu=YES||N/A|| N/A || ||
|| N/A || Seagate ST9120822AS || Hardy=YES || XP=NO || N/A || ||
|| N/A || Travelstar 7K100 60GB ||Ubuntu=YES||N/A|| N/A || ||
|| N/A || Toshiba MK8037GSX ||Ubuntu=YES||Fedora=NO||OpenSUSE=NO|| ||
|| N/A || Toshiba MK3006GAL || Ubuntu=YES || N/A || -B 254 || ||
|| N/A || WDC WD5000AACS-00ZUB0 || N/A || N/A || N/A || ||
Line 20: Line 92:
It appears to be the official policy of Ubuntu (citation/disagreement, anyone?) that by default, Ubuntu should not adjust any power management settings of the harddisk. Unfortunately, this policy has two negative effects: It leaves quite a few people with broken hard drives that would otherwise not be broken, and it quite simply makes people who love Ubuntu feel neglected. This issue has been going on a long time. It [[http://mjg59.livejournal.com/77672.html|appears to be]] the official policy of Ubuntu that by default, Ubuntu should not adjust any power management settings of the harddisk. Unfortunately, this policy has two negative effects: It leaves quite a few people with broken hard drives that would otherwise not be broken, and it quite simply makes people who love Ubuntu feel neglected. This issue has been going on a long time.
Line 24: Line 96:
In /etc/acpi/power.sh, laptop mode gets handled. If it gets enabled, hdparm is called with "-B 1", if it gets disabled with "-B 255".
(Beca
use "-B 254" seems to work better for most people (and won't do harm where -B 255 also works), this should get changed AFAICS.) (Seconded)
In /etc/acpi/power.sh, laptop mode gets handled. If it gets enabled, hdparm is called with "-B 1", if it gets disabled with "-B 254". 254 is the least aggressive setting. 255 is off, but does not work for all disks.
Line 28: Line 99:
This results in spinning down the harddrive after 12*5=90 seconds of inactivitiy. This does not influence '''Load_Cycle_Count''' however. This results in spinning down the harddrive after 12*5=60 seconds of inactivitiy. This does not influence '''Load_Cycle_Count''' however.
Line 31: Line 102:
[https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/47 "/etc/apm" is not supposed to be used], but if it would get, it sets spindown to 90 seconds - but does not affect the general APM setting (hdparm -B).
(there's a bug, which also used "power_conserve" here, if on_ac_power return "don't know" - [https://bugs.launchpad.net/bugs/156893 bug 156893])
[[https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/47|"/etc/apm" is not supposed to be used]], but if it would get, it sets spindown to 60 seconds - but does not affect the general APM setting (hdparm -B).
(there's a bug, which also used "power_conserve" here, if on_ac_power return "don't know" - [[https://bugs.launchpad.net/bugs/156893|bug 156893]])
Line 35: Line 106:
[https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/78 Blue has created a script], which acts as a wrapper around hdparm and logs, where it's called (including its arguments) [[https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/78|Blue has created a script]], which acts as a wrapper around hdparm and logs, where it's called (including its arguments)
Line 41: Line 112:
Various workarounds have been provided. Various workarounds have been provided that involve adjusting or even turning off power-management of the hard drive. Please keep in mind that this can do more harm than good, so only apply them if you exactly understand what you are doing.
Line 48: Line 119:
=== Force hdparm values in acpi hooks ===
Gilles posted the following workaround:
Create a file called 99-fix-park.sh (keep the '99-' and the '.sh', but you can name the file as you like otherwise) with the following two lines:
 * http://ubuntuforums.org/showpost.php?p=3675960&postcount=26
  * UbuntuDemon I brought some of these proposed fixes together in the hope that is easier to apply for users who are suffering from this problem

=== Force hdparm values in pm-utils hooks ===
Edit /etc/hdparm.conf and put there:
Line 52: Line 125:
 #!/bin/sh
 hdparm -B 255 $HDD
$HDD {
    apm = 254
}
Line 55: Line 129:
and copy it to the following directories: /etc/acpi/suspend.d/, /etc/acpi/resume.d/ and /etc/acpi/start.d/
(https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/10)

Create executable file /etc/pm/sleep.d/99fixpark with the following lines:
{{{
#!/bin/sh
case "$1" in
        resume|thaw)
                hdparm -B 254 $HDD >/dev/null 2>&1
                ;;
        *)
                ;;
esac
}}}
 * https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/244839
 * https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/10
Line 62: Line 148:
Here's another more verbose setup of laptop-mode-tools from Michael: https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/63 Here's another more verbose setup of laptop-mode-tools from Michael: https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/63

An easy, step-by-step walkthrough for a situation-sensitive solution (AC/batteries/heat) can be found here:
http://vale.homelinux.net/wordpress/?p=199
Line 65: Line 154:
 * Disabling disc APM, e.g. in /etc/acpi/power.sh (laptop_mode_disable) should use 254 instead of 255, as quite some users report that 255 ("off") does nothing, but 254 ("least aggressive") works.  * FIXED: Converted most remaining 255's to 254s, and added an explanation.
Line 72: Line 161:
ubuntu_demon has put together a list of TODOs: https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/81 ubuntu_demon has put together a list of TODOs: https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/81
Line 77: Line 166:

Could you kindly explain how to diagnose whether the settings on a system, at a point of time, are correct. I have followed the instructions but still find the load cycle count increasing. How do I diagnose the problem?

I think the 99-fix-park.sh scripts should be executable. If this is the case then I think we should add a note to the workaround.
== Useful Links ==

 * https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695 (The bug itself)
 * http://ubuntuforums.org/showpost.php?p=3675960&postcount=26 (The ugly fix and How-to for diagnosing the problem)
 * http://mjg59.livejournal.com/77672.html (Ubuntu dev position)
 * http://www.linux-hero.com/rant/explanation-ubuntu-hard-drive-wear-and-tear (Linux Hero comments about the issue)
 * http://www.linux-hero.com/rant/ubuntu-hard-drive-explosions (Linux Hero comments about the issue)
 * http://en.opensuse.org/Disk_Power_Management (Only applies for SuSe - yes SuSe it's affected)
 * http://www.thinkwiki.org/wiki/Problem_with_hard_drive_clicking (Thinkpad users affected)
 * http://www.lesswatts.org/tips/disks.php (LessWatts tips for better power management)
 * http://usenix.org/events/fast07/tech/schroeder.html (Technical paper about hard disks failures)
 * http://usenix.org/events/fast07/tech/pinheiro.html (Technical paper about hard disks failures)
 * http://forum.notebookreview.com/showthread.php?t=168425 (For the ones that still believe this is Linux only... On Windows too.. and most amazing the solution it's something like the ugly fix)
 *

Bug 59695 ("default value in power.sh potentially kills laptop disks") is about not preventing bad behaviour of drives (high Load_Cycle_Count numbers) on (laptop) harddrives.

Because the bug report has 150 comments already, I've tried to summarize it here.

There appear to be two issues here: HDD spin down and "Power cycling", whereas the first one has a relative short default (60 seconds), but the latter one gets the most complains (it's about Load_Cycle_Count).

The disk Load_Cycle_Count issue appears to be caused by a combination of two problems -- The first is overly-aggressive power management from what might be considered buggy hardware. The second is that Ubuntu appears to be touching the hard drive on a regular basis for one reason or another.

Note 1: In sections below relating to how to prevent damage to your hard disk, you should replace $HDD everywhere with your device, e.g. "/dev/sda" or "/dev/hda". If you have several harddrives, you need to change it accordingly and duplicate lines in workarounds.

Note 1: The kernel wiki gathers info about drives with too aggressive power saving defaults. A script called "storage-fixup" is also available. https://ata.wiki.kernel.org/index.php/Known_issues#Drives_which_perform_frequent_head_unloads_under_Linux

Affected hardware

Machine

Hard Disk

Ubuntu

Other OS

Workaround

Notes

Acer Aspire 1642 WLMi

N/A

Ubuntu=YES

N/A

N/A

Acer Aspire 1662wlm

Hitachi 5k100 60 GB

Ubuntu=YES

N/A

N/A

Acer Aspire 3610

N/A

Ubuntu=YES

N/A

N/A

Acer Extensa 5210

N/A

Ubuntu=YES

N/A

N/A

Acer Travelmate 4010

Hitachi IC25N060ATMR04

Ubuntu=YES

XP=YES

N/A

Airis N1212

N/A

Ubuntu=YES

N/A

N/A

acpi=off

Apple Powerbook G4

Seagate Momentus 5400.2 100GB

Ubuntu=YES

N/A

N/A

Apple MacBook Pro C2D

Fujitsu 160GB

Gutsy=YES

MACOSX=YES

N/A

Asus A6Q

Seagate ST980811AS

Hardy=YES

XP=NO

-B 254

Asus 1000HA

Seagate ST9160310AS

eeebuntu=YES

XP=NO

N/A

Asus G1S-A1

Hitachi HTS541616J9SA00

Ubuntu=YES

N/A

N/A

Compaq Evo600N

N/A

Ubuntu=YES

N/A

N/A

Dell D620

N/A

Ubuntu=YES

N/A

N/A

Dell Inspiron 1501

N/A

Ubuntu=YES

N/A

N/A

Dell Inspiron 1525n

WDC WD2500BEVS-75UST0

Hardy=YES

Gutsy=NO,Fedora9=Yes

-B 255

Dell Inspiron 9400

Samsung 120GB

Ubuntu=YES

N/A

N/A

Dell Inspiron 6400

Samsung HM120JI

Gutsy=YES

N/A

N/A

Dell Latitude C640

Western Digital 40GB

Gutsy=YES

XP=NO

N/A

Dell Latitude c840

Hitachi DK23EA-30

Ubuntu=YES

N/A

N/A

Dell Latitude D630

N/A

Ubuntu=YES

N/A

-B 254

Dell Vostro 1000

Seagate ST9120822AS

Ubuntu=YES

N/A

N/A

Dell Vostro 1400

N/A

Ubuntu=YES

N/A

-B 254

Dell Vostro 1500

Seagate ST9160823AS

Gutsy=YES

XP=YES

Dell XPS M1330

N/A

Hardy=YES

N/A

-B 254

Dell XPS M1330

Western Digital WD1200BEVS-75UST0

Hardy=YES

N/A

-B 255

Dell XPS M1330

WDC WD2500BEVS-75UST0

Hardy=YES

N/A

-B 254

XP=YES

Dell XPS 1530

N/A

Ubuntu=YES

N/A

N/A

Gateway MT6451

Western Digital WD1200VE

Gutsy=YES

N/A

N/A

HP nx6325

Samsung HM250JI

Hardy=YES

Vista=NO

-B 254

HP nx6325

Fujitsu MHV2060BH

Gutsy=YES

N/A

-B 255

HP nx6325

Hitachi HTS541080G9SA00

Ubuntu=YES

N/A

N/A

HP nc8430

Samsung 250GB

Hardy=YES

N/A

N/A

HP nw9440

Seagate ST910021AS

Edgy=YES

N/A

N/A

HP dv6500

Western Digital WD800BEVS

Ubuntu=YES

N/A

-B 255

HP dv6602au

N/A

Ubuntu=YES

N/A

N/A

HP compaq 6820s

Hitachi HTS541616J9SA00

Hardy=YES

Vista=NO

-B 255

HP dv6614tx

N/A

Hardy=YES

N/A

-B 255

MSI Wind U100

Western Digital WD800BEVS

Hardy=YES

N/A

-B 254

Thinkpad Z60m

Hitachi HTS541080G9SA00

Gutsy=YES

N/A

N/A

Thinkpad R52

Hitachi HTS541060G9AT00

Gutsy=YES

N/A

-B 192

Thinkpad 600E

Hitachi DK239A-65B

Ubuntu=YES

N/A

N/A

Thinkpad Z61t

Toshiba MK1032GSX

Gutsy=YES

N/A

N/A

Thinkpad T60

Hitachi HTS541080G9SA00

Gutsy=YES

N/A

N/A

Thinkpad T23

Seagate ST92811A

Ubuntu=YES

N/A

N/A

Thinkpad R50e

Hitachi HTS541060G9AT00

Feisty=YES

N/A

N/A

Thinkpad T42

Samsung HD

Ubuntu=YES

N/A

-B 254

Thinkpad R61

Seagate ST9160821AS

Hardy=YES

N/A

N/A

Toshiba A100

Toshiba MK1234GSX

Ubuntu=YES

N/A

-B 254

On battery power

Toshiba P205

Fujitsu MHW2120BH

Gutsy=YES

N/A

-B 255

VIA Epia EX10000EG

Western Digital WD10EACS

Feisty=YES

N/A

N/A

N/A

Hitachi HTS541616J9SA00

Ubuntu=YES

Vista=YES

N/A

N/A

Hitachi HTS541210H9SA00

Ubuntu=YES

N/A

N/A

N/A

Hitachi HTS541010G9SA00

Ubuntu=YES

N/A

N/A

N/A

Seagate ST9100824AS

Ubuntu=YES

Vista=YES

XP=YES

N/A

Seagate ST9160821AS

Ubuntu=YES

N/A

N/A

N/A

Seagate ST9120822AS

Hardy=YES

XP=NO

N/A

N/A

Travelstar 7K100 60GB

Ubuntu=YES

N/A

N/A

N/A

Toshiba MK8037GSX

Ubuntu=YES

Fedora=NO

OpenSUSE=NO

N/A

Toshiba MK3006GAL

Ubuntu=YES

N/A

-B 254

N/A

WDC WD5000AACS-00ZUB0

N/A

N/A

N/A

Check

You can check the current value of Load_Cycle_Count of your harddrive(s) using:

  • sudo smartctl -a $HDD | grep Load_Cycle_Count

(You need the smartmontools package for this. I also had to enable SMART monitoring for my drives using sudo smartctl -s on $HDD)

The values for this differ a lot (e.g. it's 0 on my desktop), but it goes up to > 600.000 for others, depending on the lifetime. TODO: add a section with sample values (including the value of Power_On_Hours).

What Ubuntu does

It appears to be the official policy of Ubuntu that by default, Ubuntu should not adjust any power management settings of the harddisk. Unfortunately, this policy has two negative effects: It leaves quite a few people with broken hard drives that would otherwise not be broken, and it quite simply makes people who love Ubuntu feel neglected. This issue has been going on a long time.

The problem appears to be that some manufacturers' defaults are too aggressive and that Ubuntu might cause too many unbuffered disk accesses -- the combination of which can cause over a thousand parks a day on some systems.

In /etc/acpi/power.sh, laptop mode gets handled. If it gets enabled, hdparm is called with "-B 1", if it gets disabled with "-B 254". 254 is the least aggressive setting. 255 is off, but does not work for all disks.

In power.sh also the spindown timeout gets set, according to SPINDOWN_TIME from /etc/default/acpi-support (default: 12). This results in spinning down the harddrive after 12*5=60 seconds of inactivitiy. This does not influence Load_Cycle_Count however.

apm

"/etc/apm" is not supposed to be used, but if it would get, it sets spindown to 60 seconds - but does not affect the general APM setting (hdparm -B). (there's a bug, which also used "power_conserve" here, if on_ac_power return "don't know" - bug 156893)

Debug

Blue has created a script, which acts as a wrapper around hdparm and logs, where it's called (including its arguments) From his report, it appears that hdparm always gets called through apm or the init script (the logfile excerpt appears to be from booting).

TODO: provide said helper script, allowing others to help to debug this.

Workaround

Various workarounds have been provided that involve adjusting or even turning off power-management of the hard drive. Please keep in mind that this can do more harm than good, so only apply them if you exactly understand what you are doing.

Try hdparm -B 255 $HDD or hdparm -B 254 $HDD. (255 is supposed to disable APM, but it does not work for some; so 254 sets it to the less aggressive setting)

There are different methods to keep this setting after reboot/resume. Your mileage may vary. There may be more workarounds in the bug report, but essentially, all are using "hdparm -B" to change the apm handling of the harddrive.

Force hdparm values in pm-utils hooks

Edit /etc/hdparm.conf and put there:

$HDD {
    apm = 254
}

Create executable file /etc/pm/sleep.d/99fixpark with the following lines:

case "$1" in
        resume|thaw)
                hdparm -B 254 $HDD >/dev/null 2>&1
                ;;
        *)
                ;;
esac

laptop-mode-tools

Don posted another workaround: Install laptop-mode-tools and set CONTROL_HD_POWERMGMT=1 in /etc/laptop-mode/laptop-mode.conf (https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/19) Here's another more verbose setup of laptop-mode-tools from Michael: https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/63

An easy, step-by-step walkthrough for a situation-sensitive solution (AC/batteries/heat) can be found here: http://vale.homelinux.net/wordpress/?p=199

Proposed fixes

  • FIXED: Converted most remaining 255's to 254s, and added an explanation.

Conclusion

This bug report has attracted a lot of concerned Ubuntu users and it seems quite clear from the user feedback, that other operating systems/distributions handle this better. However, the workaround should be quite simple and this wiki page is a first attempt, to fix this for the better.

Misc

ubuntu_demon has put together a list of TODOs: https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/81

Comments

Please leave any comments/additions here. You may also edit the page directly, but please try to be clear and helpful. The problem has been confirmed and we know that it's a critical thing - please do not repeat that the bug status should be critical.

Could you kindly explain how to diagnose whether the settings on a system, at a point of time, are correct. I have followed the instructions but still find the load cycle count increasing. How do I diagnose the problem?

I think the 99-fix-park.sh scripts should be executable. If this is the case then I think we should add a note to the workaround.

DanielHahler/Bug59695 (last edited 2010-04-21 19:46:51 by 188-194-18-172-dynip)