Skip to content
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

sync/atomic: compare and swap of inconsistently typed values with uninitialized Value [1.18 backport] #52615

Closed
gopherbot opened this issue Apr 29, 2022 · 3 comments
Labels
CherryPickApproved Used during the release process for point releases FrozenDueToAge
Milestone

Comments

@gopherbot
Copy link

@randall77 requested issue #52612 to be considered for backport to the next 1.18 minor release.

Ah yes, looks like a "race" between my CL 241661, which renamed the first-store-in-progress marker, and CL 241678, which introduced new instances of the old marker. I think we just need to agree on the new one.

@gopherbot Please open a backport issue for 1.18.

@gopherbot gopherbot added the CherryPickCandidate Used during the release process for point releases label Apr 29, 2022
@gopherbot gopherbot added this to the Go1.18.2 milestone Apr 29, 2022
@gopherbot
Copy link
Author

Change https://go.dev/cl/403198 mentions this issue: [release-branch.go1.18] sync/atomic: use consistent first-store-in-progress marker

@randall77
Copy link
Contributor

This is a serious issue with no workaround - it causes sync/atomic.Value to misbehave when using a combination of Load/Store and Swap/CompareAndSwap operations.

@dr2chase dr2chase added the CherryPickApproved Used during the release process for point releases label May 4, 2022
@gopherbot gopherbot removed the CherryPickCandidate Used during the release process for point releases label May 4, 2022
@gopherbot
Copy link
Author

Closed by merging 9247bdd to release-branch.go1.18.

gopherbot pushed a commit that referenced this issue May 9, 2022
…ogress marker

We need to use the same marker everywhere. My CL to rename the
marker (CL 241661) and the CL to add more uses of the marker
under the old name (CL 241678) weren't coordinated with each other.

Fixes #52615

Change-Id: I97023c0769e518491924ef457fe03bf64a2cefa6
Reviewed-on: https://go-review.googlesource.com/c/go/+/403094
Run-TryBot: Keith Randall <khr@golang.org>
Reviewed-by: Ian Lance Taylor <iant@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
Reviewed-on: https://go-review.googlesource.com/c/go/+/403198
@golang golang locked and limited conversation to collaborators May 9, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
CherryPickApproved Used during the release process for point releases FrozenDueToAge
Projects
None yet
Development

No branches or pull requests

3 participants