]> git.baikalelectronics.ru Git - kernel.git/commit
MIPS: io: Add barrier after register read in inX()
authorHuacai Chen <chenhc@lemote.com>
Tue, 12 Jun 2018 09:54:42 +0000 (17:54 +0800)
committerPaul Burton <paul.burton@mips.com>
Wed, 20 Jun 2018 02:39:19 +0000 (19:39 -0700)
commitd0b4a876459643ceae9661cc306fae34b8828fcb
treefc35bd1ab9bf0389c614f50076cb4bf11cc037d5
parent16fc4fdf385e32aff38d9d2106df582e335bf14c
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 85f1e31de1931896a ("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>
arch/mips/include/asm/io.h