Don't hold the active queries lock while calling `make_query` by Zoxc · Pull Req...
source link: https://github.com/rust-lang/rust/pull/112333
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Conversation
Contributor
This moves the call to make_query
outside the parts that holds the active queries lock in try_collect_active_jobs
. This should help removed the deadlock and borrow panic that has been observed when printing the query stack during an ICE.
cc @SparrowLii
r? @cjgillot
added A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
labels
Contributor
I tried your change locally (making the compiler fail with However, I think this PR can be merged, since it cuts some of the possible causes of deadlocks. |
Contributor
And I tried to execute the generic implementation of |
Contributor
This makes sense. |
added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties.
labels
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
No reviews
None yet
Successfully merging this pull request may close these issues.
None yet
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK