[PATCH] mtd: cfi: Deiline large functions
Denys Vlasenko
dvlasenk at redhat.com
Thu May 21 00:50:38 PDT 2015
On 05/20/2015 08:56 PM, Brian Norris wrote:
> On Mon, May 18, 2015 at 12:58:40PM +0200, Denys Vlasenko wrote:
>> With this .config: http://busybox.net/~vda/kernel_config,
>> after uninlining these functions have sizes and callsite counts
>> as follows:
>
> Most of this is probably good, thanks. But I'm curious about one:
>
>> cfi_udelay(): 74 bytes, 26 callsites
>
> ^^ This is pretty dead-simple. If it's generating bad code, we might
> look at fixing it up instead. Almost all of its call sites are with
> constant input, so it *should* just become:
>
> udelay(1);
> cond_resched();
>
> in most cases. For the non-constant cases, we might still do an
> out-of-line implementation. Or maybe we just say it's all not worth it,
> and we just stick with what you have. But I'd like to consider
> alternatives to out-lining this one.
You want to consider not-deinlining (IOW: speed-optimizing)
a *fixed time delay function*?
Think about what delay functions do...
More information about the linux-mtd
mailing list