mirror-linux/arch/mips
Mateusz Guzik c8afaa1b0f locking: remove spin_lock_prefetch
The only remaining consumer is new_inode, where it showed up in 2001 as
commit c37fa164f793 ("v2.4.9.9 -> v2.4.9.10") in a historical repo [1]
with a changelog which does not mention it.

Since then the line got only touched up to keep compiling.

While it may have been of benefit back in the day, it is guaranteed to
at best not get in the way in the multicore setting -- as the code
performs *a lot* of work between the prefetch and actual lock acquire,
any contention means the cacheline is already invalid by the time the
routine calls spin_lock().  It adds spurious traffic, for short.

On top of it prefetch is notoriously tricky to use for single-threaded
purposes, making it questionable from the get go.

As such, remove it.

I admit upfront I did not see value in benchmarking this change, but I
can do it if that is deemed appropriate.

Removal from new_inode and of the entire thing are in the same patch as
requested by Linus, so whatever weird looks can be directed at that guy.

Link: https://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git/commit/fs/inode.c?id=c37fa164f793735b32aa3f53154ff1a7659e6442 [1]
Signed-off-by: Mateusz Guzik <mjguzik@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2023-08-12 09:18:47 -07:00
..
alchemy TTY/Serial driver updates for 6.5-rc1. 2023-07-03 13:14:58 -07:00
ar7
ath25
ath79
bcm47xx
bcm63xx
bmips mips: update a reference to a moved Arm Document 2023-06-13 03:47:20 -06:00
boot MIPS: dts: add missing space before { 2023-07-06 13:55:43 +02:00
cavium-octeon - added support for TP-Link HC220 G5 v1 2023-06-29 15:01:51 -07:00
cobalt
configs arch/*/configs/*defconfig: Replace AUTOFS4_FS by AUTOFS_FS 2023-07-29 14:08:22 -07:00
crypto
dec
fw
generic mips: ingenic: Enable EXT/2 divider on JZ4750/55/60 if EXT is 24 MHz 2023-06-09 09:54:17 +02:00
include locking: remove spin_lock_prefetch 2023-08-12 09:18:47 -07:00
ingenic
jazz
kernel - fixes for KVM 2023-07-09 10:02:49 -07:00
kvm MIPS: kvm: Fix build error with KVM_MIPS_DEBUG_COP0_COUNTERS enabled 2023-07-07 14:43:01 +02:00
lantiq
lib
loongson2ef MIPS: loongson2ef: Add missing break in cs5536_isa 2023-04-12 15:12:24 +02:00
loongson32 - added support for TP-Link HC220 G5 v1 2023-06-29 15:01:51 -07:00
loongson64 MIPS: SMP_CPS: Switch to hotplug core state synchronization 2023-05-15 13:44:58 +02:00
math-emu
mm - added support for TP-Link HC220 G5 v1 2023-06-29 15:01:51 -07:00
mti-malta
n64
net
pci mips: pci-mt7620: use dev_info() to log PCIe device detection result 2023-06-21 14:53:45 +02:00
pic32
power
ralink mips: ralink: match all supported system controller compatible strings 2023-06-23 15:00:37 +02:00
rb532
sgi-ip22
sgi-ip27
sgi-ip30
sgi-ip32
sibyte mips: Fix spacing issue 2023-06-09 09:49:59 +02:00
sni
tools
txx9
vdso
Kbuild
Kbuild.platforms
Kconfig - added support for TP-Link HC220 G5 v1 2023-06-29 15:01:51 -07:00
Kconfig.debug
Makefile - fixes for KVM 2023-07-09 10:02:49 -07:00
Makefile.postlink