mailing list of musl libc
 help / color / mirror / code / Atom feed
* [musl] [PATCH] sys/epoll.h: add epoll ioctls
@ 2024-05-29  6:49 Joe Damato
  2024-05-29 13:17 ` Rich Felker
  0 siblings, 1 reply; 8+ messages in thread
From: Joe Damato @ 2024-05-29  6:49 UTC (permalink / raw)
  To: musl; +Cc: Joe Damato

add two ioctls to get and set struct epoll_params to allow users to
control epoll based busy polling of network sockets.

added to uapi in commit 18e2bf0edf4dd88d9656ec92395aa47392e85b61 (Linux
kernel 6.9 and newer).
---
 include/sys/epoll.h | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/include/sys/epoll.h b/include/sys/epoll.h
index ac81a841..5f975c4a 100644
--- a/include/sys/epoll.h
+++ b/include/sys/epoll.h
@@ -7,6 +7,7 @@ extern "C" {
 
 #include <stdint.h>
 #include <sys/types.h>
+#include <sys/ioctl.h>
 #include <fcntl.h>
 
 #define __NEED_sigset_t
@@ -54,6 +55,17 @@ __attribute__ ((__packed__))
 #endif
 ;
 
+struct epoll_params {
+	uint32_t busy_poll_usecs;
+	uint16_t busy_poll_budget;
+	uint8_t prefer_busy_poll;
+
+	uint8_t __pad;
+};
+
+#define EPOLL_IOC_TYPE 0x8A
+#define EPIOCSPARAMS _IOW(EPOLL_IOC_TYPE, 0x01, struct epoll_params)
+#define EPIOCGPARAMS _IOR(EPOLL_IOC_TYPE, 0x02, struct epoll_params)
 
 int epoll_create(int);
 int epoll_create1(int);
-- 
2.34.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2024-06-18 17:15 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-05-29  6:49 [musl] [PATCH] sys/epoll.h: add epoll ioctls Joe Damato
2024-05-29 13:17 ` Rich Felker
2024-05-29 15:11   ` Joe Damato
2024-06-02 23:05     ` Joe Damato
2024-06-10 16:05       ` Rich Felker
2024-06-10 17:15         ` Joe Damato
2024-06-12 17:10           ` Joe Damato
2024-06-18 17:15             ` Joe Damato

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).