Hello community,

here is the log from the commit of package dapl for openSUSE:Factory checked in 
at 2015-10-06 13:25:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dapl (Old)
 and      /work/SRC/openSUSE:Factory/.dapl.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "dapl"

Changes:
--------
--- /work/SRC/openSUSE:Factory/dapl/dapl-debug.changes  2015-02-10 
20:24:06.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.dapl.new/dapl-debug.changes     2015-10-06 
13:25:24.000000000 +0200
@@ -1,0 +2,18 @@
+Thu Sep 10 08:04:16 UTC 2015 - [email protected]
+
+- add dapl-add-aarch64-platform-support.patch (fate#318444)
+- revert last change
+
+-------------------------------------------------------------------
+Tue Aug 25 12:26:58 CEST 2015 - [email protected]
+
+- Exclude aarch64 as there is currently no assembler code for this
+  architecture.
+
+-------------------------------------------------------------------
+Tue Aug 11 11:04:01 CEST 2015 - [email protected]
+
+- Replace dapl-s390_support.patch with 
+  dapl-add-s390x-platform-support.patch (bsc#934683).
+
+-------------------------------------------------------------------
dapl.changes: same change

Old:
----
  dapl-s390_support.patch

New:
----
  dapl-add-aarch64-platform-support.patch
  dapl-add-s390x-platform-support.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ dapl-debug.spec ++++++
--- /var/tmp/diff_new_pack.nR2ROY/_old  2015-10-06 13:25:25.000000000 +0200
+++ /var/tmp/diff_new_pack.nR2ROY/_new  2015-10-06 13:25:25.000000000 +0200
@@ -30,9 +30,10 @@
 Patch5:         dapl-define_NULL.patch
 Patch6:         dapl-man_page_fixes.patch
 Patch7:         dapl-fsf_address.patch
-Patch8:         dapl-s390_support.patch
+Patch8:         dapl-add-s390x-platform-support.patch
 Patch9:         dapl-autotools.patch
 Patch10:        dapl-rename_dtest.patch
+Patch11:        dapl-add-aarch64-platform-support.patch
 Url:            http://www.openfabrics.org
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  autoconf
@@ -141,6 +142,7 @@
 %patch8 -p1
 %patch9
 %patch10
+%patch11 -p1
 
 %build
 mv man/dtest.1 man/dpltest.1

++++++ dapl.spec ++++++
--- /var/tmp/diff_new_pack.nR2ROY/_old  2015-10-06 13:25:25.000000000 +0200
+++ /var/tmp/diff_new_pack.nR2ROY/_new  2015-10-06 13:25:25.000000000 +0200
@@ -30,9 +30,10 @@
 Patch5:         dapl-define_NULL.patch
 Patch6:         dapl-man_page_fixes.patch
 Patch7:         dapl-fsf_address.patch
-Patch8:         dapl-s390_support.patch
+Patch8:         dapl-add-s390x-platform-support.patch
 Patch9:         dapl-autotools.patch
 Patch10:        dapl-rename_dtest.patch
+Patch11:        dapl-add-aarch64-platform-support.patch
 Url:            http://www.openfabrics.org
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  autoconf
@@ -141,6 +142,7 @@
 %patch8 -p1
 %patch9
 %patch10
+%patch11 -p1
 
 %build
 mv man/dtest.1 man/dpltest.1

++++++ dapl-add-aarch64-platform-support.patch ++++++
>From 142fa8fa58d5e0b92dccc52d7a3bd913456084b4 Mon Sep 17 00:00:00 2001
From: Mark Salter <[email protected]>
Date: Wed, 13 May 2015 16:40:58 -0700
Subject: [PATCH] dapl: aarch64 support for linux

Add atomic ops to fix builds for aarch64 Linux.

Signed-off-by: Mark Salter <[email protected]>
Acked-by: Arlin Davis <[email protected]>
---
 dapl/udapl/linux/dapl_osd.h |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

Index: dapl-2.0.42/dapl/udapl/linux/dapl_osd.h
===================================================================
--- dapl-2.0.42.orig/dapl/udapl/linux/dapl_osd.h
+++ dapl-2.0.42/dapl/udapl/linux/dapl_osd.h
@@ -51,7 +51,8 @@
 
 #if !defined(__i386__) && !defined(__ia64__) \
 && !defined(__x86_64__) && !defined(__PPC__) && !defined(__PPC64__) \
-&& !defined(__s390x__) && !defined(__s390__)
+&& !defined(__s390x__) && !defined(__s390__) \
+&& !defined(__aarch64__)
 #error UNDEFINED ARCH
 #endif
 
@@ -213,6 +214,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"
@@ -257,6 +260,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"
@@ -321,6 +326,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, &current_value, new_value, 1,
+                               __ATOMIC_ACQ_REL, __ATOMIC_RELAXED);
 #else
     __asm__ __volatile__ (
         "lock; cmpxchgl %1, %2"
++++++ dapl-add-s390x-platform-support.patch ++++++
 dapl/udapl/linux/dapl_osd.h               |   37 +++++++++++++++++++++++++++++-
 test/dapltest/mdep/linux/dapl_mdep_user.c |    2 -
 test/dapltest/mdep/linux/dapl_mdep_user.h |    9 ++++++-
 3 files changed, 45 insertions(+), 3 deletions(-)

Index: dapl-2.0.42/dapl/udapl/linux/dapl_osd.h
===================================================================
--- dapl-2.0.42.orig/dapl/udapl/linux/dapl_osd.h        2014-04-07 
19:27:35.000000000 +0200
+++ dapl-2.0.42/dapl/udapl/linux/dapl_osd.h     2015-08-11 11:21:10.335431479 
+0200
@@ -49,7 +49,9 @@
 #error UNDEFINED OS TYPE
 #endif /* __linux__ */
 
-#if !defined (__i386__) && !defined (__ia64__) && !defined(__x86_64__) && 
!defined(__PPC__) && !defined(__PPC64__)
+#if !defined(__i386__) && !defined(__ia64__) \
+&& !defined(__x86_64__) && !defined(__PPC__) && !defined(__PPC64__) \
+&& !defined(__s390x__) && !defined(__s390__)
 #error UNDEFINED ARCH
 #endif
 
@@ -156,6 +158,22 @@ int dapl_os_get_env_val (
 
 
 /* atomic functions */
+#if defined(__s390x__) || defined(__s390__)
+#define DAPL_CS_ADD(ptr, op_val) ({            \
+       int old_val, new_val;                           \
+       __asm__ __volatile__(                           \
+               "       l       %0,%2\n"                \
+               "0:     lr      %1,%0\n"                \
+               "       ar      %1,%3\n"                \
+               "       cs      %0,%1,%2\n"             \
+               "       jl      0b"                     \
+               : "=&d" (old_val), "=&d" (new_val),     \
+                 "=Q" (*ptr)                           \
+               : "d" (op_val), "Q" (*ptr)              \
+               : "cc", "memory");                      \
+       new_val;                                        \
+})
+#endif
 
 /* dapl_os_atomic_inc
  *
@@ -179,6 +197,11 @@ dapl_os_atomic_inc (
 #else
        IA64_FETCHADD(old_value,v,1,4);
 #endif
+#elif defined(__s390x__) || defined(__s390__)
+       DAT_COUNT       tmp;
+       DAT_COUNT       delta = 1;
+
+       tmp = DAPL_CS_ADD(v, delta);
 #elif defined(__PPC__) || defined(__PPC64__)
        int tmp;
 
@@ -218,6 +241,11 @@ dapl_os_atomic_dec (
 #else
        IA64_FETCHADD(old_value,v,-1,4);
 #endif
+#elif defined(__s390x__) || defined(__s390__)
+       DAT_COUNT       tmp;
+       DAT_COUNT       delta = -1;
+
+       tmp = DAPL_CS_ADD(v, delta);
 #elif defined (__PPC__) || defined(__PPC64__)
        int tmp;
 
@@ -273,6 +301,13 @@ dapl_os_atomic_assign (
 #else
     current_value = ia64_cmpxchg(acq,v,match_value,new_value,4);
 #endif /* __ia64__ */
+#elif defined(__s390x__) || defined(__s390__)
+       __asm__ __volatile__(
+               "       cs      %0,%2,%1\n"
+               : "+d" (match_value), "=Q" (*v)
+               : "d" (new_value), "Q" (*v)
+               : "cc", "memory");
+       current_value = match_value;
 #elif defined(__PPC__) || defined(__PPC64__)
         __asm__ __volatile__ (
 "       lwsync\n\
Index: dapl-2.0.42/test/dapltest/mdep/linux/dapl_mdep_user.c
===================================================================
--- dapl-2.0.42.orig/test/dapltest/mdep/linux/dapl_mdep_user.c  2014-04-07 
19:27:35.000000000 +0200
+++ dapl-2.0.42/test/dapltest/mdep/linux/dapl_mdep_user.c       2015-08-11 
11:18:51.751655179 +0200
@@ -168,7 +168,7 @@ unsigned long DT_Mdep_GetTime(void)
        return tv.tv_sec * 1000 + tv.tv_usec / 1000;
 }
 
-#ifdef RDTSC_TIMERS
+#if defined(RDTSC_TIMERS) && !defined(__s390x__)
 double DT_Mdep_GetCpuMhz(void)
 {
 #define DT_TSC_BUFFER_SIZE     128
Index: dapl-2.0.42/test/dapltest/mdep/linux/dapl_mdep_user.h
===================================================================
--- dapl-2.0.42.orig/test/dapltest/mdep/linux/dapl_mdep_user.h  2014-04-07 
19:27:35.000000000 +0200
+++ dapl-2.0.42/test/dapltest/mdep/linux/dapl_mdep_user.h       2015-08-11 
11:18:51.751655179 +0200
@@ -143,11 +143,18 @@ DT_Mdep_GetTimeStamp ( void )
       asm volatile("rdtsc" : "=a" (__a), "=d" (__d)); 
       return ((unsigned long)__a) | (((unsigned long)__d)<<32);
 #else
+#if defined(__s390x__)
+       DT_Mdep_TimeStamp x;
+
+       asm volatile("stck %0" : "=Q" (x) : : "cc");
+       return x >> 2;
+#else
 #error "Linux CPU architecture - unimplemented"
 #endif
 #endif
 #endif
 #endif
+#endif
 }
 #else /* !RDTSC_TIMERS */
 /* 
@@ -172,7 +179,7 @@ DT_Mdep_GetTimeStamp ( void )
  * world. E.g. %llx for gcc, %I64x for Windows
  */
 
-#if defined(__x86_64__) || defined(__ia64__)
+#if defined(__x86_64__) || defined(__ia64__) || defined(__s390x__)
 #define F64d   "%ld"
 #define F64u   "%lu"
 #define F64x   "%lx"

Reply via email to