lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Mon, 12 Apr 2010 11:37:22 -0700
From:	Divyesh Shah <dpshah@...gle.com>
To:	Vivek Goyal <vgoyal@...hat.com>
Cc:	jens.axboe@...cle.com, linux-kernel@...r.kernel.org,
	nauman@...gle.com, ctalbott@...gle.com
Subject: Re: [PATCH] blkio: Changes to more io-controller stats patches to 
	address

On Mon, Apr 12, 2010 at 7:30 AM, Vivek Goyal <vgoyal@...hat.com> wrote:
> On Fri, Apr 09, 2010 at 07:35:35PM -0700, Divyesh Shah wrote:
>> review comments.
>>
>> Changelog: (in response to Vivek Goyal's comments)
>> o group blkiocg_update_blkio_group_dequeue_stats() with other DEBUG functions
>> o rename blkiocg_update_set_active_queue_stats() to
>>   blkiocg_update_avg_queue_size_stats()
>> o s/request/io/ in blkiocg_update_request_add_stats() and
>>   blkiocg_update_request_remove_stats()
>> o Call cfq_del_timer() at request dispatch() instead of
>>   blkiocg_update_idle_time_stats()
>>
>> Signed-off-by: Divyesh Shah<dpshah@...gle.com>
>> ---
>>
>
> [..]
>> @@ -2395,11 +2395,7 @@ static int cfq_dispatch_requests(struct request_queue *q, int force)
>>       }
>>
>>       cfq_log_cfqq(cfqd, cfqq, "dispatched a request");
>> -     /*
>> -      * This is needed since we don't exactly match the mod_timer() and
>> -      * del_timer() calls in CFQ.
>> -      */
>> -     blkiocg_update_idle_time_stats(&cfqq->cfqg->blkg);
>> +     cfq_del_timer(cfqd, cfqq);
>
> I am trying to think that why do we need this call here. What is that path
> which does not delete the timer upon receiving request and lets fix that.
>
> One of the possible path when you got the request but still leave the
> timer on is following.
>
> cfq_rq_enqueued()
>        if(request_not_big_enough)
>                leave_timer_on
>                cfq_mark_cfqq_must_dispatch(cfqq);
>
> I guess we need to leave timer on so that if an unplug does not come in, a
> timer expirty will dispatch the request from the queue.
>
> In this case we can probably call here blkiocg_update_idle_time_stats()
> directly. Anyway, that's the right thing to do otherwise our idle time
> stats are little wrong as we got a request from the application and idle
> timer is over. Now this is additional wait time enforced by cfq so that
> lots of small requests are not dispatched to disk.

Good point. Will send an updated version of this patch.

>
> Thanks
> Vivek
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ