lkml.org 
[lkml]   [2011]   [Jan]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] blkio-throttle: Avoid calling blkiocg_lookup_group() for root group
On 2011-01-31 20:24, Jens Axboe wrote:
> On 2011-01-31 20:20, Jeff Moyer wrote:
>> Vivek Goyal <vgoyal@redhat.com> writes:
>>
>>> On Mon, Jan 17, 2011 at 04:56:06PM -0500, Vivek Goyal wrote:
>>>> o Jeff Moyer was doing some testing on a RAM backed disk and
>>>> blkiocg_lookup_group() showed up high overhead after memcpy(). Similarly
>>>> somebody else reported that blkiocg_lookup_group() is eating 6% extra
>>>> cpu. Though looking at the code I can't think why the overhead of
>>>> this function is so high. One thing is that it is called with very high
>>>> frequency (once for every IO).
>>>>
>>>> o For lot of folks blkio controller will be compiled in but they might
>>>> not have actually created cgroups. Hence optimize the case of root
>>>> cgroup where we can avoid calling blkiocg_lookup_group() if IO is happening
>>>> in root group (common case).
>>>>
>>>> Reported-by: Jeff Moyer <jmoyer@redhat.com>
>>>> Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
>>>
>>> Hi Jens,
>>>
>>> Do you have any concerns regarding this patch?
>>
>> Acked-by: Jeff Moyer <jmoyer@redhat.com>
>>
>> Jens, this is a pretty easy performance regression fixup. I think it
>> should be pulled in sooner rather than later. We've also witnessed this
>> slowdown on big performance testing rigs, so it's not just a ramdisk
>> issue.
>
> Yep, will fold it into 2.6.38, thanks!

Just to be clear, it's queued up in for-linus so it will go to 2.6.38 on
the next push. It was updated last week, this is what it has so far:

Sergey Senozhatsky (1):
loop: queue_lock NULL pointer derefence in blk_throtl_exit

Stephen M. Cameron (1):
cciss: make cciss_revalidate not loop through CISS_MAX_LUNS volumes unnecessarily.

Tao Ma (1):
blktrace: Don't output messages if NOTIFY isn't set.

Tracey Dent (2):
drivers/block/Makefile: replace the use of <module>-objs with <module>-y
drivers/block/aoe/Makefile: replace the use of <module>-objs with <module>-y

Vivek Goyal (2):
cfq: rename a function to give it more appropriate name
blkio-throttle: Avoid calling blkiocg_lookup_group() for root group

block/blk-throttle.c | 10 +++++++++-
block/cfq-iosched.c | 6 +++---
drivers/block/Makefile | 2 +-
drivers/block/aoe/Makefile | 2 +-
drivers/block/cciss.c | 2 +-
drivers/block/loop.c | 3 +++
kernel/trace/blktrace.c | 7 +++++++
7 files changed, 25 insertions(+), 7 deletions(-)

--
Jens Axboe



\
 
 \ /
  Last update: 2011-01-31 20:31    [W:0.137 / U:0.124 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site