linux/arch/mips/include/asm
Huacai Chen 18f3e95b90
MIPS: io: Add barrier after register read in inX()
While a barrier is present in the outX() functions before the register
write, a similar barrier is missing in the inX() functions after the
register read. This could allow memory accesses following inX() to
observe stale data.

This patch is very similar to commit a1cc7034e3 ("MIPS: io: Add
barrier after register read in readX()"). Because war_io_reorder_wmb()
is both used by writeX() and outX(), if readX() need a barrier then so
does inX().

Cc: stable@vger.kernel.org
Signed-off-by: Huacai Chen <chenhc@lemote.com>
Patchwork: https://patchwork.linux-mips.org/patch/19516/
Signed-off-by: Paul Burton <paul.burton@mips.com>
Cc: James Hogan <james.hogan@mips.com>
Cc: linux-mips@linux-mips.org
Cc: Fuxin Zhang <zhangfx@lemote.com>
Cc: Zhangjin Wu <wuzhangjin@gmail.com>
Cc: Huacai Chen <chenhuacai@gmail.com>
2018-06-19 19:39:19 -07:00
..
dec
emma
fw
ip32
lasat
mach-ar7
mach-ath25
mach-ath79
mach-au1x00
mach-bcm47xx MIPS: BCM47XX: Add support for Netgear WNR1000 V3 2018-04-23 16:39:34 +01:00
mach-bcm63xx
mach-bmips
mach-cavium-octeon
mach-cobalt
mach-db1x00
mach-dec
mach-emma2rh
mach-generic
mach-ip22
mach-ip27
mach-ip28
mach-ip32
mach-jazz
mach-jz4740 MIPS: JZ4740: dts: Add bindings for the jz4740-wdt driver 2018-05-14 23:58:23 +01:00
mach-lantiq
mach-lasat
mach-loongson32
mach-loongson64
mach-malta
mach-netlogic
mach-paravirt
mach-pic32
mach-pistachio
mach-pmcs-msp71xx
mach-pnx833x
mach-ralink
mach-rc32434
mach-rm
mach-sibyte
mach-tx39xx
mach-tx49xx
mach-vr41xx
mach-xilfpga
mips-boards
netlogic
octeon
pci
sgi
sibyte
sn
txx9
vr41xx
xtalk
abi.h
addrspace.h
amon.h
arch_hweight.h
asm-eva.h
asm-offsets.h
asm-prototypes.h
asm.h
asmmacro-32.h
asmmacro-64.h
asmmacro.h
atomic.h
barrier.h
bcache.h
bitops.h
bitrev.h
bmips-spaces.h
bmips.h
bootinfo.h
branch.h
break.h
bug.h
bugs.h
cache.h
cacheflush.h
cacheops.h
cdmm.h
cevt-r4k.h
checksum.h
clock.h
clocksource.h
cmp.h
cmpxchg.h
compat-signal.h
compat.h y2038: mips: Extend sysvipc data structures 2018-04-20 16:20:04 +02:00
compiler.h
cop2.h
cpu-features.h MIPS: perf: More robustly probe for the presence of per-tc counters 2018-05-15 15:16:16 +01:00
cpu-info.h
cpu-type.h
cpu.h MIPS: Probe for MIPS MT perf counters per TC 2018-05-15 13:33:48 +01:00
cpufeature.h
debug.h
delay.h
device.h
div64.h
dma-coherence.h
dma-direct.h
dma-mapping.h
dma.h
ds1287.h
dsemul.h
dsp.h
edac.h
elf.h
errno.h
eva.h
exec.h
extable.h
fb.h
fixmap.h
floppy.h
fpregdef.h
fpu_emulator.h
fpu.h
ftrace.h
futex.h
gio_device.h
gt64120.h
hardirq.h
hazards.h
highmem.h
hpet.h
hugetlb.h
hw_irq.h
i8259.h
ide.h
idle.h
inst.h
io.h MIPS: io: Add barrier after register read in inX() 2018-06-19 19:39:19 -07:00
irq_cpu.h
irq_gt641xx.h
irq_regs.h
irq.h
irqflags.h
isa-rev.h
isadep.h
jazz.h
jazzdma.h
jump_label.h
Kbuild
kdebug.h
kexec.h
kgdb.h
kmap_types.h
kprobes.h
kvm_host.h
kvm_para.h
linkage.h
llsc.h
local.h
m48t37.h
maar.h
machine.h
mc146818-time.h MIPS: Convert read_persistent_clock() to read_persistent_clock64() 2018-05-14 23:58:23 +01:00
mc146818rtc.h
mips_machine.h
mips_mt.h
mips-cm.h
mips-cpc.h
mips-cps.h
mips-gic.h
mips-r2-to-r6-emul.h
mipsmtregs.h
mipsprom.h
mipsregs.h MIPS: BCM47XX: Enable 74K Core ExternalSync for PCIe erratum 2018-06-18 22:19:50 +01:00
mmu_context.h
mmu.h
mmzone.h
module.h
msa.h
msc01_ic.h
nile4.h
paccess.h
page.h
pci.h PCI: remove PCI_DMA_BUS_IS_PHYS 2018-05-07 07:15:41 +02:00
perf_event.h
pgalloc.h
pgtable-32.h
pgtable-64.h
pgtable-bits.h
pgtable.h
pm-cps.h
pm.h
pmon.h
prefetch.h
processor.h
prom.h
ptrace.h
r4k-timer.h
r4kcache.h
reboot.h
reg.h
regdef.h
rtlx.h
seccomp.h
serial.h
setup.h
sgialib.h
sgiarcs.h
shmparam.h
sigcontext.h
signal.h
sim.h
smp-cps.h
smp-ops.h
smp.h
sni.h
socket.h
sparsemem.h
spinlock_types.h
spinlock.h
spram.h
stackframe.h
stackprotector.h
stacktrace.h
string.h
switch_to.h
syscall.h
termios.h
thread_info.h
time.h MIPS: Convert update_persistent_clock() to update_persistent_clock64() 2018-05-14 23:58:23 +01:00
timex.h
tlb.h
tlbdebug.h
tlbex.h
tlbflush.h
tlbmisc.h
topology.h
traps.h
txx9irq.h
txx9pio.h
txx9tmr.h
types.h
uaccess.h MIPS: uaccess: Add micromips clobbers to bzero invocation 2018-04-18 22:02:29 +01:00
uasm.h
unistd.h
uprobes.h
vdso.h
vga.h
vpe.h
war.h
watch.h
wbflush.h
yamon-dt.h