kernel_samsung_a53x/arch/mips
Guenter Roeck 4536da25e4 MIPS: Add 'memory' clobber to csum_ipv6_magic() inline assembler
[ Upstream commit d55347bfe4e66dce2e1e7501e5492f4af3e315f8 ]

After 'lib: checksum: Use aligned accesses for ip_fast_csum and
csum_ipv6_magic tests' was applied, the test_csum_ipv6_magic unit test
started failing for all mips platforms, both little and bit endian.
Oddly enough, adding debug code into test_csum_ipv6_magic() made the
problem disappear.

The gcc manual says:

"The "memory" clobber tells the compiler that the assembly code performs
 memory reads or writes to items other than those listed in the input
 and output operands (for example, accessing the memory pointed to by one
 of the input parameters)
"

This is definitely the case for csum_ipv6_magic(). Indeed, adding the
'memory' clobber fixes the problem.

Cc: Charlie Jenkins <charlie@rivosinc.com>
Cc: Palmer Dabbelt <palmer@rivosinc.com>
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Reviewed-by: Charlie Jenkins <charlie@rivosinc.com>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-18 12:13:28 +01:00
..
alchemy MIPS: Alchemy: Fix an out-of-bound access in db1550_dev_setup() 2024-11-18 12:12:48 +01:00
ar7 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ath25 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ath79 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bcm47xx Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bcm63xx Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
bmips Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
boot Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
cavium-octeon Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
cobalt Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
configs Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
crypto Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dec Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
fw Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
generic Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
include MIPS: Add 'memory' clobber to csum_ipv6_magic() inline assembler 2024-11-18 12:13:28 +01:00
ingenic Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
jazz Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
kernel mips: Call lose_fpu(0) before initializing fcr31 in mips_set_personality_nan 2024-11-18 12:13:07 +01:00
kvm MIPS: KVM: Fix a build warning about variable set but not used 2024-11-18 12:10:56 +01:00
lantiq Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
lib Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
loongson2ef Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
loongson32 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
loongson64 Revert "MIPS: Loongson64: Enable DMA noncoherent support" 2024-11-18 12:12:04 +01:00
math-emu Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mm Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mti-malta Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
net Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
netlogic Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
oprofile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pic32 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pistachio Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
power Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ralink Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
rb532 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sgi-ip22 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sgi-ip27 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sgi-ip30 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sgi-ip32 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sibyte Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
sni Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tools Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
txx9 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
vdso Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
vr41xx Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kbuild Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kbuild.platforms Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Revert "MIPS: Loongson64: Enable DMA noncoherent support" 2024-11-18 12:12:04 +01:00
Kconfig.debug Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile.postlink Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00