Re: swsusp: don't eat ide disks

Pavel Machek (pavel@ucw.cz)
Sun, 3 Nov 2002 21:12:51 +0100


Hi!

> > Hrm... I don't think so Alan. The PM ordering is bus driven,
> > so actual bus binding of the disk is it's controller, not
> > the request queue which is the functional binding. It's up to
> > the disk driver to shut down processing of the request queue.
>
> That requires code in every driver. Duplicated, hard to write, likely to
> be racey code. Thats bad.
>
> The bigger picture really should be
>
> ACPI etc "I want to suspend to disk"
>
> PM layer
> Suspend the non I/O tasks (btw reminds me - eh tasks and
> all workqueues may be I/O tasks at times)
> Complete all the block I/O queues
> Throw out the pages we can evict

...DMA from disk may be still running here...

> Write suspend image
>
> Jump to PM layer "power off" logic
>
> If you do it that way up then no drivers need to be hacked about.

...and at resume you find out that your memory is not consistent
because DMA was still running when you were doing copy.
Pavel

-- 
Worst form of spam? Adding advertisment signatures ala sourceforge.net.
What goes next? Inserting advertisment *into* email?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/