Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1213024

Re: [PATCH] irqchip, gicv3-its, numa: Workaround for Cavium ThunderX erratum 23144

From Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Newsgroups linux.kernel
Subject Re: [PATCH] irqchip, gicv3-its, numa: Workaround for Cavium ThunderX erratum 23144
Date 2015-08-25 15:00 +0200
Message-ID <q1lZw-6V3-7@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


Hi Robert,

On 22/08/15 14:10, Robert Richter wrote:
> The patch below adds a workaround for gicv3 in a numa environment. It
> is on top of my recent gicv3 errata patch submission v4 and Ganapat's
> arm64 numa patches for devicetree v5.
> 
> Please comment.
> 
> Thanks,
> 
> -Robert
> 
> 
> 
> From c432820451a46b8d1e299b8bfbfcdcb3b75340e7 Mon Sep 17 00:00:00 2001
> From: Ganapatrao Kulkarni <gkulkarni@caviumnetworks.com>
> Date: Wed, 19 Aug 2015 23:40:05 +0530
> Subject: [PATCH] irqchip, gicv3-its, numa: Workaround for Cavium ThunderX erratum
>  23144
> 
> This implements a workaround for gicv3-its erratum 23144 applicable
> for Cavium's ThunderX multinode systems.
> 
> The erratum fixes the hang of ITS SYNC command by avoiding inter node
> io and collections/cpu mapping. This fix is only applicable for
> Cavium's ThunderX dual-socket platforms.
> 
> Signed-off-by: Ganapatrao Kulkarni <gkulkarni@caviumnetworks.com>
> [ rric: Reworked errata code, added helper functions, updated commit
>   	message. ]
> 
> Signed-off-by: Robert Richter <rrichter@cavium.com>
> ---
>  arch/arm64/Kconfig               | 14 +++++++++++
>  drivers/irqchip/irq-gic-common.c |  5 ++--
>  drivers/irqchip/irq-gic-v3-its.c | 54 ++++++++++++++++++++++++++++++++++------
>  3 files changed, 64 insertions(+), 9 deletions(-)
> 
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index 3809187ed653..b92b7b70b29b 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -421,6 +421,20 @@ config ARM64_ERRATUM_845719
> 
>  	  If unsure, say Y.
> 
> +config CAVIUM_ERRATUM_22375
> +	bool "Cavium erratum 22375, 24313"
> +	depends on NUMA
> +	default y
> +	help
> +		Enable workaround for erratum 22375, 24313.
> +

After testing on Cavium EVK and CRB platforms, it looks like erratum 24313
(ignore memory access type) is also applicable for non-NUMA systems, otherwise
ITS won't be initialiazed properly. The same may apply to erratum 22375.

> +config CAVIUM_ERRATUM_23144
> +	bool "Cavium erratum 23144"
> +	depends on NUMA
> +	default y
> +	help
> +		Enable workaround for erratum 23144.
> +
>  config CAVIUM_ERRATUM_23154
>  	bool "Cavium erratum 23154: Access to ICC_IAR1_EL1 is not sync'ed"
>  	depends on ARCH_THUNDER

-- 
Thanks,
Alex
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

Re: [PATCH] irqchip, gicv3-its, numa: Workaround for Cavium  ThunderX erratum 23144 Alexandru Avadanii <Alexandru.Avadanii@enea.com> - 2015-08-25 15:00 +0200

csiph-web