linux-stable/arch/arm64
Zhou Wang a76a37777f iommu/arm-smmu-v3: Ensure queue is read after updating prod pointer
Reading the 'prod' MMIO register in order to determine whether or not
there is valid data beyond 'cons' for a given queue does not provide
sufficient dependency ordering, as the resulting access is address
dependent only on 'cons' and can therefore be speculated ahead of time,
potentially allowing stale data to be read by the CPU.

Use readl() instead of readl_relaxed() when updating the shadow copy of
the 'prod' pointer, so that all speculated memory reads from the
corresponding queue can occur only from valid slots.

Signed-off-by: Zhou Wang <wangzhou1@hisilicon.com>
Link: https://lore.kernel.org/r/1601281922-117296-1-git-send-email-wangzhou1@hisilicon.com
[will: Use readl() instead of explicit barrier. Update 'cons' side to match.]
Signed-off-by: Will Deacon <will@kernel.org>
2020-09-28 22:57:43 +01:00
..
boot arm64: dts: k3-am65: Update the RM resource types 2020-08-16 22:01:20 +01:00
configs ARM: SoC driver updates for v5.9 2020-08-03 19:30:59 -07:00
crypto crypto: arm64/gcm - use inline helper to suppress indirect calls 2020-07-09 22:14:32 +10:00
include iommu/arm-smmu-v3: Ensure queue is read after updating prod pointer 2020-09-28 22:57:43 +01:00
kernel A set of fixes for lockdep, tracing and RCU: 2020-08-30 11:43:50 -07:00
kvm - Fix kernel build with the integrated LLVM assembler which doesn't 2020-08-28 11:37:33 -07:00
lib Merge branch 'rwonce/rework' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux 2020-06-10 14:46:54 -07:00
mm treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
net bpf, arm64: Add BPF exception tables 2020-07-31 00:43:40 +02:00
xen arm64: xen: Use modern annotations for assembly functions 2020-01-09 16:09:42 +00:00
Kbuild
Kconfig KVM/arm64 updates for Linux 5.9: 2020-08-09 12:58:23 -04:00
Kconfig.debug arm64: remove TEXT_OFFSET randomization 2020-06-15 13:10:59 +01:00
Kconfig.platforms ARM: new SoC support for v5.9 2020-08-03 19:38:30 -07:00
Makefile arm64: vdso32: make vdso32 install conditional 2020-08-28 13:18:48 +01:00