[Pkg-openmpi-commits] r376 - /openmpi/trunk/debian/patches/opal_thread_add64.patch

mckinstry at users.alioth.debian.org mckinstry at users.alioth.debian.org
Wed Mar 9 10:34:10 UTC 2016


Author: mckinstry
Date: Wed Mar  9 10:34:09 2016
New Revision: 376

URL: http://svn.debian.org/wsvn/pkg-openmpi/?sc=1&rev=376
Log:
Update from upstream of patch

Modified:
    openmpi/trunk/debian/patches/opal_thread_add64.patch

Modified: openmpi/trunk/debian/patches/opal_thread_add64.patch
URL: http://svn.debian.org/wsvn/pkg-openmpi/openmpi/trunk/debian/patches/opal_thread_add64.patch?rev=376&op=diff
==============================================================================
--- openmpi/trunk/debian/patches/opal_thread_add64.patch	(original)
+++ openmpi/trunk/debian/patches/opal_thread_add64.patch	Wed Mar  9 10:34:09 2016
@@ -5,83 +5,32 @@
 Forwarded: yes
 Bug-Debian: https://bugs.debian.org/816303
 
---- openmpi-1.10.2.orig/ompi/mca/btl/portals4/btl_portals4.c
-+++ openmpi-1.10.2/ompi/mca/btl/portals4/btl_portals4.c
-@@ -319,7 +319,11 @@ mca_btl_portals4_prepare_src(struct mca_
- 
-         frag->segments[0].base.seg_len = max_data;
-         frag->segments[0].base.seg_addr.pval = iov.iov_base;
-+#ifdef OPAL_HAVE_ATOMIC_MATH_64
-         frag->segments[0].key = OPAL_THREAD_ADD64(&(portals4_btl->portals_rdma_key), 1);
-+#else
-+        frag->segments[0].key = OPAL_THREAD_ADD32(&(portals4_btl->portals_rdma_key), 1);
-+#endif
-         frag->base.des_src_cnt = 1;
- 
-         /* either a put or get.  figure out which later */
-@@ -405,7 +409,11 @@ mca_btl_portals4_prepare_dst(struct mca_
- 
-     frag->segments[0].base.seg_len = *size;
-     opal_convertor_get_current_pointer( convertor, (void**)&(frag->segments[0].base.seg_addr.pval) );
-+#ifdef OPAL_HAVE_ATOMIC_MATH_64
-     frag->segments[0].key = OPAL_THREAD_ADD64(&(portals4_btl->portals_rdma_key), 1);
-+#else
-+    frag->segments[0].key = OPAL_THREAD_ADD32(&(portals4_btl->portals_rdma_key), 1);
-+#endif
-     frag->base.des_src = NULL;
-     frag->base.des_src_cnt = 0;
-     frag->base.des_dst = &frag->segments[0].base;
---- openmpi-1.10.2.orig/ompi/mca/mtl/portals4/mtl_portals4_send.c
-+++ openmpi-1.10.2/ompi/mca/mtl/portals4/mtl_portals4_send.c
-@@ -411,7 +411,11 @@ ompi_mtl_portals4_send_start(struct mca_
-     ret = ompi_mtl_datatype_pack(convertor, &start, &length, &free_after);
-     if (OMPI_SUCCESS != ret) return ret;
- 
-+#ifdef OPAL_HAVE_ATOMIC_MATH_64
-     ptl_request->opcount = OPAL_THREAD_ADD64((int64_t*)&ompi_mtl_portals4.opcount, 1);
-+#else
-+    ptl_request->opcount = OPAL_THREAD_ADD32((int64_t*)&ompi_mtl_portals4.opcount, 1);
-+#endif
-     ptl_request->buffer_ptr = (free_after) ? start : NULL;
-     ptl_request->event_count = 0;
- 
---- openmpi-1.10.2.orig/ompi/mca/osc/portals4/osc_portals4_active_target.c
-+++ openmpi-1.10.2/ompi/mca/osc/portals4/osc_portals4_active_target.c
-@@ -102,7 +102,11 @@ ompi_osc_portals4_complete(struct ompi_w
-                             PTL_SUM,
-                             PTL_INT32_T);
-             if (ret != OMPI_SUCCESS) return ret;
-+#ifdef OPAL_HAVE_ATOMIC_MATH_64
-             OPAL_THREAD_ADD64(&module->opcount, 1);
-+#else
-+            OPAL_THREAD_ADD32(&module->opcount, 1);
-+#endif
-         }
- 
-         ret = ompi_osc_portals4_complete_all(module);
-@@ -151,7 +155,11 @@ ompi_osc_portals4_post(struct ompi_group
-                             PTL_SUM,
-                             PTL_INT32_T);
-             if (ret != OMPI_SUCCESS) return ret;
-+#ifdef OPAL_HAVE_ATOMIC_MATH_64
-             OPAL_THREAD_ADD64(&module->opcount, 1);
-+#else
-+            OPAL_THREAD_ADD64(&module->opcount, 1);
-+#endif
-         }
-     } else {
-         module->post_group = NULL;
---- openmpi-1.10.2.orig/ompi/mca/osc/pt2pt/osc_pt2pt_passive_target.c
-+++ openmpi-1.10.2/ompi/mca/osc/pt2pt/osc_pt2pt_passive_target.c
-@@ -331,7 +331,11 @@ static int ompi_osc_pt2pt_lock_internal
+diff --git a/ompi/mca/osc/pt2pt/osc_pt2pt_passive_target.c b/ompi/mca/osc/pt2pt/osc_pt2pt_passive_target.c
+index 523d7da..d040d51 100644
+--- a/ompi/mca/osc/pt2pt/osc_pt2pt_passive_target.c
++++ b/ompi/mca/osc/pt2pt/osc_pt2pt_passive_target.c
+@@ -8,7 +8,7 @@
+  *                         University of Stuttgart.  All rights reserved.
+  * Copyright (c) 2004-2005 The Regents of the University of California.
+  *                         All rights reserved.
+- * Copyright (c) 2007-2015 Los Alamos National Security, LLC.  All rights
++ * Copyright (c) 2007-2016 Los Alamos National Security, LLC.  All rights
+  *                         reserved.
+  * Copyright (c) 2010      IBM Corporation.  All rights reserved.
+  * Copyright (c) 2012-2013 Sandia National Laboratories.  All rights reserved.
+@@ -331,13 +331,14 @@ static int ompi_osc_pt2pt_lock_internal (int lock_type, int target, int assert,
      lock->target = target;
      lock->lock_acks_expected = 0;
      lock->unlock_acks_expected = 0;
-+#ifdef OPAL_HAVE_ATOMIC_MATH_64
-     lock->serial_number = OPAL_THREAD_ADD64((int64_t *) &module->lock_serial_number, 1);
-+#else
-+    lock->serial_number = OPAL_THREAD_ADD32((int64_t *) &module->lock_serial_number, 1);
-+#endif
+-    lock->serial_number = OPAL_THREAD_ADD64((int64_t *) &module->lock_serial_number, 1);
      lock->type = lock_type;
      lock->assert = assert;
  
+     /* delay all eager sends until we've heard back.. */
+     OPAL_THREAD_LOCK(&module->lock);
+ 
++    lock->serial_number = module->lock_serial_number + 1;
++
+     /* check for conflicting lock */
+     if (find_outstanding_lock_st (module, target)) {
+         OBJ_RELEASE(lock);




More information about the Pkg-openmpi-commits mailing list