Skip to content

Commit d448efd

Browse files
committed
UCX osc: properly clean up requests in case of errors
Signed-off-by: Joseph Schuchart <[email protected]>
1 parent 73a1834 commit d448efd

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

ompi/mca/osc/ucx/osc_ucx_comm.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -998,6 +998,7 @@ int ompi_osc_ucx_rput(const void *origin_addr, int origin_count,
998998
sizeof(uint64_t), remote_addr,
999999
req_completion, ucx_req);
10001000
if (ret != OMPI_SUCCESS) {
1001+
OMPI_OSC_UCX_REQUEST_RETURN(ucx_req);
10011002
return ret;
10021003
}
10031004

@@ -1049,6 +1050,7 @@ int ompi_osc_ucx_rget(void *origin_addr, int origin_count,
10491050
sizeof(uint64_t), remote_addr,
10501051
req_completion, ucx_req);
10511052
if (ret != OMPI_SUCCESS) {
1053+
OMPI_OSC_UCX_REQUEST_RETURN(ucx_req);
10521054
return ret;
10531055
}
10541056

@@ -1077,6 +1079,7 @@ int ompi_osc_ucx_raccumulate(const void *origin_addr, int origin_count,
10771079
ret = ompi_osc_ucx_accumulate(origin_addr, origin_count, origin_dt, target, target_disp,
10781080
target_count, target_dt, op, win);
10791081
if (ret != OMPI_SUCCESS) {
1082+
OMPI_OSC_UCX_REQUEST_RETURN(ucx_req);
10801083
return ret;
10811084
}
10821085

@@ -1111,6 +1114,7 @@ int ompi_osc_ucx_rget_accumulate(const void *origin_addr, int origin_count,
11111114
target, target_disp, target_count,
11121115
target_datatype, op, win);
11131116
if (ret != OMPI_SUCCESS) {
1117+
OMPI_OSC_UCX_REQUEST_RETURN(ucx_req);
11141118
return ret;
11151119
}
11161120

0 commit comments

Comments
 (0)