Will Deacon
fb24ea52f7
drivers: Remove explicit invocations of mmiowb()
...
mmiowb() is now implied by spin_unlock() on architectures that require
it, so there is no reason to call it from driver code. This patch was
generated using coccinelle:
@mmiowb@
@@
- mmiowb();
and invoked as:
$ for d in drivers include/linux/qed sound; do \
spatch --include-headers --sp-file mmiowb.cocci --dir $d --in-place; done
NOTE: mmiowb() has only ever guaranteed ordering in conjunction with
spin_unlock(). However, pairing each mmiowb() removal in this patch with
the corresponding call to spin_unlock() is not at all trivial, so there
is a small chance that this change may regress any drivers incorrectly
relying on mmiowb() to order MMIO writes between CPUs using lock-free
synchronisation. If you've ended up bisecting to this commit, you can
reintroduce the mmiowb() calls using wmb() instead, which should restore
the old behaviour on all architectures other than some esoteric ia64
systems.
Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2019-04-08 12:01:02 +01:00
..
aec62xx.c
ali14xx.c
alim15x3.c
alim15x3: move irq-restore before pci_dev_put()
2018-06-05 16:26:46 -04:00
amd74xx.c
atiixp.c
au1xxx-ide.c
buddha.c
cmd64x.c
cmd640.c
cmd640: add __init attribute
2016-07-26 15:25:30 -07:00
cs5520.c
cs5530.c
cs5535.c
cs5536.c
cy82c693.c
delkin_cb.c
dtc2278.c
falconide.c
gayle.c
hpt366.c
ide: hpt366: mark expected switch fall-throughs
2019-03-10 11:12:24 -07:00
ht6560b.c
icside.c
ide: icside: remove incorrect initconst annotation
2016-03-20 16:59:27 -04:00
ide-4drives.c
ide-acpi.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
ide-atapi.c
ide: ensure atapi sense request aren't preempted
2019-01-31 08:25:09 -07:00
ide-cd.c
ide: don't use req->special
2018-11-10 08:03:52 -07:00
ide-cd.h
block: Switch struct packet_command to use struct scsi_sense_hdr
2018-08-02 15:22:13 -06:00
ide-cd_ioctl.c
block: Switch struct packet_command to use struct scsi_sense_hdr
2018-08-02 15:22:13 -06:00
ide-cd_verbose.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
ide-cs.c
ide-devsets.c
ide: don't use req->special
2018-11-10 08:03:52 -07:00
ide-disk.c
ide: don't use req->special
2018-11-10 08:03:52 -07:00
ide-disk.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
ide-disk_ioctl.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
ide-disk_proc.c
ide: replace ->proc_fops with ->proc_show
2018-05-16 07:24:30 +02:00
ide-dma-sff.c
ide-dma.c
ide: kill ide_toggle_bounce
2018-05-07 07:15:41 +02:00
ide-eh.c
ide: don't use req->special
2018-11-10 08:03:52 -07:00
ide-floppy.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide
2019-03-11 09:34:00 -07:00
ide-floppy.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
ide-floppy_ioctl.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
ide-floppy_proc.c
ide: replace ->proc_fops with ->proc_show
2018-05-16 07:24:30 +02:00
ide-gd.c
block: genhd: add 'groups' argument to device_add_disk
2018-09-28 08:30:28 -06:00
ide-gd.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
ide-generic.c
treewide: simplify Kconfig dependencies for removed archs
2018-03-26 15:55:57 +02:00
ide-io-std.c
ide-io.c
ide: ensure atapi sense request aren't preempted
2019-01-31 08:25:09 -07:00
ide-ioctls.c
block: sanitize blk_get_request calling conventions
2018-05-14 08:55:12 -06:00
ide-iops.c
ide: don't enable/disable interrupts in force threaded-IRQ mode
2018-06-05 16:26:47 -04:00
ide-legacy.c
ide-lib.c
ide: kill ide_toggle_bounce
2018-05-07 07:15:41 +02:00
ide-park.c
ide: ensure atapi sense request aren't preempted
2019-01-31 08:25:09 -07:00
ide-pci-generic.c
ide-pio-blacklist.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
ide-pm.c
ide: don't acquire queue_lock in ide_complete_pm_rq
2018-11-16 09:17:02 -07:00
ide-pnp.c
PNP: ide: constify pnp_device_id
2017-08-16 11:25:16 -07:00
ide-probe.c
ide: ensure atapi sense request aren't preempted
2019-01-31 08:25:09 -07:00
ide-proc.c
ide: fix a typo in the settings proc file name
2019-01-22 15:08:12 +13:00
ide-scan-pci.c
ide: fix IRQ assignment for PCI bus order probing
2017-10-03 14:03:31 -05:00
ide-sysfs.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
ide-tape.c
ide: don't use req->special
2018-11-10 08:03:52 -07:00
ide-taskfile.c
ide: don't use req->special
2018-11-10 08:03:52 -07:00
ide-timings.c
ide: avoid warning for timings calculation
2017-07-21 04:37:22 +01:00
ide-xfer-mode.c
ide.c
treewide: Fix function prototypes for module_param_call()
2017-10-31 15:30:37 +01:00
ide_platform.c
it821x.c
treewide: kzalloc() -> kcalloc()
2018-06-12 16:19:22 -07:00
it8172.c
it8213.c
jmicron.c
Kconfig
drivers: ide: Kconfig: pedantic formatting
2019-03-10 11:12:38 -07:00
macide.c
Makefile
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
ns87415.c
opti621.c
palm_bk3710.c
ide: palm_bk3710: add __initdata to palm_bk3710_port_info
2017-02-27 20:43:26 -05:00
pdc202xx_new.c
PCI: Remove includes of asm/pci-bridge.h
2016-02-05 16:29:28 -06:00
pdc202xx_old.c
piix.c
pmac.c
powerpc updates for 4.21
2018-12-27 10:43:24 -08:00
q40ide.c
qd65xx.c
qd65xx.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
rapide.c
rz1000.c
sc1200.c
serverworks.c
setup-pci.c
ide: pci: free PCI BARs on initialization failure
2017-10-03 14:02:57 -05:00
sgiioc4.c
siimage.c
block: introduce new block status code type
2017-06-09 09:27:32 -06:00
sis5513.c
ide: mark expected switch fall-throughs
2018-08-13 11:48:54 -07:00
sl82c105.c
sl82c105: deprecate pci_get_bus_and_slot()
2018-01-11 17:29:04 -06:00
slc90e66.c
tc86c001.c
triflex.c
trm290.c
ide: constify ide_dma_ops structures
2016-01-18 14:12:33 -05:00
tx4938ide.c
tx4939ide.c
drivers: Remove explicit invocations of mmiowb()
2019-04-08 12:01:02 +01:00
umc8672.c
via82cxxx.c