Re: [PATCH] arm64: Increase the max granular size

From: Timur Tabi
Date: Fri Oct 16 2015 - 15:57:36 EST


On Tue, Sep 22, 2015 at 12:59 PM, Robert Richter <rric@xxxxxxxxxx> wrote:
> From: Tirumalesh Chalamarla <tchalamarla@xxxxxxxxxx>
>
> Increase the standard cacheline size to avoid having locks in the same
> cacheline.
>
> Cavium's ThunderX core implements cache lines of 128 byte size. With
> current granulare size of 64 bytes (L1_CACHE_SHIFT=6) two locks could
> share the same cache line leading a performance degradation.
> Increasing the size fixes that.
>
> Increasing the size has no negative impact to cache invalidation on
> systems with a smaller cache line. There is an impact on memory usage,
> but that's not too important for arm64 use cases.
>
> Signed-off-by: Tirumalesh Chalamarla <tchalamarla@xxxxxxxxxx>
> Signed-off-by: Robert Richter <rrichter@xxxxxxxxxx>

Acked-by: Timur Tabi <timur@xxxxxxxxxxxxxx>

We need this patch, because on our silicon, CTR_EL0[CWG] set to 5, which
means that setup_processor() complains with this warning:

cls = cache_line_size();

if (L1_CACHE_BYTES < cls)
pr_warn("L1_CACHE_BYTES smaller than the Cache Writeback Granule
(%d < %d)\n",
L1_CACHE_BYTES, cls);

--
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project.
--
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/