[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ohjfp2mwenkmm77t3iwtd6xhuhiykcmumujknqme3yd7hyac2p@j6mi542lmbeg>
Date: Mon, 16 Dec 2024 13:05:48 +0800
From: Inochi Amaoto <inochiama@...il.com>
To: guoren@...nel.org, conor@...nel.org, alexghiti@...osinc.com
Cc: linux-riscv@...ts.infradead.org, linux-kernel@...r.kernel.org,
paul.walmsley@...ive.com, palmer@...belt.com, bjorn@...osinc.com, leobras@...hat.com,
corbet@....net, peterlin@...estech.com, Guo Ren <guoren@...ux.alibaba.com>
Subject: Re: [PATCH 0/2] riscv: qspinlock: errata: Add
ERRATA_THEAD_WRITE_ONCE fixup
On Sat, Dec 14, 2024 at 09:30:37AM -0500, guoren@...nel.org wrote:
> From: Guo Ren <guoren@...ux.alibaba.com>
>
> The early version of T-Head C9xx cores has a store merge buffer
> delay problem. The store merge buffer could improve the store queue
> performance by merging multi-store requests, but when there are not
> continued store requests, the prior single store request would be
> waiting in the store queue for a long time. That would cause
> significant problems for communication between multi-cores. This
> problem was found on sg2042 & th1520 platforms with the qspinlock
> lock torture test.
>
> The orignal patch is from:
> https://lore.kernel.org/linux-riscv/20231225125847.2778638-5-guoren@kernel.org/
>
> Guo Ren (2):
> riscv: Move vendor errata definitions into vendorid_list.h
> riscv: qspinlock: errata: Add ERRATA_THEAD_WRITE_ONCE fixup
>
> arch/riscv/Kconfig.errata | 19 +++++++++++++++
> arch/riscv/errata/thead/errata.c | 20 ++++++++++++++++
> arch/riscv/include/asm/errata_list.h | 17 -------------
> arch/riscv/include/asm/rwonce.h | 33 ++++++++++++++++++++++++++
> arch/riscv/include/asm/vendorid_list.h | 18 ++++++++++++++
> include/asm-generic/rwonce.h | 2 ++
> 6 files changed, 92 insertions(+), 17 deletions(-)
> create mode 100644 arch/riscv/include/asm/rwonce.h
>
> --
> 2.40.1
>
It works on SG2042.
Tested-by: Inochi Amaoto <inochiama@...il.com>
Powered by blists - more mailing lists