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

Fix provenance-ABA in lockless queues using fuzzy provenance #122541

Closed
wants to merge 1 commit into from

Conversation

joboet
Copy link
Member

@joboet joboet commented Mar 15, 2024

This is a hot-fix for #121950 which solves the described problem using fuzzy provenance. Better solutions exist, but they require LLVM support and a lot more effort.

CC @RalfJung

@rustbot
Copy link
Collaborator

rustbot commented Mar 15, 2024

r? @Mark-Simulacrum

rustbot has assigned @Mark-Simulacrum.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Mar 15, 2024
@RalfJung
Copy link
Member

RalfJung commented Mar 15, 2024

Thanks for looking into this!

Unfortunately this will mean everyone using Miri on macOS will get warnings about the int2ptr casts in every program (since these types are using in pre-main code). That's also why CI fails.

I think ideally we'd find a solution where exposed provenance is only used with codegen, but Miri can track the proper provenance with the new CAS intrinsic we discussed. That doesn't require LLVM changes. It's still a lot more work, but I don't think this issue is particularly high priority.

@Mark-Simulacrum
Copy link
Member

I'm going to go ahead and close per @RalfJung's comment -- I don't think exposing lots of warnings is a good idea.

@Mark-Simulacrum Mark-Simulacrum added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants