]> git.baikalelectronics.ru Git - kernel.git/commit
ARCv2: Implement atomic64 based on LLOCKD/SCONDD instructions
authorVineet Gupta <vgupta@synopsys.com>
Mon, 27 Jul 2015 11:53:28 +0000 (17:23 +0530)
committerVineet Gupta <vgupta@synopsys.com>
Fri, 30 Sep 2016 21:48:17 +0000 (14:48 -0700)
commitf08c9b206a20bb7b57448f25c7e6a207a5a0a6dd
tree2e46017d408be15aa5834675cd11c06122fc353c
parent928c11bd75b4d17ba4618537d9350953866544fb
ARCv2: Implement atomic64 based on LLOCKD/SCONDD instructions

ARCv2 ISA provides 64-bit exclusive load/stores so use them to implement
the 64-bit atomics and elide the spinlock based generic 64-bit atomics

boot tested with atomic64 self-test (and GOD bless the person who wrote
them, I realized my inline assmebly is sloppy as hell)

Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Will Deacon <will.deacon@arm.com>
Cc: linux-snps-arc@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
arch/arc/Kconfig
arch/arc/include/asm/atomic.h