Re: [Patch] Cacheline align xlog_t

Andi Kleen
2008-04-02T08:28:13Z

David Chinner <dgc@sgi.com> writes:
>
> This just means that the start of the structure is cacheline
> aligned. I don't think the internal alignment commands force the
> entire structure to be cacheline aligned, merely pad the struture
> internally. In that case, even though the specific internal parts of
> the structure are on separate cache lines, there's no guarantee that
> all the related members are on the same cacheline. Hence I'm
> explicitly stating the exact alignment I want for the structure....

Isn't the structure dynamically allocated anyways?
The full type alignment really only matters for statics/globals
where the linker can handle it.

For the dynamic allocation you would rather need to make sure it
starts at a cache line boundary explicitely because the allocator doesn't
know the alignment of the target type, otherwise your careful
padding might be useless.

-Andi