From: Mark Salter <msalter-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Arlin Davis <arlin.r.davis-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Mark Salter <msalter-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Subject: [PATCH] dapl: aarch64 support for linux
Date: Wed, 13 May 2015 15:05:33 -0400 [thread overview]
Message-ID: <1431543933-27781-1-git-send-email-msalter@redhat.com> (raw)
Add atomic ops to fix builds for aarch64 Linux.
Signed-off-by: Mark Salter <msalter-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
---
dapl/udapl/linux/dapl_osd.h | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/dapl/udapl/linux/dapl_osd.h b/dapl/udapl/linux/dapl_osd.h
index 10f71b0..2b255d0 100644
--- a/dapl/udapl/linux/dapl_osd.h
+++ b/dapl/udapl/linux/dapl_osd.h
@@ -50,7 +50,8 @@
#endif /* __linux__ */
#if !defined (__i386__) && !defined (__ia64__) && !defined(__x86_64__) && \
- !defined(__PPC__) && !defined(__PPC64__) && !defined(__s390x__)
+ !defined(__PPC__) && !defined(__PPC64__) && !defined(__s390x__) && \
+ !defined(__aarch64__)
#error UNDEFINED ARCH
#endif
@@ -214,6 +215,8 @@ dapl_os_atomic_inc (
: "=&r" (tmp), "+m" (v)
: "b" (v)
: "cc");
+#elif defined(__aarch64__)
+ __atomic_fetch_add(v, 1, __ATOMIC_ACQ_REL);
#else /* !__ia64__ */
__asm__ __volatile__ (
"lock;" "incl %0"
@@ -258,6 +261,8 @@ dapl_os_atomic_dec (
: "=&r" (tmp), "+m" (v)
: "b" (v)
: "cc");
+#elif defined(__aarch64__)
+ __atomic_fetch_add(v, -1, __ATOMIC_ACQ_REL);
#else /* !__ia64__ */
__asm__ __volatile__ (
"lock;" "decl %0"
@@ -322,6 +327,10 @@ dapl_os_atomic_assign (
: "=&r" (current_value), "=m" (*v)
: "r" (v), "r" (match_value), "r" (new_value), "m" (*v)
: "cc", "memory");
+#elif defined(__aarch64__)
+ current_value = match_value;
+ __atomic_compare_exchange_n(v, ¤t_value, new_value, 1,
+ __ATOMIC_ACQ_REL, __ATOMIC_RELAXED);
#else
__asm__ __volatile__ (
"lock; cmpxchgl %1, %2"
--
1.9.3
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next reply other threads:[~2015-05-13 19:05 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-13 19:05 Mark Salter [this message]
[not found] ` <1431543933-27781-1-git-send-email-msalter-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-05-13 22:55 ` [PATCH] dapl: aarch64 support for linux Davis, Arlin R
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1431543933-27781-1-git-send-email-msalter@redhat.com \
--to=msalter-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=arlin.r.davis-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox