From: gregory.clement@free-electrons.com (Gregory CLEMENT)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] ARM: dts: mvebu: pl310-cache disable double-linefill
Date: Thu, 26 Oct 2017 17:42:31 +0200 [thread overview]
Message-ID: <87h8ul5314.fsf@free-electrons.com> (raw)
In-Reply-To: <20171025145823.29262-1-gregory.clement@free-electrons.com> (Gregory CLEMENT's message of "Wed, 25 Oct 2017 16:58:23 +0200")
Hi,
On mer., oct. 25 2017, Gregory CLEMENT <gregory.clement@free-electrons.com> wrote:
> From: Yan Markman <ymarkman@marvell.com>
>
> Under heavy system stress mvebu SoC using Cortex A9 sporadically
> encountered instability issues.
>
> The "double linefill" feature of L2 cache was identified as causing
> dependency between read and write which lead to the deadlock.
>
> Especially, it was the cause of deadlock seen under heavy PCIe traffic,
> as this dependency violates PCIE overtaking rule.
>
> Fixes: c8f5a878e554 ("ARM: mvebu: use DT properties to fine-tune the L2 configuration")
> Cc: stable at vger.kernel.org
> Signed-off-by: Yan Markman <ymarkman@marvell.com>
> Signed-off-by: Igal Liberman <igall@marvell.com>
> Signed-off-by: Nadav Haklai <nadavh@marvell.com>
> [gregory.clement at free-electrons.com: reformulate commit log, add Armada
> 375 and add Fixes tag]
> Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Applied on mvebu/fixes
Gregory
> ---
> arch/arm/boot/dts/armada-375.dtsi | 4 ++--
> arch/arm/boot/dts/armada-38x.dtsi | 4 ++--
> arch/arm/boot/dts/armada-39x.dtsi | 4 ++--
> 3 files changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/arch/arm/boot/dts/armada-375.dtsi b/arch/arm/boot/dts/armada-375.dtsi
> index 7225c7ce9a8d..2cb1bcd30976 100644
> --- a/arch/arm/boot/dts/armada-375.dtsi
> +++ b/arch/arm/boot/dts/armada-375.dtsi
> @@ -178,9 +178,9 @@
> reg = <0x8000 0x1000>;
> cache-unified;
> cache-level = <2>;
> - arm,double-linefill-incr = <1>;
> + arm,double-linefill-incr = <0>;
> arm,double-linefill-wrap = <0>;
> - arm,double-linefill = <1>;
> + arm,double-linefill = <0>;
> prefetch-data = <1>;
> };
>
> diff --git a/arch/arm/boot/dts/armada-38x.dtsi b/arch/arm/boot/dts/armada-38x.dtsi
> index 7ff0811e61db..05e241fb91ad 100644
> --- a/arch/arm/boot/dts/armada-38x.dtsi
> +++ b/arch/arm/boot/dts/armada-38x.dtsi
> @@ -143,9 +143,9 @@
> reg = <0x8000 0x1000>;
> cache-unified;
> cache-level = <2>;
> - arm,double-linefill-incr = <1>;
> + arm,double-linefill-incr = <0>;
> arm,double-linefill-wrap = <0>;
> - arm,double-linefill = <1>;
> + arm,double-linefill = <0>;
> prefetch-data = <1>;
> };
>
> diff --git a/arch/arm/boot/dts/armada-39x.dtsi b/arch/arm/boot/dts/armada-39x.dtsi
> index ea657071e278..5218bd2a248d 100644
> --- a/arch/arm/boot/dts/armada-39x.dtsi
> +++ b/arch/arm/boot/dts/armada-39x.dtsi
> @@ -111,9 +111,9 @@
> reg = <0x8000 0x1000>;
> cache-unified;
> cache-level = <2>;
> - arm,double-linefill-incr = <1>;
> + arm,double-linefill-incr = <0>;
> arm,double-linefill-wrap = <0>;
> - arm,double-linefill = <1>;
> + arm,double-linefill = <0>;
> prefetch-data = <1>;
> };
>
> --
> 2.14.2
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
WARNING: multiple messages have this Message-ID (diff)
From: Gregory CLEMENT <gregory.clement@free-electrons.com>
To: Jason Cooper <jason@lakedaemon.net>
Cc: "Andrew Lunn" <andrew@lunn.ch>,
"Sebastian Hesselbarth" <sebastian.hesselbarth@gmail.com>,
"Thomas Petazzoni" <thomas.petazzoni@free-electrons.com>,
linux-arm-kernel@lists.infradead.org,
"Antoine Tenart" <antoine.tenart@free-electrons.com>,
"Miquèl Raynal" <miquel.raynal@free-electrons.com>,
"Nadav Haklai" <nadavh@marvell.com>,
"Yan Markman" <ymarkman@marvell.com>,
stable@vger.kernel.org, "Igal Liberman" <igall@marvell.com>
Subject: Re: [PATCH] ARM: dts: mvebu: pl310-cache disable double-linefill
Date: Thu, 26 Oct 2017 17:42:31 +0200 [thread overview]
Message-ID: <87h8ul5314.fsf@free-electrons.com> (raw)
In-Reply-To: <20171025145823.29262-1-gregory.clement@free-electrons.com> (Gregory CLEMENT's message of "Wed, 25 Oct 2017 16:58:23 +0200")
Hi,
On mer., oct. 25 2017, Gregory CLEMENT <gregory.clement@free-electrons.com> wrote:
> From: Yan Markman <ymarkman@marvell.com>
>
> Under heavy system stress mvebu SoC using Cortex A9 sporadically
> encountered instability issues.
>
> The "double linefill" feature of L2 cache was identified as causing
> dependency between read and write which lead to the deadlock.
>
> Especially, it was the cause of deadlock seen under heavy PCIe traffic,
> as this dependency violates PCIE overtaking rule.
>
> Fixes: c8f5a878e554 ("ARM: mvebu: use DT properties to fine-tune the L2 configuration")
> Cc: stable@vger.kernel.org
> Signed-off-by: Yan Markman <ymarkman@marvell.com>
> Signed-off-by: Igal Liberman <igall@marvell.com>
> Signed-off-by: Nadav Haklai <nadavh@marvell.com>
> [gregory.clement@free-electrons.com: reformulate commit log, add Armada
> 375 and add Fixes tag]
> Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
Applied on mvebu/fixes
Gregory
> ---
> arch/arm/boot/dts/armada-375.dtsi | 4 ++--
> arch/arm/boot/dts/armada-38x.dtsi | 4 ++--
> arch/arm/boot/dts/armada-39x.dtsi | 4 ++--
> 3 files changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/arch/arm/boot/dts/armada-375.dtsi b/arch/arm/boot/dts/armada-375.dtsi
> index 7225c7ce9a8d..2cb1bcd30976 100644
> --- a/arch/arm/boot/dts/armada-375.dtsi
> +++ b/arch/arm/boot/dts/armada-375.dtsi
> @@ -178,9 +178,9 @@
> reg = <0x8000 0x1000>;
> cache-unified;
> cache-level = <2>;
> - arm,double-linefill-incr = <1>;
> + arm,double-linefill-incr = <0>;
> arm,double-linefill-wrap = <0>;
> - arm,double-linefill = <1>;
> + arm,double-linefill = <0>;
> prefetch-data = <1>;
> };
>
> diff --git a/arch/arm/boot/dts/armada-38x.dtsi b/arch/arm/boot/dts/armada-38x.dtsi
> index 7ff0811e61db..05e241fb91ad 100644
> --- a/arch/arm/boot/dts/armada-38x.dtsi
> +++ b/arch/arm/boot/dts/armada-38x.dtsi
> @@ -143,9 +143,9 @@
> reg = <0x8000 0x1000>;
> cache-unified;
> cache-level = <2>;
> - arm,double-linefill-incr = <1>;
> + arm,double-linefill-incr = <0>;
> arm,double-linefill-wrap = <0>;
> - arm,double-linefill = <1>;
> + arm,double-linefill = <0>;
> prefetch-data = <1>;
> };
>
> diff --git a/arch/arm/boot/dts/armada-39x.dtsi b/arch/arm/boot/dts/armada-39x.dtsi
> index ea657071e278..5218bd2a248d 100644
> --- a/arch/arm/boot/dts/armada-39x.dtsi
> +++ b/arch/arm/boot/dts/armada-39x.dtsi
> @@ -111,9 +111,9 @@
> reg = <0x8000 0x1000>;
> cache-unified;
> cache-level = <2>;
> - arm,double-linefill-incr = <1>;
> + arm,double-linefill-incr = <0>;
> arm,double-linefill-wrap = <0>;
> - arm,double-linefill = <1>;
> + arm,double-linefill = <0>;
> prefetch-data = <1>;
> };
>
> --
> 2.14.2
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
next prev parent reply other threads:[~2017-10-26 15:42 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-25 14:58 [PATCH] ARM: dts: mvebu: pl310-cache disable double-linefill Gregory CLEMENT
2017-10-25 14:58 ` Gregory CLEMENT
2017-10-26 15:42 ` Gregory CLEMENT [this message]
2017-10-26 15:42 ` Gregory CLEMENT
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87h8ul5314.fsf@free-electrons.com \
--to=gregory.clement@free-electrons.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.