From 7a3f72a638f214e316865a83bf9d249f5a038bef Mon Sep 17 00:00:00 2001 From: Jaemin Choi Date: Mon, 6 Feb 2017 12:00:49 -0600 Subject: [PATCH] Cleanup #960: Replace CmiEnforce(0) calls in verbs and net layer Change-Id: I9952bd081f54c90c02d6a6c453feab02f60cd69c --- src/arch/net/machine-ibverbs.c | 28 +++++++++++++++------------- src/arch/verbs/machine-ibverbs.c | 28 ++++++++++++++-------------- 2 files changed, 29 insertions(+), 27 deletions(-) diff --git a/src/arch/net/machine-ibverbs.c b/src/arch/net/machine-ibverbs.c index 2fa3308310..d554f7ac36 100644 --- a/src/arch/net/machine-ibverbs.c +++ b/src/arch/net/machine-ibverbs.c @@ -447,7 +447,7 @@ static void checkAllQps(){ if(i != _Cmi_mynode){ if(!checkQp(nodes[i].infiData->qp)){ pollSendCq(0); - CmiEnforce(0); + CmiAbort("Queue pair check failed"); } } } @@ -1046,7 +1046,7 @@ void postInitialRecvs(struct infiBufferPool *recvBufferPool,int numRecvs,int siz workRequests[numRecvs-1].next = NULL; MACHSTATE(3,"About to call ibv_post_srq_recv"); if(ibv_post_srq_recv(context->srq,workRequests,&bad_wr)){ - CmiEnforce(0); + CmiAbort("ibv_post_srq_recv failed"); } #else // create a pool per processor and post initial receives to processor queue similar to send, split the buffer pool Equi-partitioning recv pool @@ -1066,7 +1066,9 @@ void postInitialRecvs(struct infiBufferPool *recvBufferPool,int numRecvs,int siz workRequests[numRecvs-1].next = NULL; else workRequests[(k+1)*perNodeRecvs-1].next = NULL; - if(ibv_post_recv(context->qp[n],&workRequests[k*perNodeRecvs],&bad_wr)){CmiEnforce(0);} + if(ibv_post_recv(context->qp[n],&workRequests[k*perNodeRecvs],&bad_wr)){ + CmiAbort("ibv_post_recv failed"); + } k++; } } @@ -1495,14 +1497,14 @@ static inline int pollRecvCq(const int toBuffer){ for(i=0;itokensLeft,minTokensLeft); #endif - CmiEnforce(0); + CmiAbort("Work completion error in sendCq"); } switch(wc[i].opcode){ case IBV_WC_SEND:{ @@ -1880,7 +1882,7 @@ static inline void processRecvWC(struct ibv_wc *recvWC,const int toBuffer){ if(ibv_post_recv(node1->infiData->qp,&wr,&bad_wr)) #endif { - CmiEnforce(0); + CmiAbort("ibv_post_recv failed"); } } @@ -1980,7 +1982,7 @@ static inline void processRdmaRequest(struct infiRdmaPacket *_rdmaPacket,int fro }; /** post and rdma_read that is a rdma get*/ if(ibv_post_send(node->infiData->qp,&wr,&bad_wr)){ - CmiEnforce(0); + CmiAbort("ibv_post_send failed"); } } @@ -2275,7 +2277,7 @@ static inline void increaseTokens(OtherNode node){ currentCqSize = context->sendCqSize; if(ibv_resize_cq(context->sendCq,currentCqSize+increase)){ fprintf(stderr,"[%d] failed to increase cq by %d from %d totalTokens %d \n",_Cmi_mynode,increase,currentCqSize, node->infiData->totalTokens); - CmiEnforce(0); + CmiAbort("ibv_resize_cq failed"); } context->sendCqSize+= increase; }; @@ -2299,7 +2301,7 @@ static void increasePostedRecvs(int nodeNo){ //increase the size of the recvCq currentCqSize = context->recvCqSize; if(ibv_resize_cq(context->recvCq,currentCqSize+tokenIncrease)){ - CmiEnforce(0); + CmiAbort("ibv_resize_cq failed"); } context->recvCqSize += tokenIncrease; if(recvIncrease > 0){ @@ -2561,7 +2563,7 @@ static inline void *getInfiCmiChunkThread(int dataSize){ return res; } - CmiEnforce(0); + CmiAbort("getInfiCmiChunkThread failed"); }; @@ -2659,7 +2661,7 @@ static inline void *getInfiCmiChunk(int dataSize){ return res; } - CmiEnforce(0); + CmiAbort("getInfiCmiChunk failed"); }; @@ -3248,7 +3250,7 @@ void CmiDirect_put(struct infiDirectUserHandle *userHandle){ }; /** post and rdma_read that is a rdma get*/ if(ibv_post_send(node->infiData->qp,&wr,&bad_wr)){ - CmiEnforce(0); + CmiAbort("ibv_post_send failed"); } } diff --git a/src/arch/verbs/machine-ibverbs.c b/src/arch/verbs/machine-ibverbs.c index 82b725e32b..d94a70e58a 100644 --- a/src/arch/verbs/machine-ibverbs.c +++ b/src/arch/verbs/machine-ibverbs.c @@ -418,7 +418,7 @@ static void checkAllQps(){ if(i != CmiMyNodeGlobal()){ if(!checkQp(nodes[i].infiData->qp)){ pollSendCq(0); - CmiEnforce(0); + CmiAbort("Queue pair check failed"); } } } @@ -973,7 +973,7 @@ void postInitialRecvs(struct infiBufferPool *recvBufferPool,int numRecvs,int siz workRequests[numRecvs-1].next = NULL; MACHSTATE(3,"About to call ibv_post_srq_recv"); if(ibv_post_srq_recv(context->srq,workRequests,&bad_wr)){ - CmiEnforce(0); + CmiAbort("ibv_post_srq_recv failed"); } free(workRequests); @@ -1061,7 +1061,7 @@ static void inline EnqueuePacket(OtherNode node,infiPacket packet,int size,struc struct ibv_send_wr *bad_wr=NULL; if(retval = ibv_post_send(node->infiData->qp,&(packet->wr),&bad_wr)){ CmiPrintf("[%d] Sending to node %d failed with return value %d\n",Lrts_myNode,node->infiData->nodeNo,retval); - CmiEnforce(0); + CmiAbort("ibv_post_send failed"); } #if CMK_IBVERBS_TOKENS_FLOW context->tokensLeft--; @@ -1369,14 +1369,14 @@ static inline int pollRecvCq(const int toBuffer){ for(i=0;itokensLeft,minTokensLeft); #endif - CmiEnforce(0); + CmiAbort("Work completion error in sendCq"); } switch(wc[i].opcode){ case IBV_WC_SEND:{ @@ -1425,7 +1425,7 @@ static inline int pollSendCq(const int toBuffer){ break; } default: - CmiAbort("Wrong type of work completion object in recvq"); + CmiAbort("Wrong type of work completion object in sendCq"); break; } @@ -1710,7 +1710,7 @@ static inline void processRecvWC(struct ibv_wc *recvWC,const int toBuffer){ struct ibv_recv_wr *bad_wr; if(ibv_post_srq_recv(context->srq,&wr,&bad_wr)){ - CmiEnforce(0); + CmiAbort("ibv_post_srq_recv failed"); } } @@ -1810,7 +1810,7 @@ static inline void processRdmaRequest(struct infiRdmaPacket *_rdmaPacket,int fro }; /** post and rdma_read that is a rdma get*/ if(ibv_post_send(node->infiData->qp,&wr,&bad_wr)){ - CmiEnforce(0); + CmiAbort("ibv_post_send failed"); } } @@ -2088,7 +2088,7 @@ static inline void increaseTokens(OtherNode node){ int currentCqSize = context->sendCqSize; if(ibv_resize_cq(context->sendCq,currentCqSize+increase)){ fprintf(stderr,"[%d] failed to increase cq by %d from %d totalTokens %d \n",CmiMyNodeGlobal() ,increase,currentCqSize, node->infiData->totalTokens); - CmiEnforce(0); + CmiAbort("ibv_resize_cq failed"); } context->sendCqSize+= increase; }; @@ -2109,7 +2109,7 @@ static void increasePostedRecvs(int nodeNo){ //increase the size of the recvCq int currentCqSize = context->recvCqSize; if(ibv_resize_cq(context->recvCq,currentCqSize+tokenIncrease)){ - CmiEnforce(0); + CmiAbort("ibv_resize_cq failed"); } context->recvCqSize += tokenIncrease; if(recvIncrease > 0){ @@ -2372,7 +2372,7 @@ static inline void *getInfiCmiChunkThread(int dataSize){ return res; } - CmiEnforce(0); + CmiAbort("getInfiCmiChunkThread failed"); }; @@ -2470,7 +2470,7 @@ static inline void *getInfiCmiChunk(int dataSize){ return res; } - CmiEnforce(0); + CmiAbort("getInfiCmiChunk failed"); }; @@ -3057,7 +3057,7 @@ void CmiDirect_put(struct infiDirectUserHandle *userHandle){ }; /** post and rdma_read that is a rdma get*/ if(ibv_post_send(node->infiData->qp,&wr,&bad_wr)){ - CmiEnforce(0); + CmiAbort("ibv_post_send failed"); } } -- 2.11.4.GIT