Skip to content

Use acquire/release barrier to synchronize completion of request and test/wait #11665

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 26, 2023

Conversation

devreal
Copy link
Contributor

@devreal devreal commented May 10, 2023

Before completing the request we should make sure that all other pieces are visible, i.e., the status. The release barrier should synchronize with an acquire barrier before reading the status in test/wait to ensure that status is current.

This also removes a full memory barrier at the beginning of test functions that does not seem to serve any purpose.

Thanks to @joerowell for the report.

Fixes #11652

…test/wait

Before completing the request we should make sure that all other pieces
are visible, the status. The release barrier should synchronize with
an acquire barrier before reading the status in test/wait.

This also removes a full memory barrier at the beginning of test functions
that does not seem to serve any purpose.

Signed-off-by: Joseph Schuchart <[email protected]>
@devreal devreal requested review from bosilca and abouteiller May 10, 2023 19:00
@devreal devreal self-assigned this May 10, 2023
@bosilca bosilca merged commit 5656a09 into open-mpi:main May 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Is there a reason why opal_atomic_mb is always issued?
2 participants