osc/ucx: Fix bugs with dynamic windows #11095
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains three small bug fixes for dynamic windows in osc/ucx.
The first two fixes are for bugs introduced in this PR #10709 :
get_dynamic_win_info()
function always returnedOMPI_SUCCESS
even if it caused an error in the middle, which hid the next error belowOSC_UCX_STATE_DYNAMIC_LOCK_OFFSET
was introduced but no actualdynamic_lock
member was added, which resulted in corrupteddynamic_win_count
valueThe third issue is independent of the above PR, but it causes an error when we call
MPI_Rget
orMPI_Rput
for dynamic windows.As the
remote_addr
value for rget/rput was wrong, the dynamic window check always failed with rget/rput.I fixed this issue by simply removing dynamic window check for rget/rput, because the request is eventually forwarded to
ompi_osc_ucx_get/put
, which correctly checks dynamic window status anyway.