-
Notifications
You must be signed in to change notification settings - Fork 10
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
Refine select nodelay #211
Merged
Merged
Changes from all commits
Commits
Show all changes
62 commits
Select commit
Hold shift + click to select a range
372784e
rewrite FdSet and it's uses
yizhuoliang 53fd0b0
FdSet init from raw fd_set
yizhuoliang 7f8f1a4
attempt to fix borrowing, kernel_select nonblocking
yizhuoliang 3d3c720
attempt continued
yizhuoliang c28e122
fix is_set
yizhuoliang 66434dd
attempt to fix borrow checking within select
yizhuoliang af7760a
fix in-select borrow, fix warnings
yizhuoliang f752848
cleanup
yizhuoliang dfe4f91
fix a warning
yizhuoliang e377010
fix serious typo
yizhuoliang 12f2375
fix typo
yizhuoliang 968604e
debugging
yizhuoliang 15af3b6
debugging
yizhuoliang 1b382b5
prints
yizhuoliang 654abcc
prints!!
yizhuoliang c88e28e
debugging
yizhuoliang 2b57dac
debugging
yizhuoliang 6739514
debugging
yizhuoliang 276be6a
debugging
yizhuoliang 6886660
debug
yizhuoliang 668a92d
debuging
yizhuoliang 4b89ca3
update
yizhuoliang 0706eb3
debug
yizhuoliang 04b8c43
debug
yizhuoliang 768e909
debug
yizhuoliang 3c157e8
debug
yizhuoliang e618bc1
debug
yizhuoliang c6e23c3
cleanup and refactor
yizhuoliang 6d13964
fixing the nfds parameter for kernel select
yizhuoliang f7d8695
rawfd in socketdesc
rennergade 98c19c8
rawfd in socketdesc
rennergade 5d44346
rawfd in socketdesc
rennergade c9042f6
rawfd in socketdesc
rennergade f4d4e71
rawfd in socketdesc
rennergade 6a49aaf
rawfd in socketdesc
rennergade b308497
rawfd in socketdesc
rennergade 71f8cd5
rawfd in socketdesc
rennergade 18541b0
rawfd in socketdesc
rennergade f012a49
rawfd in socketdesc
rennergade 1068027
rawfd in socketdesc
rennergade f8fcab7
rawfd in socketdesc
rennergade 36edf84
increase timeout
rennergade 3359aea
change gettimeofday log level
rennergade ab57640
migrate FdSet, nodelay getsockopt, accept rawfd
yizhuoliang 3c49f1f
small fix
yizhuoliang fc52610
store rawfd in acpt/lst/cnct, fix INPROGRESS
yizhuoliang 75050b5
fix ownership
yizhuoliang 667b15a
of course domain sockets don't have raw_sys_fd
yizhuoliang fbc3f15
fix warnings
yizhuoliang 4a1fa40
fix warnings
yizhuoliang f4ecd78
small coding style fixes
yizhuoliang 5cb8ded
add blank line
yizhuoliang 20d3176
add TCP level options
yizhuoliang a47f167
getsockopt tcp without kernel
yizhuoliang 77d3004
add FdSet::clear back for tests
yizhuoliang cca05f9
fix warnings
yizhuoliang 1642070
fix warning
yizhuoliang bc32d01
revert select sleep
rennergade 720ece9
fix PR suggestions
yizhuoliang 7e3764a
refactor kernel select logic
yizhuoliang eebbd66
reorganize
yizhuoliang 6496168
update
yizhuoliang File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Oops, something went wrong.
Oops, something went wrong.
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.
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.
theres a lot of nesting here, maybe condense some of this to one liners for readability
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.
Following Nick's suggestion, the nested loop can be modified as something like this:
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.
this is probably not a great idea because I believe creating a hashmap is slow, so even though the algorithmic complexity may be better N should never be large enough where it surpasses that allocation cost.