PATCH: Shutdown IDE before powering off.

Nigel Cunningham
2004-01-22T01:40:13Z

[-- Attachment #1.1: Type: text/plain, Size: 301 bytes --]

Hi.

Here's a patch Bernard Blackham posted to the Software Suspend mailing
list, which has fixed data-not-being-properly flushed issues for some
people. (Forwarded with Bernard's permission).

Regards,

Nigel
--
My work on Software Suspend is graciously brought to you by
LinuxFund.org.

[-- Attachment #1.2: ide-shutdown.diff --]
[-- Type: text/x-patch, Size: 718 bytes --]

diff -ruN linux-2.6.0/drivers/ide/ide.c.orig linux-2.6.0/drivers/ide/ide.c
--- linux-2.6.0/drivers/ide/ide.c.orig 2003-12-18 10:58:38.000000000 +0800
+++ linux-2.6.0/drivers/ide/ide.c 2003-12-28 10:18:47.000000000 +0800
@@ -2493,6 +2493,11 @@
return 0;
}

+static void ide_drive_shutdown (struct device * dev)
+{
+ generic_ide_suspend(dev, 5);
+}
+
int ide_register_driver(ide_driver_t *driver)
{
struct list_head list;
@@ -2519,6 +2524,7 @@
driver->gen_driver.name = (char *) driver->name;
driver->gen_driver.bus = &ide_bus_type;
driver->gen_driver.remove = ide_drive_remove;
+ driver->gen_driver.shutdown = ide_drive_shutdown;
return driver_register(&driver->gen_driver);
}

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]