|
|
Message-Id: <20240529064959.1733708-1-jdamato@fastly.com>
Date: Wed, 29 May 2024 06:49:59 +0000
From: Joe Damato <jdamato@...tly.com>
To: musl@...ts.openwall.com
Cc: Joe Damato <jdamato@...tly.com>
Subject: [PATCH] sys/epoll.h: add epoll ioctls
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
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.