From bfd49d248bc51bda8081a6c3c7dee929424a13ea Mon Sep 17 00:00:00 2001 From: Brian Barrett Date: Mon, 27 Feb 2006 17:07:24 +0000 Subject: [PATCH] * (hopefully) fix MPI_BOTTOM for portals, same way as oll the other RDMA btls from eons ago... This commit was SVN r9172. --- ompi/mca/btl/portals/btl_portals.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ompi/mca/btl/portals/btl_portals.c b/ompi/mca/btl/portals/btl_portals.c index cdfef90a51..2a6065d7ed 100644 --- a/ompi/mca/btl/portals/btl_portals.c +++ b/ompi/mca/btl/portals/btl_portals.c @@ -28,6 +28,7 @@ #include "ompi/mca/pml/pml.h" #include "ompi/mca/btl/btl.h" #include "ompi/datatype/convertor.h" +#include "ompi/datatype/datatype.h" #include "btl_portals.h" #include "btl_portals_compat.h" @@ -485,6 +486,7 @@ mca_btl_portals_prepare_dst(struct mca_btl_base_module_t* btl_base, ptl_md_t md; ptl_handle_me_t me_h; int ret; + long lb; assert(&mca_btl_portals_module == (mca_btl_portals_module_t*) btl_base); @@ -493,8 +495,9 @@ mca_btl_portals_prepare_dst(struct mca_btl_base_module_t* btl_base, return NULL; } + ompi_ddt_type_lb(convertor->pDesc, &lb); frag->segments[0].seg_len = *size; - frag->segments[0].seg_addr.pval = convertor->pBaseBuf + convertor->bConverted; + frag->segments[0].seg_addr.pval = convertor->pBaseBuf + lb + convertor->bConverted; frag->segments[0].seg_key.key64 = OPAL_THREAD_ADD64(&(mca_btl_portals_module.portals_rdma_key), 1); frag->base.des_src = NULL;