-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
extension: User space event #14712
extension: User space event #14712
Conversation
Signed-off-by: Yuchen Dai <[email protected]>
Signed-off-by: Yuchen Dai <[email protected]>
Signed-off-by: Yuchen Dai <[email protected]>
Signed-off-by: Yuchen Dai <[email protected]>
Signed-off-by: Yuchen Dai <[email protected]>
Signed-off-by: Yuchen Dai <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty good. Thanks so much for splitting this off and sending it out for review before the full change.
source/extensions/io_socket/user_space_io_socket/user_space_file_event_impl.h
Outdated
Show resolved
Hide resolved
source/extensions/io_socket/user_space_io_socket/user_space_file_event_impl.h
Outdated
Show resolved
Hide resolved
source/extensions/io_socket/user_space_io_socket/user_space_file_event_impl.cc
Outdated
Show resolved
Hide resolved
test/extensions/io_socket/user_space_io_socket/user_space_file_event_impl_test.cc
Outdated
Show resolved
Hide resolved
test/extensions/io_socket/user_space_io_socket/user_space_file_event_impl_test.cc
Outdated
Show resolved
Hide resolved
test/extensions/io_socket/user_space_io_socket/user_space_file_event_impl_test.cc
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
1 round update. Namespace name dedup and inner class comes later
source/extensions/io_socket/user_space_io_socket/user_space_file_event_impl.cc
Outdated
Show resolved
Hide resolved
source/extensions/io_socket/user_space_io_socket/user_space_file_event_impl.h
Outdated
Show resolved
Hide resolved
test/extensions/io_socket/user_space_io_socket/user_space_file_event_impl_test.cc
Outdated
Show resolved
Hide resolved
test/extensions/io_socket/user_space_io_socket/user_space_file_event_impl_test.cc
Outdated
Show resolved
Hide resolved
test/extensions/io_socket/user_space_io_socket/user_space_file_event_impl_test.cc
Outdated
Show resolved
Hide resolved
source/extensions/io_socket/user_space_io_socket/user_space_file_event_impl.h
Outdated
Show resolved
Hide resolved
source/extensions/io_socket/user_space_io_socket/user_space_file_event_impl.cc
Outdated
Show resolved
Hide resolved
Signed-off-by: Yuchen Dai <[email protected]>
Signed-off-by: Yuchen Dai <[email protected]>
Signed-off-by: Yuchen Dai <[email protected]>
@antoniovicente ready to be reviewed now |
Signed-off-by: Yuchen Dai <[email protected]>
source/extensions/io_socket/user_space_io_socket/user_space_file_event_impl.cc
Outdated
Show resolved
Hide resolved
Signed-off-by: Yuchen Dai <[email protected]>
Signed-off-by: Yuchen Dai <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
Signed-off-by: Yuchen Dai <[email protected]>
Signed-off-by: Yuchen Dai <[email protected]>
/assign @mattklein123 |
The latest commit dismissed the approval though. That commit is merely a trivial comment update. |
Matt is on paternity leave. @envoyproxy/senior-maintainers could one of you take a look? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good overall. I'm excited to see this feature moving forward!
Signed-off-by: Yuchen Dai <[email protected]>
@ggreenway Thanks! I address the included headers and also cleaned the bazel deps. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Signed-off-by: Yuchen Dai <[email protected]>
@ggreenway I believe the failing macos test is unrelated. It's failing consistently on other merged PRs. |
Mac CI fix was merged an hour ago. Please merge main and try again, and it should work. |
Signed-off-by: Yuchen Dai <[email protected]>
@ggreenway All green now! |
Interested in what this functionally is for. Userspace QUIC for HTTP/3? For use with gVisor's userspace Netstack? Something else? |
See #11725 This is a step towards generalized connect handling; one use case could be access to internal listeners which are reachable via HTTP CONNECT, and support of the CONNECT method over HTTP2. |
Introduce user space io socket handle on top of user space event at #14712 Userspace Io socket handles are always created with a peering handle. The write() methods populate the buffer in the peer handle. The read() methods consume the owned buffer. Signed-off-by: Yuchen Dai <[email protected]>
Commit Message:
UserSpaceFileEventImpl provides 3 functions
Additional Description:
Part of #13418
Risk Level: LOW all codes are in extension
Testing: Mocked userspace io handle to unit test userspace event.
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue]
[Optional Deprecated:]