lib/posix-poll: Make epoll_ctl identify files by (fd + file description) #1198
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.
Description of changes
Previously epoll_ctl would identify epoll entries by fd alone, in accordance with published documentation (see
epoll_ctl(2)
).However, the Linux kernel actually identifies entries by a tuple of (fd, file description) instead, a behavior on which some applications mistakenly depend.
In order to support these applications we have to mimic this behavior.
This changeset implements the above described identification of files, along with relevant cleanup of epoll_ctl-related code.
In addition, the first commit in the PR fixes an omission whereby
epoll_ctl
would fail to lookup thefd
when Unikraft is configured without the legacy vfscore.Prerequisite checklist
checkpatch.uk
on your commit series before opening this PR;Base target
Additional configuration
Should work with or without
CONFIG_LIBVFSCORE
.