Added a debug type checking for request types (to make sure request size is correctly computed).
This commit was SVN r15856.
Этот коммит содержится в:
родитель
1d97c183e7
Коммит
67399e7c31
@ -50,15 +50,26 @@ typedef int (*mca_pml_v_protocol_base_component_finalize_fn_t)(void);
|
||||
* @param request (IN) the address of an ompi_request
|
||||
* @return address of the mca_vprotocol_base_request_t associated with the request
|
||||
*/
|
||||
#define VPROTOCOL_REQ(req) \
|
||||
((((mca_pml_base_request_t *) req)->req_type == MCA_PML_REQUEST_SEND) \
|
||||
? VPROTOCOL_SEND_REQ(req) \
|
||||
: VPROTOCOL_RECV_REQ(req))
|
||||
#define VPROTOCOL_RECV_REQ(req) \
|
||||
(((char *) req) + mca_pml_v.host_pml_req_recv_size)
|
||||
#define VPROTOCOL_SEND_REQ(req) \
|
||||
(((char *) req) + mca_pml_v.host_pml_req_send_size)
|
||||
|
||||
#if OMPI_ENABLE_DEBUG
|
||||
#define VPROTOCOL_REQ(req) ( \
|
||||
(MCA_PML_REQUEST_SEND == ((mca_pml_base_request_t *)req)->req_type) \
|
||||
? VPROTOCOL_SEND_REQ(req) \
|
||||
: ( \
|
||||
(MCA_PML_REQUEST_RECV == ((mca_pml_base_request_t *)req)->req_type) \
|
||||
? VPROTOCOL_RECV_REQ(req) \
|
||||
: (V_OUTPUT("VPROTOCOL_REQ: error, request type is %d (expected %d or %d)", ((mca_pml_base_request_t *)req)->req_type, MCA_PML_REQUEST_SEND, MCA_PML_REQUEST_RECV),NULL) \
|
||||
) \
|
||||
)
|
||||
#else
|
||||
#define VPROTOCOL_REQ(req) \
|
||||
((((mca_pml_base_request_t *) req)->req_type == MCA_PML_REQUEST_SEND) \
|
||||
? VPROTOCOL_SEND_REQ(req) \
|
||||
: VPROTOCOL_RECV_REQ(req))
|
||||
#endif
|
||||
|
||||
/**
|
||||
* PML_V_PROTOCOL component version and interface functions.
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user