* [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; 11+ 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] 11+ messages in thread
* Re: [musl] [PATCH] sys/epoll.h: add epoll ioctls
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
0 siblings, 1 reply; 11+ messages in thread
From: Rich Felker @ 2024-05-29 13:17 UTC (permalink / raw)
To: Joe Damato; +Cc: musl
On Wed, May 29, 2024 at 06:49:59AM +0000, Joe Damato wrote:
> 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
This is probably okay, but we should at least ask if sys/ioctl.h is
going to be a namespace mess. Is the intent to bring all of it in, or
just to get the EPIOC* macros which depend on _IOW and _IOR? On glibc,
does it pull in sys/ioctl.h?
Rich
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [musl] [PATCH] sys/epoll.h: add epoll ioctls
2024-05-29 13:17 ` Rich Felker
@ 2024-05-29 15:11 ` Joe Damato
2024-06-02 23:05 ` Joe Damato
0 siblings, 1 reply; 11+ messages in thread
From: Joe Damato @ 2024-05-29 15:11 UTC (permalink / raw)
To: Rich Felker; +Cc: musl
On Wed, May 29, 2024 at 09:17:07AM -0400, Rich Felker wrote:
> On Wed, May 29, 2024 at 06:49:59AM +0000, Joe Damato wrote:
> > 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
>
> This is probably okay, but we should at least ask if sys/ioctl.h is
> going to be a namespace mess. Is the intent to bring all of it in, or
> just to get the EPIOC* macros which depend on _IOW and _IOR?
Yes, sys/ioctl.h is pulled in for the _IOW and _IOR macros.
Similar to, for example, sys/mtio.h in musl, which also pulls in
sys/ioctl.h.
> On glibc, does it pull in sys/ioctl.h?
Yes, the code I've submit for glibc does pull in sys/ioctl.h.
That code has been approved by a glibc committer, but not yet merged
to the tree (I assume that will happen in a few days):
https://sourceware.org/pipermail/libc-alpha/2024-May/157166.html
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [musl] [PATCH] sys/epoll.h: add epoll ioctls
2024-05-29 15:11 ` Joe Damato
@ 2024-06-02 23:05 ` Joe Damato
2024-06-10 16:05 ` Rich Felker
0 siblings, 1 reply; 11+ messages in thread
From: Joe Damato @ 2024-06-02 23:05 UTC (permalink / raw)
To: Rich Felker; +Cc: musl
On Wed, May 29, 2024 at 08:11:13AM -0700, Joe Damato wrote:
> On Wed, May 29, 2024 at 09:17:07AM -0400, Rich Felker wrote:
> > On Wed, May 29, 2024 at 06:49:59AM +0000, Joe Damato wrote:
> > > 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
> >
> > This is probably okay, but we should at least ask if sys/ioctl.h is
> > going to be a namespace mess. Is the intent to bring all of it in, or
> > just to get the EPIOC* macros which depend on _IOW and _IOR?
>
> Yes, sys/ioctl.h is pulled in for the _IOW and _IOR macros.
> Similar to, for example, sys/mtio.h in musl, which also pulls in
> sys/ioctl.h.
>
> > On glibc, does it pull in sys/ioctl.h?
>
> Yes, the code I've submit for glibc does pull in sys/ioctl.h.
>
> That code has been approved by a glibc committer, but not yet merged
> to the tree (I assume that will happen in a few days):
>
> https://sourceware.org/pipermail/libc-alpha/2024-May/157166.html
Just wanted to follow up on the above.
Were you expecting me to make any changes or did you want to wait
until libc takes the code before accepting it?
FWIW:
uclibc has taken the patch here:
https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=8bb33a2e1f2baec2078581d77e181f1ead5f51aa
And musl has similar code in include/sys/mount.h:
https://git.musl-libc.org/cgit/musl/tree/include/sys/mount.h#n8
Thanks,
Joe
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [musl] [PATCH] sys/epoll.h: add epoll ioctls
2024-06-02 23:05 ` Joe Damato
@ 2024-06-10 16:05 ` Rich Felker
2024-06-10 17:15 ` Joe Damato
2024-07-16 22:34 ` Joe Damato
0 siblings, 2 replies; 11+ messages in thread
From: Rich Felker @ 2024-06-10 16:05 UTC (permalink / raw)
To: Joe Damato; +Cc: musl
On Sun, Jun 02, 2024 at 04:05:25PM -0700, Joe Damato wrote:
> On Wed, May 29, 2024 at 08:11:13AM -0700, Joe Damato wrote:
> > On Wed, May 29, 2024 at 09:17:07AM -0400, Rich Felker wrote:
> > > On Wed, May 29, 2024 at 06:49:59AM +0000, Joe Damato wrote:
> > > > 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
> > >
> > > This is probably okay, but we should at least ask if sys/ioctl.h is
> > > going to be a namespace mess. Is the intent to bring all of it in, or
> > > just to get the EPIOC* macros which depend on _IOW and _IOR?
> >
> > Yes, sys/ioctl.h is pulled in for the _IOW and _IOR macros.
> > Similar to, for example, sys/mtio.h in musl, which also pulls in
> > sys/ioctl.h.
> >
> > > On glibc, does it pull in sys/ioctl.h?
> >
> > Yes, the code I've submit for glibc does pull in sys/ioctl.h.
> >
> > That code has been approved by a glibc committer, but not yet merged
> > to the tree (I assume that will happen in a few days):
> >
> > https://sourceware.org/pipermail/libc-alpha/2024-May/157166.html
>
> Just wanted to follow up on the above.
>
> Were you expecting me to make any changes or did you want to wait
> until libc takes the code before accepting it?
>
> FWIW:
>
> uclibc has taken the patch here:
> https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=8bb33a2e1f2baec2078581d77e181f1ead5f51aa
>
> And musl has similar code in include/sys/mount.h:
> https://git.musl-libc.org/cgit/musl/tree/include/sys/mount.h#n8
I think it's okay as-is if this is what everyone else is doing too.
This is not a standard header so there aren't strong constraints on
what it can do; I just didn't want to be gratuitously more
namespace-invasive than on other systems with the same header.
Rich
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [musl] [PATCH] sys/epoll.h: add epoll ioctls
2024-06-10 16:05 ` Rich Felker
@ 2024-06-10 17:15 ` Joe Damato
2024-06-12 17:10 ` Joe Damato
2024-07-16 22:34 ` Joe Damato
1 sibling, 1 reply; 11+ messages in thread
From: Joe Damato @ 2024-06-10 17:15 UTC (permalink / raw)
To: Rich Felker; +Cc: musl
On Mon, Jun 10, 2024 at 12:05:52PM -0400, Rich Felker wrote:
> On Sun, Jun 02, 2024 at 04:05:25PM -0700, Joe Damato wrote:
> > On Wed, May 29, 2024 at 08:11:13AM -0700, Joe Damato wrote:
> > > On Wed, May 29, 2024 at 09:17:07AM -0400, Rich Felker wrote:
> > > > On Wed, May 29, 2024 at 06:49:59AM +0000, Joe Damato wrote:
> > > > > 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
> > > >
> > > > This is probably okay, but we should at least ask if sys/ioctl.h is
> > > > going to be a namespace mess. Is the intent to bring all of it in, or
> > > > just to get the EPIOC* macros which depend on _IOW and _IOR?
> > >
> > > Yes, sys/ioctl.h is pulled in for the _IOW and _IOR macros.
> > > Similar to, for example, sys/mtio.h in musl, which also pulls in
> > > sys/ioctl.h.
> > >
> > > > On glibc, does it pull in sys/ioctl.h?
> > >
> > > Yes, the code I've submit for glibc does pull in sys/ioctl.h.
> > >
> > > That code has been approved by a glibc committer, but not yet merged
> > > to the tree (I assume that will happen in a few days):
> > >
> > > https://sourceware.org/pipermail/libc-alpha/2024-May/157166.html
> >
> > Just wanted to follow up on the above.
> >
> > Were you expecting me to make any changes or did you want to wait
> > until libc takes the code before accepting it?
> >
> > FWIW:
> >
> > uclibc has taken the patch here:
> > https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=8bb33a2e1f2baec2078581d77e181f1ead5f51aa
> >
> > And musl has similar code in include/sys/mount.h:
> > https://git.musl-libc.org/cgit/musl/tree/include/sys/mount.h#n8
>
> I think it's okay as-is if this is what everyone else is doing too.
> This is not a standard header so there aren't strong constraints on
> what it can do; I just didn't want to be gratuitously more
> namespace-invasive than on other systems with the same header.
OK, sure that makes sense.
BTW, since my email glibc has merged this:
https://sourceware.org/git/?p=glibc.git;a=commit;h=92c270d32caf3f8d5a02b8e46c7ec5d9d0315158
Let me know if you'd like me to do anything else to help get this
merged to musl.
Thanks,
Joe
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [musl] [PATCH] sys/epoll.h: add epoll ioctls
2024-06-10 17:15 ` Joe Damato
@ 2024-06-12 17:10 ` Joe Damato
2024-06-18 17:15 ` Joe Damato
0 siblings, 1 reply; 11+ messages in thread
From: Joe Damato @ 2024-06-12 17:10 UTC (permalink / raw)
To: Rich Felker; +Cc: musl
On Mon, Jun 10, 2024 at 10:15:25AM -0700, Joe Damato wrote:
> On Mon, Jun 10, 2024 at 12:05:52PM -0400, Rich Felker wrote:
> > On Sun, Jun 02, 2024 at 04:05:25PM -0700, Joe Damato wrote:
> > > On Wed, May 29, 2024 at 08:11:13AM -0700, Joe Damato wrote:
> > > > On Wed, May 29, 2024 at 09:17:07AM -0400, Rich Felker wrote:
> > > > > On Wed, May 29, 2024 at 06:49:59AM +0000, Joe Damato wrote:
> > > > > > 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
> > > > >
> > > > > This is probably okay, but we should at least ask if sys/ioctl.h is
> > > > > going to be a namespace mess. Is the intent to bring all of it in, or
> > > > > just to get the EPIOC* macros which depend on _IOW and _IOR?
> > > >
> > > > Yes, sys/ioctl.h is pulled in for the _IOW and _IOR macros.
> > > > Similar to, for example, sys/mtio.h in musl, which also pulls in
> > > > sys/ioctl.h.
> > > >
> > > > > On glibc, does it pull in sys/ioctl.h?
> > > >
> > > > Yes, the code I've submit for glibc does pull in sys/ioctl.h.
> > > >
> > > > That code has been approved by a glibc committer, but not yet merged
> > > > to the tree (I assume that will happen in a few days):
> > > >
> > > > https://sourceware.org/pipermail/libc-alpha/2024-May/157166.html
> > >
> > > Just wanted to follow up on the above.
> > >
> > > Were you expecting me to make any changes or did you want to wait
> > > until libc takes the code before accepting it?
> > >
> > > FWIW:
> > >
> > > uclibc has taken the patch here:
> > > https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=8bb33a2e1f2baec2078581d77e181f1ead5f51aa
> > >
> > > And musl has similar code in include/sys/mount.h:
> > > https://git.musl-libc.org/cgit/musl/tree/include/sys/mount.h#n8
> >
> > I think it's okay as-is if this is what everyone else is doing too.
> > This is not a standard header so there aren't strong constraints on
> > what it can do; I just didn't want to be gratuitously more
> > namespace-invasive than on other systems with the same header.
>
> OK, sure that makes sense.
>
> BTW, since my email glibc has merged this:
> https://sourceware.org/git/?p=glibc.git;a=commit;h=92c270d32caf3f8d5a02b8e46c7ec5d9d0315158
>
> Let me know if you'd like me to do anything else to help get this
> merged to musl.
Apologies on bumping the thread again, just wanted to also mention
the man-pages project has also taken the new man page documenting
the interface for glibc:
https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/commit/?h=ioctl&id=e450bcf6e35a5c227c5e80cdb4e44bb89516a5ee
Is there an equivalent documentation I should submit a similar
change to that is musl specific? If so, please let me know and I'd
be happy to do so.
Thanks,
Joe
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [musl] [PATCH] sys/epoll.h: add epoll ioctls
2024-06-12 17:10 ` Joe Damato
@ 2024-06-18 17:15 ` Joe Damato
0 siblings, 0 replies; 11+ messages in thread
From: Joe Damato @ 2024-06-18 17:15 UTC (permalink / raw)
To: Rich Felker; +Cc: musl
On Wed, Jun 12, 2024 at 10:10:21AM -0700, Joe Damato wrote:
> On Mon, Jun 10, 2024 at 10:15:25AM -0700, Joe Damato wrote:
> > On Mon, Jun 10, 2024 at 12:05:52PM -0400, Rich Felker wrote:
> > > On Sun, Jun 02, 2024 at 04:05:25PM -0700, Joe Damato wrote:
> > > > On Wed, May 29, 2024 at 08:11:13AM -0700, Joe Damato wrote:
> > > > > On Wed, May 29, 2024 at 09:17:07AM -0400, Rich Felker wrote:
> > > > > > On Wed, May 29, 2024 at 06:49:59AM +0000, Joe Damato wrote:
[...]
> > > > > > This is probably okay, but we should at least ask if sys/ioctl.h is
> > > > > > going to be a namespace mess. Is the intent to bring all of it in, or
> > > > > > just to get the EPIOC* macros which depend on _IOW and _IOR?
> > > > >
> > > > > Yes, sys/ioctl.h is pulled in for the _IOW and _IOR macros.
> > > > > Similar to, for example, sys/mtio.h in musl, which also pulls in
> > > > > sys/ioctl.h.
> > > > >
> > > > > > On glibc, does it pull in sys/ioctl.h?
> > > > >
> > > > > Yes, the code I've submit for glibc does pull in sys/ioctl.h.
> > > > >
> > > > > That code has been approved by a glibc committer, but not yet merged
> > > > > to the tree (I assume that will happen in a few days):
> > > > >
> > > > > https://sourceware.org/pipermail/libc-alpha/2024-May/157166.html
> > > >
> > > > Just wanted to follow up on the above.
> > > >
> > > > Were you expecting me to make any changes or did you want to wait
> > > > until libc takes the code before accepting it?
> > > >
> > > > FWIW:
> > > >
> > > > uclibc has taken the patch here:
> > > > https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=8bb33a2e1f2baec2078581d77e181f1ead5f51aa
> > > >
> > > > And musl has similar code in include/sys/mount.h:
> > > > https://git.musl-libc.org/cgit/musl/tree/include/sys/mount.h#n8
> > >
> > > I think it's okay as-is if this is what everyone else is doing too.
> > > This is not a standard header so there aren't strong constraints on
> > > what it can do; I just didn't want to be gratuitously more
> > > namespace-invasive than on other systems with the same header.
> >
> > OK, sure that makes sense.
> >
> > BTW, since my email glibc has merged this:
> > https://sourceware.org/git/?p=glibc.git;a=commit;h=92c270d32caf3f8d5a02b8e46c7ec5d9d0315158
> >
> > Let me know if you'd like me to do anything else to help get this
> > merged to musl.
>
> Apologies on bumping the thread again, just wanted to also mention
> the man-pages project has also taken the new man page documenting
> the interface for glibc:
>
> https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/commit/?h=ioctl&id=e450bcf6e35a5c227c5e80cdb4e44bb89516a5ee
>
> Is there an equivalent documentation I should submit a similar
> change to that is musl specific? If so, please let me know and I'd
> be happy to do so.
Looks like the above link was wrong / stale or something, not sure
what happened there -- sorry about that!
Here's a link showing the new interface is documented now in the
man-pages project:
https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/commit/?id=e450bcf6e35a5c227c5e80cdb4e44bb89516a5ee
and the man-pages announcement of the new version released, which
mentions ioctl_eventpoll being included in this release:
https://lore.kernel.org/linux-man/cpolays26kcjvekvowwik3di3ut66puls47w3gvdfwep66uaul@ka4omfzltwcs/
Likewise, uclibc-ng has made a new release with the new interface:
https://mailman.openadk.org/mailman3/hyperkitty/list/devel@uclibc-ng.org/thread/AGCAPZZ5OFFN4P2F6WG6LKD6OUUT5NPE/
I would assume glibc will cut a new revision in ~August according to
their wiki, which will include this ioctl.
Let me know if there's anything at all I can do to help you / the
musl project get my patch merged.
Thanks,
Joe
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [musl] [PATCH] sys/epoll.h: add epoll ioctls
2024-06-10 16:05 ` Rich Felker
2024-06-10 17:15 ` Joe Damato
@ 2024-07-16 22:34 ` Joe Damato
2024-07-23 23:51 ` Rich Felker
1 sibling, 1 reply; 11+ messages in thread
From: Joe Damato @ 2024-07-16 22:34 UTC (permalink / raw)
To: Rich Felker; +Cc: musl
Hi:
On Mon, Jun 10, 2024 at 12:05:52PM -0400, Rich Felker wrote:
[.. snip ..]
> I think it's okay as-is if this is what everyone else is doing too.
> This is not a standard header so there aren't strong constraints on
> what it can do; I just didn't want to be gratuitously more
> namespace-invasive than on other systems with the same header.
Just wanted to follow up on getting this patch merged. It was
mentioned on IRC that it was queued; let me know if there's anything
I can do to help get this merged.
Thanks,
Joe
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [musl] [PATCH] sys/epoll.h: add epoll ioctls
2024-07-16 22:34 ` Joe Damato
@ 2024-07-23 23:51 ` Rich Felker
2024-07-24 17:12 ` Joe Damato
0 siblings, 1 reply; 11+ messages in thread
From: Rich Felker @ 2024-07-23 23:51 UTC (permalink / raw)
To: Joe Damato; +Cc: musl
On Tue, Jul 16, 2024 at 03:34:10PM -0700, Joe Damato wrote:
> Hi:
>
> On Mon, Jun 10, 2024 at 12:05:52PM -0400, Rich Felker wrote:
>
> [.. snip ..]
>
> > I think it's okay as-is if this is what everyone else is doing too.
> > This is not a standard header so there aren't strong constraints on
> > what it can do; I just didn't want to be gratuitously more
> > namespace-invasive than on other systems with the same header.
>
> Just wanted to follow up on getting this patch merged. It was
> mentioned on IRC that it was queued; let me know if there's anything
> I can do to help get this merged.
I was just slow catching up on stuff after taking a vacation, but it's
pushed now. Let me know if anything looks wrong.
Rich
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [musl] [PATCH] sys/epoll.h: add epoll ioctls
2024-07-23 23:51 ` Rich Felker
@ 2024-07-24 17:12 ` Joe Damato
0 siblings, 0 replies; 11+ messages in thread
From: Joe Damato @ 2024-07-24 17:12 UTC (permalink / raw)
To: Rich Felker; +Cc: musl
On Tue, Jul 23, 2024 at 07:51:39PM -0400, Rich Felker wrote:
> On Tue, Jul 16, 2024 at 03:34:10PM -0700, Joe Damato wrote:
> > Hi:
> >
> > On Mon, Jun 10, 2024 at 12:05:52PM -0400, Rich Felker wrote:
> >
> > [.. snip ..]
> >
> > > I think it's okay as-is if this is what everyone else is doing too.
> > > This is not a standard header so there aren't strong constraints on
> > > what it can do; I just didn't want to be gratuitously more
> > > namespace-invasive than on other systems with the same header.
> >
> > Just wanted to follow up on getting this patch merged. It was
> > mentioned on IRC that it was queued; let me know if there's anything
> > I can do to help get this merged.
>
> I was just slow catching up on stuff after taking a vacation, but it's
> pushed now. Let me know if anything looks wrong.
No problem; looks good to me.
Thanks for applying the patch!
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2024-07-24 17:13 UTC | newest]
Thread overview: 11+ 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
2024-07-16 22:34 ` Joe Damato
2024-07-23 23:51 ` Rich Felker
2024-07-24 17:12 ` 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).