kernel_optimize_test/include
Jeff Layton 7594c46116 fs: don't take the i_lock in inode_inc_iversion
The rationale for taking the i_lock when incrementing this value is
lost in antiquity. The readers of the field don't take it (at least
not universally), so my assumption is that it was only done here to
serialize incrementors.

If that is indeed the case, then we can drop the i_lock from this
codepath and treat it as a atomic64_t for the purposes of
incrementing it. This allows us to use inode_inc_iversion without
any danger of lock inversion.

Note that the read side is not fetched atomically with this change.
The assumption here is that that is not a critical issue since the
i_version is not fully synchronized with anything else anyway.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Jan Kara <jack@suse.cz>
2018-01-29 06:42:20 -05:00
..
acpi
asm-generic
clocksource
crypto
drm drm: safely free connectors from connector_iter 2017-12-06 10:22:55 +01:00
dt-bindings
keys
kvm
linux fs: don't take the i_lock in inode_inc_iversion 2018-01-29 06:42:20 -05:00
math-emu
media
memory
misc
net tcp: invalidate rate samples during SACK reneging 2017-12-08 10:07:02 -05:00
pcmcia
ras
rdma
scsi
soc
sound
target
trace
uapi KVM fixes for v4.15-rc3 2017-12-10 08:24:16 -08:00
video
xen