--- /dev/null
+From cb95ea79b3fc772c5873a7a4532ab4c14a455da2 Mon Sep 17 00:00:00 2001
+From: Rui Wang <wangrui@loongson.cn>
+Date: Thu, 29 Jul 2021 17:31:52 +0800
+Subject: MIPS: locking/atomic: Fix atomic{_64,}_sub_if_positive
+
+From: Rui Wang <wangrui@loongson.cn>
+
+commit cb95ea79b3fc772c5873a7a4532ab4c14a455da2 upstream.
+
+This looks like a typo and that caused atomic64 test failed.
+
+Signed-off-by: Rui Wang <wangrui@loongson.cn>
+Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
+Signed-off-by: Guenter Roeck <linux@roeck-us.net>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ arch/mips/include/asm/atomic.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/arch/mips/include/asm/atomic.h
++++ b/arch/mips/include/asm/atomic.h
+@@ -203,7 +203,7 @@ ATOMIC_OPS(atomic64, xor, s64, ^=, xor,
+ * The function returns the old value of @v minus @i.
+ */
+ #define ATOMIC_SIP_OP(pfx, type, op, ll, sc) \
+-static __inline__ int pfx##_sub_if_positive(type i, pfx##_t * v) \
++static __inline__ type pfx##_sub_if_positive(type i, pfx##_t * v) \
+ { \
+ type temp, result; \
+ \