Thread (170 messages) 170 messages, 19 authors, 2012-09-16

[PATCH v2 15/31] arm64: SMP support

From: tony@atomide.com (Tony Lindgren)
Date: 2012-08-17 09:39:19
Also in: linux-arch, lkml

* Catalin Marinas [off-list ref] [120817 02:33]:
On Fri, Aug 17, 2012 at 10:21:33AM +0100, Tony Lindgren wrote:
quoted
* Catalin Marinas [off-list ref] [120814 11:05]:
quoted
This patch adds SMP initialisation and spinlocks implementation for
AArch64. The spinlock support uses the new load-acquire/store-release
instructions to avoid explicit barriers. The architecture also specifies
that an event is automatically generated when clearing the exclusive
monitor state to wake up processors in WFE, so there is no need for an
explicit DSB/SEV instruction sequence. The SEVL instruction is used to
set the exclusive monitor locally as there is no conditional WFE and a
branch is more expensive.
Do we always have SMP hardware on arm64? Or are we going to need to
again add smp_on_up support later on?
There isn't anything in the architecture specs that mandates multiple
cores but given the current trend it's very likely that we'll always
have MP.

An improvement in AArch64 is that we can use the SMP cache/TLB ops (the
inner shareable variants) even on a UP system so there is no need for
run-time code patching for correct execution.
That's good to hear!

Tony
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help