Re: [RFC PATCH v2 07/12] smp: Do not mark call_function_data as shared

From: Peter Zijlstra
Date: Fri May 31 2019 - 06:21:16 EST


On Thu, May 30, 2019 at 11:36:40PM -0700, Nadav Amit wrote:
> cfd_data is marked as shared, but although it hold pointers to shared
> data structures, it is private per core.
>
> Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> Cc: Rik van Riel <riel@xxxxxxxxxxx>
> Cc: Andy Lutomirski <luto@xxxxxxxxxx>
> Signed-off-by: Nadav Amit <namit@xxxxxxxxxx>
> ---
> kernel/smp.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/smp.c b/kernel/smp.c
> index 6b411ee86ef6..f1a358f9c34c 100644
> --- a/kernel/smp.c
> +++ b/kernel/smp.c
> @@ -33,7 +33,7 @@ struct call_function_data {
> cpumask_var_t cpumask_ipi;
> };
>
> -static DEFINE_PER_CPU_SHARED_ALIGNED(struct call_function_data, cfd_data);
> +static DEFINE_PER_CPU(struct call_function_data, cfd_data);

Should that not be DEFINE_PER_CPU_ALIGNED() then?

> static DEFINE_PER_CPU_SHARED_ALIGNED(struct llist_head, call_single_queue);
>
> --
> 2.20.1
>