Skip to content
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

gh-127481: Add EPOLLWAKEUP to the select module #127482

Merged
merged 9 commits into from
Dec 4, 2024

Conversation

rruuaanng
Copy link
Contributor

@rruuaanng rruuaanng commented Dec 1, 2024

Copy link
Member

@picnixz picnixz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The EPOLL_URING_WAKE is documented as being internal only. Similarly, EPOLLWAKEUP has some constraints:

/*
 * Request the handling of system wakeup events so as to prevent system suspends
 * from happening while those events are being processed.
 *
 * Assuming neither EPOLLET nor EPOLLONESHOT is set, system suspends will not be
 * re-allowed until epoll_wait is called again after consuming the wakeup
 * event(s).
 *
 * Requires CAP_BLOCK_SUSPEND
 */

I'm not sure we should add EPOLL_URING_WAKE. As for EPOLLWAKEUP, I think a .. versionadded:: next entry could be good (it also requires Linux Kernel 4.5 or later so such mention is worth adding).

Doc/library/select.rst Outdated Show resolved Hide resolved
@rruuaanng
Copy link
Contributor Author

rruuaanng commented Dec 1, 2024

Yes, it's a restricted function, but it does not prevent us from providing it to users who turn it on.

Edit

I think a .. versionadded:: next entry could be good (it also requires Linux Kernel 4.5 or later so such mention is worth adding).

Good suggestion. I'll add the version number that appeared for the first time tomorrow. It's too late today.

But for versionadded, it may not be necessary. If I remember correctly, it seems that there is no this entry in the document.
(I think.)

@picnixz
Copy link
Member

picnixz commented Dec 1, 2024

But for versionadded, it may not be necessary. If I remember correctly, it seems that there is no this entry in the document.

There is something just after the table... It says exactly what I expect the entry to say.

@rruuaanng
Copy link
Contributor Author

But for versionadded, it may not be necessary. If I remember correctly, it seems that there is no this entry in the document.

There is something just after the table... It says exactly what I expect the entry to say.

Ehm... I saw it :(, I'll add it.

@ZeroIntensity
Copy link
Member

CI failures look unrelated. I'll investigate.

@ZeroIntensity
Copy link
Member

So, based on the 66 return code that looks like an actual data race. But, I wasn't able to find anything recent related to that test, so it must be exceptionally rare. Re-running jobs seemed to do the trick, someone @ me if you notice it on another PR.

@rruuaanng
Copy link
Contributor Author

Thank you for your work. If there is any problem, I'll contact you as soon as problem :)

@rruuaanng rruuaanng changed the title gh-127481: Add EPOLL_URING_WAKE, EPOLLWAKEUP constants to select module gh-127481: Add EPOLLWAKEUP constants to select module Dec 3, 2024
@erlend-aasland erlend-aasland changed the title gh-127481: Add EPOLLWAKEUP constants to select module gh-127481: Add EPOLLWAKEUP to the select module Dec 3, 2024
Doc/library/select.rst Outdated Show resolved Hide resolved
Doc/library/select.rst Show resolved Hide resolved
@erlend-aasland erlend-aasland linked an issue Dec 3, 2024 that may be closed by this pull request
@encukou encukou merged commit 6bc3e83 into python:main Dec 4, 2024
45 checks passed
@encukou
Copy link
Member

encukou commented Dec 4, 2024

Thank you!

@rruuaanng
Copy link
Contributor Author

@encukou Thank you for your merge.

@rruuaanng rruuaanng deleted the add-poll-flag branch December 4, 2024 13:47
srinivasreddy pushed a commit to srinivasreddy/cpython that referenced this pull request Jan 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add EPOLLWAKEUP to the select module
5 participants