From: Tejun Heo <tj@kernel.org>
To: Elias Oltmanns <eo@nebensachen.de>
Cc: Robert Hancock <hancockr@shaw.ca>, Mark Lord <liml@rtr.ca>,
"Rafael J. Wysocki" <rjw@sisk.pl>,
Linus Torvalds <torvalds@linux-foundation.org>,
Jeff Garzik <jeff@garzik.org>,
Andrew Morton <akpm@linux-foundation.org>,
linux-ide@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>
Subject: Re: [git patches] libata hibernation fixes
Date: Wed, 05 Nov 2008 11:30:22 +0900 [thread overview]
Message-ID: <4911053E.9070103@kernel.org> (raw)
In-Reply-To: <87abcfdmpp.fsf@denkblock.local>
Elias Oltmanns wrote:
>> On these systems, not spinning the disk down is fine because the BIOS
>> does it. However this would cause problems on systems where the BIOS
>> doesn't do so as it will cause an emergency unload on power-down.
>
> Ah, but do BIOSes just cut power without spinning disks down first?
> Pressing the power button on my laptop either at the prompt for the HD
> password or in GRUB's menu spins the disk down properly. Isn't that the
> BIOS doing its job?
Drives don't like emergency unloads but they are designed to take
some. BIOS diddling with the storage controller behind OS's back
causes a lot of trouble. On certain machines, the BIOS expects the
storage controller to be in certain state on suspend and tries to
issue commands assuming that particular state triggering a minute long
CPU burn before finally entering suspend. It just isn't worth it and
if BIOS wants to do it, it should be smart and don't do it if the
system is powering off in orderly manner (that is, driven by OS).
The double spindown happens due to combination of weirdities in the
BIOS and drive firmware. Some drives like to spin up on FLUSH while
spun down even when the buffer is empty. Others like to spin up on
STANDBY_IMMEDIATE recevied while spun down and then spin back down.
My guess is HP added BIOS spin down feature to BIOS and tested with
certain flavors of drives and then later found out that other drives
suffer from the new BIOS behavior and patched up their preloaded
windows driver. It's a messy case requiring a messy workaround.
Thanks.
--
tejun
next prev parent reply other threads:[~2008-11-05 2:30 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <fa.Ast7pgG6P20u1PcyOsfgzoaX5YA@ifi.uio.no>
[not found] ` <fa.1+JQHm7yjIiZJxAzR0eBPn39a9M@ifi.uio.no>
[not found] ` <fa.+bfipgmFkcLlZMtnFL0Ks2zyN8Q@ifi.uio.no>
[not found] ` <fa.Iek0GbTZLinM2sOi6+b7bsCgnfs@ifi.uio.no>
2008-11-05 0:01 ` [git patches] libata hibernation fixes Robert Hancock
2008-11-05 0:45 ` Elias Oltmanns
2008-11-05 2:30 ` Tejun Heo [this message]
2008-11-05 9:31 ` Elias Oltmanns
2008-11-05 9:37 ` Tejun Heo
2008-11-05 14:37 ` Robert Hancock
[not found] ` <fa.8GbzH83c2CAI53n9dyzVOFugmoc@ifi.uio.no>
[not found] ` <fa.hGdpNHQGmXAR19JiGuHxSr9N9CA@ifi.uio.no>
2008-11-05 0:20 ` Robert Hancock
2008-11-05 2:10 ` Mark Lord
2008-11-05 2:24 ` Robert Hancock
2009-01-27 7:31 Jeff Garzik
-- strict thread matches above, loose matches on Subject: below --
2008-11-04 6:27 Jeff Garzik
2008-11-04 16:29 ` Linus Torvalds
2008-11-04 16:53 ` Rafael J. Wysocki
2008-11-04 16:59 ` Mark Lord
2008-11-04 17:07 ` Rafael J. Wysocki
2008-11-05 2:17 ` Tejun Heo
2008-11-04 20:30 ` Pavel Machek
2008-11-04 21:08 ` Rafael J. Wysocki
2008-11-04 21:12 ` Linus Torvalds
2008-11-05 2:23 ` Tejun Heo
2008-11-05 2:42 ` Tejun Heo
2008-11-10 8:52 ` Tejun Heo
2009-01-02 2:36 ` Tejun Heo
2009-01-05 8:34 ` Jeff Garzik
2009-01-11 5:44 ` Jeff Garzik
2009-01-11 12:43 ` Rafael J. Wysocki
2009-01-18 10:20 ` Frans Pop
2009-01-18 20:25 ` Rafael J. Wysocki
2009-01-18 20:39 ` Jeff Garzik
2009-01-18 20:59 ` Frans Pop
2009-01-18 22:52 ` Rafael J. Wysocki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4911053E.9070103@kernel.org \
--to=tj@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=eo@nebensachen.de \
--cc=hancockr@shaw.ca \
--cc=jeff@garzik.org \
--cc=liml@rtr.ca \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rjw@sisk.pl \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).