lkml.org 
[lkml]   [2015]   [May]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/5] sched: always use blk_schedule_flush_plug in io_schedule_out
On Fri, May 01, 2015 at 07:14:10PM +0200, Christoph Hellwig wrote:
> On Thu, Apr 30, 2015 at 10:45:15AM -0700, Shaohua Li wrote:
> > long __sched io_schedule_timeout(long timeout)
> > {
> > - int old_iowait = current->in_iowait;
> > struct rq *rq;
> > long ret;
> >
> > current->in_iowait = 1;
> > - if (old_iowait)
> > - blk_schedule_flush_plug(current);
> > - else
> > - blk_flush_plug(current);
> > + blk_schedule_flush_plug(current);
> >
> > delayacct_blkio_start();
> > rq = raw_rq();
> > atomic_inc(&rq->nr_iowait);
> > ret = schedule_timeout(timeout);
> > - current->in_iowait = old_iowait;
> > + current->in_iowait = 0;
>
> Always clearing ->in_iowait is behavior change not mentioned in the
> changelog. Even if it was intentional it would better be done in
> a separate patch.

9cff8adeaa34b5d28 changes to use blk_schedule_flush_plug for recursive
io_schedule with old_iowait for recurse detection. Since we always use
blk_schedule_flush_plug now, I thought we don't need the recurse
detection any more. I agree it's better to do it in another patch.

Thanks,
Shaohua


\
 
 \ /
  Last update: 2015-05-01 20:41    [W:0.123 / U:3.588 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site