1
1

usnic: Fix compile errors related to r32196

This commit was SVN r32198.

The following SVN revision numbers were found above:
  r32196 --> open-mpi/ompi@a14e0f10d4
Этот коммит содержится в:
Jeff Squyres 2014-07-10 17:18:03 +00:00
родитель 75230ee574
Коммит 3c4674484d
7 изменённых файлов: 60 добавлений и 60 удалений

Просмотреть файл

@ -147,7 +147,7 @@ ompi_btl_usnic_handle_ack(
* lines below.
*/
if (frag->sf_ack_bytes_left == bytes_acked &&
((frag->sf_base.uf_dst_seg[0].seg_addr.pval != NULL) ||
((frag->sf_base.uf_remote_seg[0].seg_addr.pval != NULL) ||
(frag->sf_base.uf_base.des_flags &
MCA_BTL_DES_SEND_ALWAYS_CALLBACK))) {
OMPI_BTL_USNIC_DO_SEND_FRAG_CB(module, frag, "send completion");

Просмотреть файл

@ -1482,7 +1482,7 @@ static void dump_endpoint(ompi_btl_usnic_endpoint_t *endpoint)
case OMPI_BTL_USNIC_FRAG_PUT_DEST:
/* put_dest frags are just a typedef to generic frags */
snprintf(tmp, sizeof(tmp), " put_addr=%p\n", frag->uf_dst_seg[0].seg_addr.pval);
snprintf(tmp, sizeof(tmp), " put_addr=%p\n", frag->uf_remote_seg[0].seg_addr.pval);
strncat(str, tmp, sizeof(str) - strlen(str) - 1);
opal_output(0, "%s", str);
break;

Просмотреть файл

@ -161,11 +161,11 @@ send_frag_constructor(ompi_btl_usnic_send_frag_t *frag)
/* Fill in source descriptor */
desc = &frag->sf_base.uf_base;
desc->des_local = frag->sf_base.uf_src_seg;
frag->sf_base.uf_src_seg[0].seg_len = 0;
frag->sf_base.uf_src_seg[1].seg_len = 0;
desc->des_local = frag->sf_base.uf_local_seg;
frag->sf_base.uf_local_seg[0].seg_len = 0;
frag->sf_base.uf_local_seg[1].seg_len = 0;
desc->des_local_count = 2;
desc->des_remote = frag->sf_base.uf_dst_seg;
desc->des_remote = frag->sf_base.uf_remote_seg;
desc->des_remote_count = 0;
desc->order = MCA_BTL_NO_ORDER;
@ -182,8 +182,8 @@ send_frag_destructor(ompi_btl_usnic_send_frag_t *frag)
/* make sure nobody twiddled these values after the constructor */
desc = &frag->sf_base.uf_base;
assert(desc->des_local == frag->sf_base.uf_src_seg);
assert(0 == frag->sf_base.uf_src_seg[0].seg_len);
assert(desc->des_local == frag->sf_base.uf_local_seg);
assert(0 == frag->sf_base.uf_local_seg[0].seg_len);
/* PML may change desc->des_remote to point elsewhere, cannot assert that it
* still points to our embedded segment */
@ -208,7 +208,7 @@ small_send_frag_constructor(ompi_btl_usnic_small_send_frag_t *frag)
frag->ssf_segment.ss_send_desc.send_flags = IBV_SEND_SIGNALED;
/* save data pointer for PML */
frag->ssf_base.sf_base.uf_src_seg[0].seg_addr.pval =
frag->ssf_base.sf_base.uf_local_seg[0].seg_addr.pval =
fseg->ss_base.us_payload.raw;
}
@ -220,7 +220,7 @@ small_send_frag_destructor(ompi_btl_usnic_small_send_frag_t *frag)
fseg = &frag->ssf_segment;
assert(fseg->ss_parent_frag == (struct ompi_btl_usnic_send_frag_t *)frag);
assert(frag->ssf_base.sf_base.uf_type == OMPI_BTL_USNIC_FRAG_SMALL_SEND);
assert(frag->ssf_base.sf_base.uf_src_seg[0].seg_addr.pval ==
assert(frag->ssf_base.sf_base.uf_local_seg[0].seg_addr.pval ==
fseg->ss_base.us_payload.raw);
OBJ_DESTRUCT(fseg);
}
@ -231,7 +231,7 @@ large_send_frag_constructor(ompi_btl_usnic_large_send_frag_t *lfrag)
lfrag->lsf_base.sf_base.uf_type = OMPI_BTL_USNIC_FRAG_LARGE_SEND;
/* save data pointer for upper layer */
lfrag->lsf_base.sf_base.uf_src_seg[0].seg_addr.pval =
lfrag->lsf_base.sf_base.uf_local_seg[0].seg_addr.pval =
&lfrag->lsf_ompi_header;
lfrag->lsf_buffer = NULL;
@ -245,14 +245,14 @@ put_dest_frag_constructor(ompi_btl_usnic_put_dest_frag_t *pfrag)
pfrag->uf_type = OMPI_BTL_USNIC_FRAG_PUT_DEST;
/* point dest to our utility segment */
pfrag->uf_base.des_local = pfrag->uf_dst_seg;
pfrag->uf_base.des_local = pfrag->uf_remote_seg;
pfrag->uf_base.des_local_count = 1;
}
static void
put_dest_frag_destructor(ompi_btl_usnic_put_dest_frag_t *pfrag)
{
assert(pfrag->uf_base.des_local == pfrag->uf_dst_seg);
assert(pfrag->uf_base.des_local == pfrag->uf_remote_seg);
assert(1 == pfrag->uf_base.des_local_count);
}

Просмотреть файл

@ -236,8 +236,8 @@ typedef struct ompi_btl_usnic_frag_t {
ompi_btl_usnic_frag_type_t uf_type;
/* utility segments */
mca_btl_base_segment_t uf_src_seg[2];
mca_btl_base_segment_t uf_dst_seg[1];
mca_btl_base_segment_t uf_local_seg[2];
mca_btl_base_segment_t uf_remote_seg[1];
/* freelist this came from */
ompi_free_list_t *uf_freelist;
@ -294,8 +294,8 @@ typedef struct ompi_btl_usnic_large_send_frag_t {
/* Shortcut member macros. Access uf_src_seg array instead of the descriptor's
* des_src ptr to save a deref. */
#define lsf_des_src lsf_base.sf_base.uf_src_seg
#define lsf_des_src_cnt lsf_base.sf_base.uf_base.des_src_cnt
#define lsf_des_src lsf_base.sf_base.uf_local_seg
#define lsf_des_local_cnt lsf_base.sf_base.uf_base.des_local_count
/**
* small send fragment
@ -454,8 +454,8 @@ ompi_btl_usnic_frag_return(
opal_output(0, "freeing frag %p, type %s\n", (void *)frag,
usnic_frag_type(frag->uf_type));
#endif
frag->uf_src_seg[0].seg_len = 0;
frag->uf_src_seg[1].seg_len = 0;
frag->uf_local_seg[0].seg_len = 0;
frag->uf_local_seg[1].seg_len = 0;
/* If this is a large fragment, we need to free any
* attached storage
@ -469,7 +469,7 @@ ompi_btl_usnic_frag_return(
}
lfrag->lsf_pack_on_the_fly = false;
if (2 == lfrag->lsf_des_src_cnt &&
if (2 == lfrag->lsf_des_local_cnt &&
NULL == lfrag->lsf_des_src[1].seg_addr.pval) {
opal_convertor_cleanup(&lfrag->lsf_base.sf_convertor);
}

Просмотреть файл

@ -74,11 +74,11 @@ static inline void compute_sf_size(ompi_btl_usnic_send_frag_t *sfrag)
assert(frag->uf_base.des_local_count <= 2);
/* belt and suspenders: second len should be zero if only one SGE */
assert(2 == frag->uf_base.des_local_count || 0 == frag->uf_src_seg[1].seg_len);
assert(2 == frag->uf_base.des_local_count || 0 == frag->uf_local_seg[1].seg_len);
sfrag->sf_size = 0;
sfrag->sf_size += frag->uf_src_seg[0].seg_len;
sfrag->sf_size += frag->uf_src_seg[1].seg_len;
sfrag->sf_size += frag->uf_local_seg[0].seg_len;
sfrag->sf_size += frag->uf_local_seg[1].seg_len;
}
/*
@ -664,19 +664,19 @@ prepare_src_small(
assert(payload_len <= module->max_frag_payload);
usnic_convertor_pack_simple(
convertor,
(IOVBASE_TYPE*)(intptr_t)(frag->sf_base.uf_src_seg[0].seg_addr.lval + reserve),
(IOVBASE_TYPE*)(intptr_t)(frag->sf_base.uf_local_seg[0].seg_addr.lval + reserve),
*size,
size);
payload_len = reserve + *size;
frag->sf_base.uf_base.des_local_count = 1;
/* PML will copy header into beginning of segment */
frag->sf_base.uf_src_seg[0].seg_len = payload_len;
frag->sf_base.uf_local_seg[0].seg_len = payload_len;
} else {
opal_convertor_get_current_pointer(convertor,
&sfrag->ssf_base.sf_base.uf_src_seg[1].seg_addr.pval);
&sfrag->ssf_base.sf_base.uf_local_seg[1].seg_addr.pval);
frag->sf_base.uf_base.des_local_count = 2;
frag->sf_base.uf_src_seg[0].seg_len = reserve;
frag->sf_base.uf_src_seg[1].seg_len = *size;
frag->sf_base.uf_local_seg[0].seg_len = reserve;
frag->sf_base.uf_local_seg[1].seg_len = *size;
}
frag->sf_base.uf_base.des_flags = flags;
@ -895,8 +895,8 @@ prepare_src_large(
frag->sf_base.uf_base.des_local_count = 2;
/* stash header location, PML will write here */
frag->sf_base.uf_src_seg[0].seg_addr.pval = &lfrag->lsf_ompi_header;
frag->sf_base.uf_src_seg[0].seg_len = reserve;
frag->sf_base.uf_local_seg[0].seg_addr.pval = &lfrag->lsf_ompi_header;
frag->sf_base.uf_local_seg[0].seg_len = reserve;
/* make sure upper header small enough */
assert(reserve <= sizeof(lfrag->lsf_ompi_header));
@ -923,7 +923,7 @@ prepare_src_large(
else {
/* pack everything in the convertor into a chain of segments now,
* leaving space for the PML header in the first segment */
lfrag->lsf_base.sf_base.uf_src_seg[0].seg_addr.pval =
lfrag->lsf_base.sf_base.uf_local_seg[0].seg_addr.pval =
pack_chunk_seg_chain_with_reserve(module, lfrag, reserve,
convertor, *size, size);
}
@ -932,14 +932,14 @@ prepare_src_large(
* by both PML and this BTL will be correct. For example, the PML adds
* up the bytes in the descriptor segments to determine if an MPI-level
* request is complete or not. */
frag->sf_base.uf_src_seg[1].seg_addr.pval = NULL;
frag->sf_base.uf_src_seg[1].seg_len = *size;
frag->sf_base.uf_local_seg[1].seg_addr.pval = NULL;
frag->sf_base.uf_local_seg[1].seg_len = *size;
} else {
/* convertor not needed, just save the payload pointer in SG[1] */
lfrag->lsf_pack_on_the_fly = true;
opal_convertor_get_current_pointer(convertor,
&frag->sf_base.uf_src_seg[1].seg_addr.pval);
frag->sf_base.uf_src_seg[1].seg_len = *size;
&frag->sf_base.uf_local_seg[1].seg_addr.pval);
frag->sf_base.uf_local_seg[1].seg_len = *size;
}
frag->sf_base.uf_base.des_flags = flags;
@ -1057,8 +1057,8 @@ usnic_prepare_dst(
opal_convertor_get_current_pointer(convertor, (void **) &data_ptr);
/* make a seg entry pointing at data_ptr */
pfrag->uf_dst_seg[0].seg_addr.pval = data_ptr;
pfrag->uf_dst_seg[0].seg_len = *size;
pfrag->uf_remote_seg[0].seg_addr.pval = data_ptr;
pfrag->uf_remote_seg[0].seg_len = *size;
pfrag->uf_base.order = order;
pfrag->uf_base.des_flags = flags;
@ -1112,7 +1112,7 @@ usnic_put(
#endif
/* copy out address - why does he not use our provided holder? */
frag->sf_base.uf_dst_seg[0].seg_addr.pval = desc->des_remote->seg_addr.pval;
frag->sf_base.uf_remote_seg[0].seg_addr.pval = desc->des_remote->seg_addr.pval;
rc = ompi_btl_usnic_finish_put_or_send((ompi_btl_usnic_module_t *)btl,
(ompi_btl_usnic_endpoint_t *)endpoint,
@ -1332,7 +1332,7 @@ usnic_handle_large_send(
/* only callback now if this was not a PUT and we own the fragment,
* otherwise we need to wait until last byte is ACKed
*/
if (frag->sf_base.uf_dst_seg[0].seg_addr.pval == NULL &&
if (frag->sf_base.uf_remote_seg[0].seg_addr.pval == NULL &&
(frag->sf_base.uf_base.des_flags &
MCA_BTL_DES_FLAGS_BTL_OWNERSHIP)) {
@ -1394,7 +1394,7 @@ ompi_btl_usnic_module_progress_sends(
/*
* small send? (fragment fits in one segment)
* Send ptr and length will be in uf_src_seg[0]
* Send ptr and length will be in uf_local_seg[0]
*/
if (frag->sf_base.uf_type == OMPI_BTL_USNIC_FRAG_SMALL_SEND) {
@ -1424,7 +1424,7 @@ ompi_btl_usnic_module_progress_sends(
ompi_btl_usnic_endpoint_send_segment(module, sseg);
/* don't do callback yet if this is a put */
if (frag->sf_base.uf_dst_seg[0].seg_addr.pval == NULL) {
if (frag->sf_base.uf_remote_seg[0].seg_addr.pval == NULL) {
/* we have copied the data, perform a callback if
* we own the fragment and callback is requested.
* If we don't own the fragment, we cannot callback yet
@ -1516,7 +1516,7 @@ usnic_send(
frag = (ompi_btl_usnic_send_frag_t*) descriptor;
assert(frag->sf_endpoint == endpoint);
frag->sf_base.uf_dst_seg[0].seg_addr.pval = NULL; /* not a PUT */
frag->sf_base.uf_remote_seg[0].seg_addr.pval = NULL; /* not a PUT */
compute_sf_size(frag);
frag->sf_ack_bytes_left = frag->sf_size;
@ -1558,16 +1558,16 @@ usnic_send(
/* fix up verbs SG entries */
sseg->ss_base.us_sg_entry[0].length =
sizeof(ompi_btl_usnic_btl_header_t) +
frag->sf_base.uf_src_seg[0].seg_len;
frag->sf_base.uf_local_seg[0].seg_len;
if (frag->sf_base.uf_base.des_local_count > 1) {
/* only briefly, we will set it back to 1 before release */
sseg->ss_send_desc.num_sge = 2;
sseg->ss_base.us_sg_entry[1].addr =
frag->sf_base.uf_src_seg[1].seg_addr.lval,
frag->sf_base.uf_local_seg[1].seg_addr.lval,
sseg->ss_base.us_sg_entry[1].length =
frag->sf_base.uf_src_seg[1].seg_len;
frag->sf_base.uf_local_seg[1].seg_len;
} else {
sseg->ss_send_desc.num_sge = 1;
}
@ -1584,14 +1584,14 @@ usnic_send(
/* make a copy of the data for retrans */
if (frag->sf_base.uf_base.des_local_count > 1) {
memcpy(((char *)(intptr_t)frag->sf_base.uf_src_seg[0].seg_addr.lval +
frag->sf_base.uf_src_seg[0].seg_len),
frag->sf_base.uf_src_seg[1].seg_addr.pval,
frag->sf_base.uf_src_seg[1].seg_len);
memcpy(((char *)(intptr_t)frag->sf_base.uf_local_seg[0].seg_addr.lval +
frag->sf_base.uf_local_seg[0].seg_len),
frag->sf_base.uf_local_seg[1].seg_addr.pval,
frag->sf_base.uf_local_seg[1].seg_len);
/* update 1st segment length */
frag->sf_base.uf_base.des_local_count = 1;
frag->sf_base.uf_src_seg[0].seg_len +=
frag->sf_base.uf_src_seg[1].seg_len;
frag->sf_base.uf_local_seg[0].seg_len +=
frag->sf_base.uf_local_seg[1].seg_len;
/* set up VERBS SG list */
/* this maintains invariant that num_sge=1 */
sseg->ss_send_desc.num_sge = 1;

Просмотреть файл

@ -133,17 +133,17 @@ ompi_btl_usnic_finish_put_or_send(
*/
if (frag->sf_base.uf_base.des_local_count > 1) {
/* no convertor */
assert(NULL != frag->sf_base.uf_src_seg[1].seg_addr.pval);
assert(NULL != frag->sf_base.uf_local_seg[1].seg_addr.pval);
memcpy(((char *)(intptr_t)frag->sf_base.uf_src_seg[0].seg_addr.lval +
frag->sf_base.uf_src_seg[0].seg_len),
frag->sf_base.uf_src_seg[1].seg_addr.pval,
frag->sf_base.uf_src_seg[1].seg_len);
memcpy(((char *)(intptr_t)frag->sf_base.uf_local_seg[0].seg_addr.lval +
frag->sf_base.uf_local_seg[0].seg_len),
frag->sf_base.uf_local_seg[1].seg_addr.pval,
frag->sf_base.uf_local_seg[1].seg_len);
/* update 1st segment length */
frag->sf_base.uf_base.des_local_count = 1;
frag->sf_base.uf_src_seg[0].seg_len +=
frag->sf_base.uf_src_seg[1].seg_len;
frag->sf_base.uf_local_seg[0].seg_len +=
frag->sf_base.uf_local_seg[1].seg_len;
}
sseg->ss_base.us_sg_entry[0].length =
@ -153,7 +153,7 @@ ompi_btl_usnic_finish_put_or_send(
sseg->ss_channel = USNIC_DATA_CHANNEL;
sseg->ss_base.us_btl_header->tag = tag;
if (frag->sf_base.uf_src_seg[0].seg_len < module->tiny_mtu) {
if (frag->sf_base.uf_local_seg[0].seg_len < module->tiny_mtu) {
sseg->ss_send_desc.send_flags |= IBV_SEND_INLINE;
}
} else {

Просмотреть файл

@ -167,7 +167,7 @@ ompi_btl_usnic_endpoint_send_segment(
/* Fill in remote address to indicate PUT or not */
sseg->ss_base.us_btl_header->put_addr =
frag->sf_base.uf_dst_seg[0].seg_addr.pval;
frag->sf_base.uf_remote_seg[0].seg_addr.pval;
/* piggy-back an ACK if needed */
ompi_btl_usnic_piggyback_ack(endpoint, sseg);