lkml.org 
[lkml]   [2009]   [Oct]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    SubjectRe: Do not overload dispatch queue (Was: Re: IO scheduler based IO controller V10)
    From
    Date
    Wrong one.  Let's try the post java version instead.

    8e29675: "implement slower async initiate and queue ramp up" introduced a
    throughput regression for concurrent reader vs writer. Adjusting async delay
    to use cfq_slice_async restored throughput.

    Signed-off-by: Mike Galbraith <efault@gmx.de>

    ---
    block/cfq-iosched.c | 7 ++++---
    1 file changed, 4 insertions(+), 3 deletions(-)

    Index: linux-2.6/block/cfq-iosched.c
    ===================================================================
    --- linux-2.6.orig/block/cfq-iosched.c
    +++ linux-2.6/block/cfq-iosched.c
    @@ -1343,17 +1343,18 @@ static int cfq_dispatch_requests(struct
    */
    if (!cfq_cfqq_sync(cfqq) && cfqd->cfq_desktop) {
    unsigned long last_sync = jiffies - cfqd->last_end_sync_rq;
    + unsigned long slice = cfq_slice_async;
    unsigned int depth;

    /*
    * must wait a bit longer
    */
    - if (last_sync < cfq_slice_sync) {
    - cfq_schedule_dispatch(cfqd, cfq_slice_sync - last_sync);
    + if (last_sync < slice) {
    + cfq_schedule_dispatch(cfqd, slice - last_sync);
    return 0;
    }

    - depth = last_sync / cfq_slice_sync;
    + depth = last_sync / slice;
    if (depth < max_dispatch)
    max_dispatch = depth;
    }



    \
     
     \ /
      Last update: 2009-10-04 13:39    [W:0.070 / U:0.248 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site