Skip to content

Listing 7.18 / 7.19 / 7.20 - Potential Data Race#38

Open
ITHelpDec wants to merge 1 commit intoanthonywilliams:mainfrom
ITHelpDec:patch-8
Open

Listing 7.18 / 7.19 / 7.20 - Potential Data Race#38
ITHelpDec wants to merge 1 commit intoanthonywilliams:mainfrom
ITHelpDec:patch-8

Conversation

@ITHelpDec
Copy link

Given the following reading material here and here, please consider upgrading the memory-ordering of our .compare_exchange_strong() operations from...

std::memory_order_acquire

...to...

std::memory_order_acq_rel

...to ensure all accesses to ptr happen before its deletion.


Attached are examples of before and after results from Godbolt using thread sanitiser.


Thank you to Nate Eldridge for the great explanation and testing.

- consider upgrading to std::memory_order_acq_rel to ensure all accesses to ptr_ happen before its deletion
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant