Re: RAID1 might_sleep() warning on 3.19-rc7

Peter Zijlstra
2015-02-13T14:48:19Z

On Fri, Feb 13, 2015 at 11:27:46AM +0100, Peter Zijlstra wrote:

> > I've moved blk_flush_plug to the beginning of the function.
>
> > I wondered if it really make sense to call blk_flush_plug with nr_iowait
> > elevated and delayacct_blkio active. blk_flush_plug() could call schedule()
> > for non-"io" reasons and maybe that could upset stuff???
>
> Yeah, good question that. Lemme ponder that a bit.

Yes, I thikn your version makes most sense as, you say, even regular
schedule() call nested in my version would go towards blk delayacct --
and I doubt that was the intent; even though the current kernel works
that way.

I'll move the now rudimentary io_schedule() into sched.h as an inline.