Re: [patch] uninline init_waitqueue_*() functions

From: Andrew Morton
Date: Wed Jul 05 2006 - 05:53:31 EST


On Wed, 5 Jul 2006 11:32:59 +0200
Ingo Molnar <mingo@xxxxxxx> wrote:

>
> * Andrew Morton <akpm@xxxxxxxx> wrote:
>
> > shrinks fs/select.o by eight bytes. (More than I expected). So it
> > does appear to be a space win, but a pretty slim one.
>
> there are 855 calls to these functions in the allyesconfig vmlinux i
> did, and i measured a combined size reduction of 34791 bytes. That
> averages to a 40 bytes win per call site. (on i386.)
>

Yes, but that lumps all three together. init_waitqueue_head() is obviously
the porky one. And it's porkier with CONFIG_DEBUG_SPINLOCK and
CONFIG_LOCKDEP, which isn't the case to optimise for.

With the debug options turned off, even init_waitqueue_head() becomes just
three assignments, similar to init_waitqueue_entry() and
init_waitqueue_func_entry(). All pretty marginal.

-
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/