Skip to content

Conversation

@glommer
Copy link
Collaborator

@glommer glommer commented Mar 19, 2021

What does this PR do?

Simplifies the link ring code - where I suspected a bug (unconfirmed, but the simplification is good), and fixes a serious problem in the code coming from iou.

A similar patch was sent to iou

Motivation

My app was behaving like it was possessed by the devil.

Related issues

ringbahn/iou#66

The code as is is prior to cancellations. Now that we support
cancellations we can simplify it, by making sure that we always
cancel the request once we're done sleeping.
This method takes a slice from the sqe queue, but that is completely
wrong: the sqe queue is a circular buffer, so if you try to get 2
elements at position n - 1 you access invalid memory.

This patch transforms the very helpful SQEs structure so that it now
only has the information needed to access each SQE and constructs them
from there.
@glommer glommer merged commit 390b935 into DataDog:master Mar 19, 2021
@glommer glommer deleted the io-uring-fixes branch March 19, 2021 02:23
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.

1 participant