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 UB in ClientData stuff. #320

Merged
merged 1 commit into from
Nov 20, 2024
Merged

Conversation

clalancette
Copy link
Collaborator

The num_in_flight stuff was still wrong here. First of all, we forgot to increment num_in_flight when actually kicking off a new query. Once we did that, we had to change the lock in NodeData to a recursive one, since the call to delete_client_data from ClientData could be called recursively. And then finally we had to drop the ClientData lock before the delete_client_data, since we are about to delete ourselves and the unlock would have been UB.

The num_in_flight stuff was *still* wrong here.  First of
all, we forgot to increment num_in_flight when actually
kicking off a new query.  Once we did that, we had to
change the lock in NodeData to a recursive one, since the
call to delete_client_data from ClientData could be called
recursively.  And then finally we had to drop the ClientData
lock before the delete_client_data, since we are about to
delete ourselves and the unlock would have been UB.

Signed-off-by: Chris Lalancette <[email protected]>
@Yadunund Yadunund merged commit d0447d3 into rolling Nov 20, 2024
8 checks passed
@Yadunund Yadunund deleted the clalancette/fix-client-data branch November 20, 2024 22:44
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.

2 participants