Re: [PATCH] Optimize relay_alloc_page_array() slightly by usingvzalloc rather than vmalloc and memset
From: Jesper Juhl
Date: Sat Oct 30 2010 - 18:00:30 EST
On Sat, 30 Oct 2010, Mathieu Desnoyers wrote:
> * Jesper Juhl (jj@xxxxxxxxxxxxx) wrote:
> > Hi,
> >
> > We can optimize kernel/relay.c::relay_alloc_page_array() slightly by using
> > vzalloc. The patch makes these changes:
> >
> > - use vzalloc instead of vmalloc+memset.
> > - remove redundant local variable 'array'.
> > - declare local 'pa_size' as const.
>
> Hrm ? How does declaring a local variable as const helps the compiler in
> any way ?
>
Hmm, probably not very much in this case (but it doesn't hurt either ;) -
actually, removing the const yielded the exact same result, so it's
"not at all" in this case).
That bit came from my "build-in" tendency to declare stuff const when it
obviously doesn't change/nor should. It's a habbit..
> Moreover, is there anyone still using this code ? LTTng uses the Generic
> Ring Buffer library which completely deprecates relay.c. Perf and Ftrace
> each have their own ring buffers, without dependency on relay.c.
>
> BLK_DEV_IO_TRACE seems to still select RELAY. Has it completed its
> transition to either Ftrace or Perf ? Depending on Jens, moving blktrace
> relay dependency to the Generic Ring Buffer Library might be a good
> option to consider.
>
I admit I have no idea if this code is actually still used, but as long as
it's in the kernel I think we should strive to make it as good as possible
- no? If there are still users this is an improvement, if there are no
users (who knows if there are out-of-tree ones?) then it should probably
just go away (but even then this patch does no harm - except for a bit of
churn).
--
Jesper Juhl <jj@xxxxxxxxxxxxx> http://www.chaosbits.net/
Plain text mails only, please http://www.expita.com/nomime.html
Don't top-post http://www.catb.org/~esr/jargon/html/T/top-post.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/