Files
kernel-sophgo-sg2044-revyos…/include/asm-generic
Guo Ren (Alibaba DAMO Academy) 0d94e08ccd FROMLIST: riscv: errata: Add ERRATA_THEAD_WRITE_ONCE fixup
The early version of XuanTie C910 core 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.

So appending a fence w.o could immediately flush the store merge
buffer and let other cores see the write result.

This will apply the WRITE_ONCE errata to handle the non-standard
behavior via appending a fence w.o instruction for WRITE_ONCE().

This problem is only observed on the sg2042 hardware platform by
running the lock_torture test program for half an hour. The problem
was not found in the user space application, because interrupt can
break the livelock.

Reviewed-by: Leonardo Bras <leobras@redhat.com>
Signed-off-by: Guo Ren (Alibaba DAMO Academy) <guoren@kernel.org>
Link: https://lore.kernel.org/r/20250713155321.2064856-3-guoren@kernel.org
Signed-off-by: Han Gao <rabenda.cn@gmail.com>
2025-11-03 17:08:30 +08:00
..
2022-02-25 09:36:06 +01:00
2023-02-13 22:13:29 +01:00
2024-05-07 14:20:48 +02:00
2023-12-15 16:25:55 -08:00
2024-01-17 17:52:29 -08:00
2021-12-11 23:31:51 +01:00
2025-07-24 19:12:32 -07:00
2024-09-01 20:26:13 -07:00
2025-07-08 18:35:52 +01:00
2024-09-03 21:15:32 -07:00
2022-07-22 17:34:57 -05:00
2025-05-11 17:48:21 -07:00
2024-11-11 07:33:20 -08:00
2025-03-19 08:03:06 -07:00
2025-02-18 10:16:00 +01:00
2024-11-11 07:33:20 -08:00
2024-11-11 21:51:42 +01:00