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
io: Add AsyncFd #2903
Merged
Merged
io: Add AsyncFd #2903
Commits on Oct 20, 2020
-
This adds AsyncFd, a unix-only structure to allow for read/writability states to be monitored for arbitrary file descriptors. Issue: tokio-rs#2728
Bryan Donlan committedOct 20, 2020 Configuration menu - View commit details
-
Copy full SHA for f4905ef - Browse repository at this point
Copy the full SHA f4905efView commit details -
driver: fix shutdown notification unreliability
Previously, there was a race window in which an IO driver shutting down could fail to notify ScheduledIo instances of this state; in particular, notification of outstanding ScheduledIo registrations was driven by `Driver::drop`, but registrations bypass `Driver` and go directly to a `Weak<Inner>`. The `Driver` holds the `Arc<Inner>` keeping `Inner` alive, but it's possible that a new handle could be registered (or a new readiness future created for an existing handle) after the `Driver::drop` handler runs and prior to `Inner` being dropped. This change fixes this in two parts: First, notification of outstanding ScheduledIo handles is pushed down into the drop method of `Inner` instead, and, second, we add state to ScheduledIo to ensure that we remember that the IO driver we're bound to has shut down after the initial shutdown notification, so that subsequent readiness future registrations can immediately return (instead of potentially blocking indefinitely). Fixes: tokio-rs#2924
Bryan Donlan committedOct 20, 2020 Configuration menu - View commit details
-
Copy full SHA for 799e763 - Browse repository at this point
Copy the full SHA 799e763View commit details
Commits on Oct 21, 2020
-
io_async_fd: add tests for wakeup on rt shutdown
Bryan Donlan committedOct 21, 2020 Configuration menu - View commit details
-
Copy full SHA for 62deeaf - Browse repository at this point
Copy the full SHA 62deeafView commit details -
async_fd: fixing a couple of PR nits
Bryan Donlan committedOct 21, 2020 Configuration menu - View commit details
-
Copy full SHA for 5b09dbf - Browse repository at this point
Copy the full SHA 5b09dbfView commit details -
driver: fix unused code warning on non-unix platforms
Bryan Donlan committedOct 21, 2020 Configuration menu - View commit details
-
Copy full SHA for 7333337 - Browse repository at this point
Copy the full SHA 7333337View commit details -
Bryan Donlan committed
Oct 21, 2020 Configuration menu - View commit details
-
Copy full SHA for f4398a9 - Browse repository at this point
Copy the full SHA f4398a9View commit details -
Bryan Donlan committed
Oct 21, 2020 Configuration menu - View commit details
-
Copy full SHA for fc9cb03 - Browse repository at this point
Copy the full SHA fc9cb03View commit details -
Bryan Donlan committed
Oct 21, 2020 Configuration menu - View commit details
-
Copy full SHA for 1f2d7ee - Browse repository at this point
Copy the full SHA 1f2d7eeView commit details -
Bryan Donlan committed
Oct 21, 2020 Configuration menu - View commit details
-
Copy full SHA for c4b73de - Browse repository at this point
Copy the full SHA c4b73deView commit details
Commits on Oct 22, 2020
-
async_fd: changes requested in PR
Bryan Donlan committedOct 22, 2020 Configuration menu - View commit details
-
Copy full SHA for cb28392 - Browse repository at this point
Copy the full SHA cb28392View commit details -
async_fd: rename ReadyGuard -> AsyncFdReadyGuard, fix clippy lint
Bryan Donlan committedOct 22, 2020 Configuration menu - View commit details
-
Copy full SHA for 029d89e - Browse repository at this point
Copy the full SHA 029d89eView commit details
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.