On Tue, Oct 28, 2008 at 07:08:06AM -0600, Grant Likely wrote:
> On Tue, Oct 28, 2008 at 1:46 AM, Paulius Zaleckas
> <[EMAIL PROTECTED]> wrote:
> > Grant Likely wrote:
> >> The IRQ array is fixed size.  You can add it to the mdio_gpio_info
> >> structure and then just set the pointer here so that only one kzalloc
> >> is needed.
> >
> > It can be put in mdio_gpio_info, but please note that mdio_gpio_info is
> > allocated with kzalloc() and irq with kmalloc(), because there is no need
> > to fill this array with zeros(see below).
> 
> Adding an additional 32 words to be zeroed in the mdio_gpio_info
> kzalloc is considerably cheaper than doing an additional kmalloc.
> Plus, once the array is zeroed it is then in the cache and so the
> filling it with -1 also becomes cheaper.

Actually no, it doesn't become cheaper.  You're making the assumption
that cache lines are allocated when memory is written to.  This isn't
the case with the vast majority of ARM CPUs.

That means zeroing allocated memory and then filling it with -1 makes
it twice as expensive as just filling it with -1.
--
To unsubscribe from this list: send the line "unsubscribe linux-embedded" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to