Implement uring sock recvfrom - #4
Merged
Merged
Conversation
Reduced lock contention in the main event loop tick by: 1. Splitting completion processing into three phases: data extraction, future removal, and resolution. 2. Acquiring the `futures` Mutex only once per batch of completions instead of per completion. 3. Reducing the `ring` lock scope to only the submit/drain operations. This improves CPU efficiency during high-concurrency I/O workloads.
- Implemented full UNIX socket support (Datagram, Server, Connection). - Implemented BlockingIOError handling (buffering) for Datagrams in sock_sendto. - Optimized sock_sendto with optimistic syscall fast-path (~831k ops/sec). - Added comprehensive tests and updated documentation.
- Use module-level constants for buffer defaults. - Simplify env var parsing with idiomatic . - Refactor to remove verbose/dead code. - Ensure comments reflect design decisions.
- Replaced long if-elif ladder in _process_completions with O(1) dict lookup. - Standardized all completion handler signatures to accept (fd, result, data). - Initialized _completion_handlers map in __init__ for performance.
- Removed all internal 'SOTA' / 'Phase' jargon from Rust source comments. - Refactored for cleaner dispatch. - Verified all Python modules for idiomatic code and comment quality.
- Restored 'RecvMsg' (9) and 'SendMsg' (10) variants in enum. - added 'ProvideBuffer' (11) and 'FixedFdTable' (12) as distinct variants. - Updated and (and lib.rs match) to be exhaustive. - Fixes compilation error caused by SOTA cleanup.
- Updated to use dynamic ports (port 0) instead of hardcoded ports to prevent flakes. - Added backticks to doc comments in to satisfy clippy lint. - Verified all tests pass.
- Added helper to kill stale processes on target ports before starting verification servers. - Added check with fallback to for environments missing . - Fixes flaky CI failures in and other modes due to 'Address in use' errors.
- Export and in validation script. - Reduces locked memory requirement from ~32MB to ~4MB. - Solves in restricted CI environments.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
No description provided.