]> git.baikalelectronics.ru Git - kernel.git/commit
MIPS: CM: Avoid per-core locking with CM3 & higher
authorPaul Burton <paul.burton@imgtec.com>
Fri, 2 Jun 2017 21:48:50 +0000 (14:48 -0700)
committerRalf Baechle <ralf@linux-mips.org>
Thu, 29 Jun 2017 00:42:28 +0000 (02:42 +0200)
commit319a7cb97aa650ad985f37a2e7d460ba3d2b7347
treed7081b6226e45a468823885d998b1434a4c1cc3e
parentf4b80d26b166ab98d56db199ec44396624b6516b
MIPS: CM: Avoid per-core locking with CM3 & higher

CM3 provides a GCR_CL_OTHER register per VP, rather than only per core.
This means that we don't need to prevent other VPs within a core from
racing with code that makes use of the core-other register region.

Reduce locking overhead by demoting the per-core spinlock providing
protection for CM2.5 & lower to a per-CPU/per-VP spinlock for CM3 &
higher.

Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/16193/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/mips-cm.c