Re: [PATCH 1/2] Define new percpu interface for shared data --version 3

From: Andrew Morton
Date: Wed May 23 2007 - 13:50:18 EST


On Tue, 22 May 2007 11:20:03 -0700 Fenghua Yu <fenghua.yu@xxxxxxxxx> wrote:

> per cpu data section contains two types of data. One set which is exclusively
> accessed by the local cpu and the other set which is per cpu, but also shared
> by remote cpus. In the current kernel, these two sets are not clearely
> separated out. This can potentially cause the same data cacheline shared
> between the two sets of data, which will result in unnecessary bouncing of the
> cacheline between cpus.
>
> One way to fix the problem is to cacheline align the remotely accessed per cpu
> data, both at the beginning and at the end. Because of the padding at both ends,
> this will likely cause some memory wastage and also the interface to achieve
> this is not clean.
>
> This patch:
>
> Moves the remotely accessed per cpu data (which is currently marked
> as ____cacheline_aligned_in_smp) into a different section, where all the data
> elements are cacheline aligned. And as such, this differentiates the local
> only data and remotely accessed data cleanly.

OK, but could we please have a concise description of the impact
of these changes on kernel memory footprint? Increase or decrease?
And by approximately how much?

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