Re: [PATCH v4 0/2] Move x86_cpu_to_apicid to the __read_mostlysection

From: Ingo Molnar
Date: Mon May 21 2012 - 11:27:18 EST



* Vlad Zolotarov <vlad@xxxxxxxxxxx> wrote:

> Pls., consider applying this patch series.
> It contains the following changes:
> - Adds two new macros DEFINE_EARLY_PER_CPU_READ_MOSTLY() and
> DECLARE_EARLY_PER_CPU_READ_MOSTLY().
> - Adds "read-mostly" qualifier to the following variables in smp.h:
> - cpu_sibling_map
> - cpu_core_map
> - cpu_llc_shared_map
> - cpu_llc_id
> - cpu_number
> - x86_cpu_to_apicid
> - x86_bios_cpu_apicid
> - x86_cpu_to_logical_apicid
>
> As long as all the variables above are only written during the
> initialization, this change is meant to prevent the false
> sharing and improve the performance on large multiprocessor
> systems.

Why have you resent this? The feedback I gave has not been
addressed:

> Well, a quick tally of percpu variables on a 'make defconfig'
> kernel would tell us one way or another?
>
> Here there's almost 200 percpu variables active in the 64-bit
> x86 defconfig, and a quick random sample suggests that most
> are read-mostly.
>
> I have no fundamental prefer to either approach, but the
> direction taken should be justified explicitly, with numbers,
> arguments, etc. - also a short blurb somewhere in the headers
> that explains when they should be used, so that others can be
> aware of vSMP's special needs here.

Thanks,

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