Re: FYI: My current suspend bigdiff

Pavel Machek
2003-11-30T17:17:49Z

Hi!

> >Well... it could work with scsi. You can try it, but be carefull. [If
> >it goes wrong it might eat your data.]
>
> Thats why I use xfs on my main system to test... And I tried with libata
> and it won't work as it complains that the "katad" process cannot be
> stopped, so swsusp immediatly comes back.

I do not know how much more support is needed to allow powermanagment
for libata, but this one should be easy...

[Hmm, I hope it compiles, I certainly do not use libata for now.]
Pavel

--- clean/drivers/scsi/libata-core.c 2003-11-28 17:06:39.000000000 +0100
+++ linux/drivers/scsi/libata-core.c 2003-11-30 18:16:02.000000000 +0100
@@ -34,6 +34,7 @@
#include <linux/delay.h>
#include <linux/timer.h>
#include <linux/interrupt.h>
+#include <linux/suspend.h>
#include <scsi/scsi.h>
#include "scsi.h"
#include "hosts.h"
@@ -2564,6 +2565,8 @@

while (1) {
cond_resched();
+ if (current->flags & PF_FREEZE)
+ refrigerator(PF_IOTHREAD);

timeout = ata_thread_iter(ap);

--
When do you have a heart between your knees?
[Johanka's followup: and *two* hearts?]