]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
LoongArch: Use correct accessor to read FWPC/MWPC
authorHuacai Chen <chenhuacai@loongson.cn>
Sun, 9 Nov 2025 08:02:01 +0000 (16:02 +0800)
committerHuacai Chen <chenhuacai@loongson.cn>
Mon, 10 Nov 2025 00:37:06 +0000 (08:37 +0800)
CSR.FWPC and CSR.MWPC are 32bit registers, so use csr_read32() rather
than csr_read64() to read the values of FWPC/MWPC.

Cc: stable@vger.kernel.org
Fixes: edffa33c7bb5a73 ("LoongArch: Add hardware breakpoints/watchpoints support")
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
arch/loongarch/include/asm/hw_breakpoint.h

index 13b2462f3d8c9d28c0138113f33f20fd0c7ba79c..5faa97a87a9e2dbcfbf853fcb945133f95122406 100644 (file)
@@ -134,13 +134,13 @@ static inline void hw_breakpoint_thread_switch(struct task_struct *next)
 /* Determine number of BRP registers available. */
 static inline int get_num_brps(void)
 {
-       return csr_read64(LOONGARCH_CSR_FWPC) & CSR_FWPC_NUM;
+       return csr_read32(LOONGARCH_CSR_FWPC) & CSR_FWPC_NUM;
 }
 
 /* Determine number of WRP registers available. */
 static inline int get_num_wrps(void)
 {
-       return csr_read64(LOONGARCH_CSR_MWPC) & CSR_MWPC_NUM;
+       return csr_read32(LOONGARCH_CSR_MWPC) & CSR_MWPC_NUM;
 }
 
 #endif /* __KERNEL__ */