[fedora-arm] Fwd: OpenMPI atomics patch

Leif Lindholm leif.lindholm at linaro.org
Wed Nov 14 09:37:06 UTC 2012


(accidental reply-to Nico rather than reply-to-all)

On 14 November 2012 00:30, Nicolas Pitre <nico at fluxnic.net> wrote:
> On Tue, 13 Nov 2012, Jon Masters wrote:
>
> I can see a few more issues in this patch:
...
> In the ARMv6 file, you use ldrexd/strexd instructions which are only
> available with the k extension of the ARMv6 architecture.  That means
> non-SMP ARMv6 variants won't support those instructions.  You probably
> should consider using the __kuser_cmpxchg64 kernel helper instead in
> that case.

They don't actually get invoked though - since the

OPAL_ASM_SUPPORT_64BIT=0

set by configure for ARMv6 means that the 64-bit portions get excluded
through the #START_64BIT and #END_64BIT macros.

Which is also why it would work to use the same source files for v6 and v7
if only the barriers could be replaced.

> And of course, the availability of __kuser_cmpxchg64 means that you
> could add 64 bit support to the ARMv5 version as well if you feel like
> it.

Open-MPI will synthesise 64-bit atomics using a 32-bit lock if no native
ops are available, so it wouldn't be necessary for functionality, although it
might be more efficient.

/
    Leif


More information about the arm mailing list