Re: [rfc][patch 1/3] slub: fix small HWCACHE_ALIGN alignment

From: Pekka Enberg
Date: Mon Mar 03 2008 - 04:44:22 EST


Hi Nick,

On Mon, Mar 3, 2008 at 11:34 AM, Nick Piggin <npiggin@xxxxxxx> wrote:
> SLUB should pack even small objects nicely into cachelines if that is what
> has been asked for. Use the same algorithm as SLAB for this.

The patches look good but this changelog is missing context. Why do we
want to do this?

On Mon, Mar 3, 2008 at 11:34 AM, Nick Piggin <npiggin@xxxxxxx> wrote:
> @@ -1896,12 +1896,15 @@ static unsigned long calculate_alignment
> * specified alignment though. If that is greater
> * then use it.
> */

You might want to fix the above comment too.

> - if ((flags & SLAB_HWCACHE_ALIGN) &&
> - size > cache_line_size() / 2)
> - return max_t(unsigned long, align, cache_line_size());
> + if (flags & SLAB_HWCACHE_ALIGN) {
> + unsigned long ralign = cache_line_size();
> + while (size <= ralign / 2)
> + ralign /= 2;
> + align = max(align, ralign);
> + }
--
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/