Skip to content
  • Jan Kara's avatar
    cfq-iosched: Fix regression in bonnie++ rewrite performance · 149321a6
    Jan Kara authored
    Commit 9a7f38c4 (cfq-iosched: Convert from jiffies to nanoseconds)
    broke the condition for detecting starved sync IO in
    cfq_completed_request() because rq->start_time remained in jiffies but
    we compared it with nanosecond values. This manifested as a regression
    in bonnie++ rewrite performance because we always ended up considering
    sync IO starved and thus never increased async IO queue depth.
    
    Since rq->start_time is used in a lot of places, converting it to ns
    values would be non-trivial. So just revert the condition in CFQ to use
    comparison with jiffies. This will lead to suboptimal results if
    cfq_fifo_expire[1] will ever come close to 1 jiffie but so far we are
    relatively far from that with the storage used with CFQ (the default
    value is 128 ms).
    
    Fixes: 9a7f38c4
    
    
    Signed-off-by: default avatarJan Kara <jack@suse.cz>
    Signed-off-by: default avatarJens Axboe <axboe@fb.com>
    149321a6