Re: [RFC v2 PATCH 2/4] block: add queue runtime pm callbacks

From: Alan Stern
Date: Mon May 21 2012 - 14:32:57 EST


On Mon, 21 May 2012, Lin Ming wrote:

> On Mon, May 21, 2012 at 11:00 PM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
> > On Mon, 21 May 2012, Lin Ming wrote:
> >
> >> On Fri, May 18, 2012 at 2:29 AM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote:
> >> [snip]
> >> > I may have left some parts out from this brief description.  Hopefully
> >> > you'll be able to figure out the general idea and get it to work.
> >>
> >> All journal threads and flusher thread of the disk need to be freezed
> >> before suspend and thaw after resume.
> >
> > Why?  If any of those threads needs to write something to the disk
> > while the disk is suspended, the disk will simply be resumed.
>
> When tested the patches, I found that kjournald and flusher thread
> frequently resume the disk.
>
> I'm not familiar with journal.
> Are the journal threads still need to be in active state when the disk
> is already suspended?

I don't know the answers. Maybe Jens can tell us.

Ideally, a rotating disk wouldn't be suspended unless all the dirty
blocks were already flushed and the journal was up-to-date. For an
SSD, frequently suspending and resuming doesn't matter quite so much.
This may come down to a matter of setting the right value for the
autosuspend timeout.

Alan Stern

--
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/