Re: [git patches] libata hibernation fixes

From: Robert Hancock
Date: Wed Nov 05 2008 - 09:38:09 EST


Elias Oltmanns wrote:
Tejun Heo <tj@xxxxxxxxxx> wrote:
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.

In the situations I mentioned above, the drive definitely is not
performing an emergency unload. On the other hand, the BIOS hasn't
handed over control to the OS at this stage, so it would make sense if
the BIOS behaved differently once the OS has taken over. BTW, what
exactly will happen if I install an ancient OS like DOS on my
(reasonably) modern laptop? I've never tried that but I don't see how
the OS would even have a chance to spin the disk down befor power off
since there is no way for the user to initiate power off in the OS. Is
that anything to do with ACPI support?

The BIOS is in control of the power-down when the power button is pressed when not in ACPI mode (unless it's held down to force a power off), it can install some SMI handlers to trigger the spindown before it turns off the machine. On mine it seems like that's exactly what it does (i.e. if you hit power in the GRUB menu it spins down the drive first).

When an ACPI power down occurs however, it would likely be best if it stayed out of the way..
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/