2011-03-07 01:50:31

by Gui, Jianfeng/归 剑峰

[permalink] [raw]
Subject: Re: [PATCH] cfq-iosched: Fix update_vdisktime logic

Vivek Goyal wrote:
> On Tue, Jan 25, 2011 at 11:27:19AM +0800, Gui Jianfeng wrote:
>> The update_vdisktime logic is broken since commit b54ce60eb7f61f8e314b8b241b0469eda3bb1d42,
>> st->min_vdisktime never makes a progress. Fix it.
>>
>> Thanks Vivek for pointing it out.
>>
>> Signed-off-by: Gui Jianfeng <[email protected]>
>
> Thanks Gui. Looks good to me.
>
> Acked-by: Vivek Goyal <[email protected]>

Jens, Would you pick up this fix?

Thanks,
Gui

>
> Thanks
> Vivek
>
>> ---
>> block/cfq-iosched.c | 6 ++----
>> 1 files changed, 2 insertions(+), 4 deletions(-)
>>
>> diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c
>> index f083bda..8c28f56 100644
>> --- a/block/cfq-iosched.c
>> +++ b/block/cfq-iosched.c
>> @@ -558,15 +558,13 @@ static inline u64 min_vdisktime(u64 min_vdisktime, u64 vdisktime)
>>
>> static void update_min_vdisktime(struct cfq_rb_root *st)
>> {
>> - u64 vdisktime = st->min_vdisktime;
>> struct cfq_group *cfqg;
>>
>> if (st->left) {
>> cfqg = rb_entry_cfqg(st->left);
>> - vdisktime = min_vdisktime(vdisktime, cfqg->vdisktime);
>> + st->min_vdisktime = max_vdisktime(st->min_vdisktime,
>> + cfqg->vdisktime);
>> }
>> -
>> - st->min_vdisktime = max_vdisktime(st->min_vdisktime, vdisktime);
>> }
>>
>> /*
>> --
>> 1.7.1
>


2011-03-07 08:28:09

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] cfq-iosched: Fix update_vdisktime logic

On 2011-03-07 02:35, Gui Jianfeng wrote:
> Vivek Goyal wrote:
>> On Tue, Jan 25, 2011 at 11:27:19AM +0800, Gui Jianfeng wrote:
>>> The update_vdisktime logic is broken since commit b54ce60eb7f61f8e314b8b241b0469eda3bb1d42,
>>> st->min_vdisktime never makes a progress. Fix it.
>>>
>>> Thanks Vivek for pointing it out.
>>>
>>> Signed-off-by: Gui Jianfeng <[email protected]>
>>
>> Thanks Gui. Looks good to me.
>>
>> Acked-by: Vivek Goyal <[email protected]>
>
> Jens, Would you pick up this fix?

Done, applied. Thanks.

--
Jens Axboe