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

doc: ban data races from spec #8897

Open
dvyukov opened this issue Oct 7, 2014 · 0 comments
Open

doc: ban data races from spec #8897

dvyukov opened this issue Oct 7, 2014 · 0 comments
Labels
Documentation NeedsDecision Feedback is required from experts, contributors, and/or the community before a change can be made.
Milestone

Comments

@dvyukov
Copy link
Member

dvyukov commented Oct 7, 2014

We need to remove all guarantees with respect to data races from the language
specification, effectively leaving them as undefined behavior or at least
implementation-defined behavior (as there can potentially be a more secure
implementation that provides basic safety guarantees in presence of data races). Pretend
that it's bug fix wrt Go1 guarantee.
Two reasons:
1. Current implementations don't implement what's specified about data races in the
spec. Gcc and llvm middle-ends assume race-free programs.
2. Sapphire concurrent GC algorithm assumes race-free programs as well.
Fixing the implementations will incur extremely high cost.

Here is proposed wording:
https://golang.org/cl/101330056/diff/40001/doc/go_mem.html
@rsc rsc added this to the Unplanned milestone Apr 10, 2015
@ALTree ALTree added the NeedsDecision Feedback is required from experts, contributors, and/or the community before a change can be made. label May 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Documentation NeedsDecision Feedback is required from experts, contributors, and/or the community before a change can be made.
Projects
None yet
Development

No branches or pull requests

3 participants