tools/include/uapi/asm-generic/socket.h | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-)
This also fixes a wrong definitions for SCM_TS_OPT_ID & SO_RCVPRIORITY.
Accidentally found while working on another patchset.
Cc: linux-kernel@vger.kernel.org
Cc: netdev@vger.kernel.org
Cc: Eric Dumazet <edumazet@google.com>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Vadim Fedorenko <vadim.fedorenko@linux.dev>
Cc: Willem de Bruijn <willemb@google.com>
Cc: Jason Xing <kerneljasonxing@gmail.com>
Cc: Anna Emese Nyiri <annaemesenyiri@gmail.com>
Fixes: a89568e9be75 ("selftests: txtimestamp: add SCM_TS_OPT_ID test")
Fixes: e45469e594b2 ("sock: Introduce SO_RCVPRIORITY socket option")
Signed-off-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
---
tools/include/uapi/asm-generic/socket.h | 21 +++++++++++++++++++--
1 file changed, 19 insertions(+), 2 deletions(-)
diff --git a/tools/include/uapi/asm-generic/socket.h b/tools/include/uapi/asm-generic/socket.h
index ffff554a5230..aa5016ff3d91 100644
--- a/tools/include/uapi/asm-generic/socket.h
+++ b/tools/include/uapi/asm-generic/socket.h
@@ -119,14 +119,31 @@
#define SO_DETACH_REUSEPORT_BPF 68
+#define SO_PREFER_BUSY_POLL 69
+#define SO_BUSY_POLL_BUDGET 70
+
+#define SO_NETNS_COOKIE 71
+
+#define SO_BUF_LOCK 72
+
+#define SO_RESERVE_MEM 73
+
+#define SO_TXREHASH 74
+
#define SO_RCVMARK 75
#define SO_PASSPIDFD 76
#define SO_PEERPIDFD 77
-#define SCM_TS_OPT_ID 78
+#define SO_DEVMEM_LINEAR 78
+#define SCM_DEVMEM_LINEAR SO_DEVMEM_LINEAR
+#define SO_DEVMEM_DMABUF 79
+#define SCM_DEVMEM_DMABUF SO_DEVMEM_DMABUF
+#define SO_DEVMEM_DONTNEED 80
+
+#define SCM_TS_OPT_ID 81
-#define SO_RCVPRIORITY 79
+#define SO_RCVPRIORITY 82
#if !defined(__KERNEL__)
--
2.43.0
From: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
Date: Sun, 9 Mar 2025 13:15:24 +0100
> This also fixes a wrong definitions for SCM_TS_OPT_ID & SO_RCVPRIORITY.
>
> Accidentally found while working on another patchset.
>
> Cc: linux-kernel@vger.kernel.org
> Cc: netdev@vger.kernel.org
> Cc: Eric Dumazet <edumazet@google.com>
> Cc: Jakub Kicinski <kuba@kernel.org>
> Cc: Vadim Fedorenko <vadim.fedorenko@linux.dev>
> Cc: Willem de Bruijn <willemb@google.com>
> Cc: Jason Xing <kerneljasonxing@gmail.com>
> Cc: Anna Emese Nyiri <annaemesenyiri@gmail.com>
> Fixes: a89568e9be75 ("selftests: txtimestamp: add SCM_TS_OPT_ID test")
> Fixes: e45469e594b2 ("sock: Introduce SO_RCVPRIORITY socket option")
> Signed-off-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com>
It seems the patch is marked as Changes Requested on patchwork.
Also, I think this is net.git material than net-next.
So, could you repost to net.git ?
Thanks!
Am Fr., 14. März 2025 um 20:53 Uhr schrieb Kuniyuki Iwashima
<kuniyu@amazon.com>:
>
> From: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
> Date: Sun, 9 Mar 2025 13:15:24 +0100
> > This also fixes a wrong definitions for SCM_TS_OPT_ID & SO_RCVPRIORITY.
> >
> > Accidentally found while working on another patchset.
> >
> > Cc: linux-kernel@vger.kernel.org
> > Cc: netdev@vger.kernel.org
> > Cc: Eric Dumazet <edumazet@google.com>
> > Cc: Jakub Kicinski <kuba@kernel.org>
> > Cc: Vadim Fedorenko <vadim.fedorenko@linux.dev>
> > Cc: Willem de Bruijn <willemb@google.com>
> > Cc: Jason Xing <kerneljasonxing@gmail.com>
> > Cc: Anna Emese Nyiri <annaemesenyiri@gmail.com>
> > Fixes: a89568e9be75 ("selftests: txtimestamp: add SCM_TS_OPT_ID test")
> > Fixes: e45469e594b2 ("sock: Introduce SO_RCVPRIORITY socket option")
> > Signed-off-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
Dear Kuniyuki,
Thanks for looking into this!
>
> Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com>
>
> It seems the patch is marked as Changes Requested on patchwork.
> Also, I think this is net.git material than net-next.
>
> So, could you repost to net.git ?
Have done:
https://lore.kernel.org/netdev/20250314214155.16046-1-aleksandr.mikhalitsyn@canonical.com/
Kind regards,
Alex
>
> Thanks!
>
>
Am So., 9. März 2025 um 13:15 Uhr schrieb Alexander Mikhalitsyn
<aleksandr.mikhalitsyn@canonical.com>:
>
> This also fixes a wrong definitions for SCM_TS_OPT_ID & SO_RCVPRIORITY.
>
> Accidentally found while working on another patchset.
>
> Cc: linux-kernel@vger.kernel.org
> Cc: netdev@vger.kernel.org
> Cc: Eric Dumazet <edumazet@google.com>
> Cc: Jakub Kicinski <kuba@kernel.org>
> Cc: Vadim Fedorenko <vadim.fedorenko@linux.dev>
> Cc: Willem de Bruijn <willemb@google.com>
> Cc: Jason Xing <kerneljasonxing@gmail.com>
> Cc: Anna Emese Nyiri <annaemesenyiri@gmail.com>
+cc Paolo Abeni <pabeni@redhat.com>
+cc Kuniyuki Iwashima <kuniyu@amazon.com>
> Fixes: a89568e9be75 ("selftests: txtimestamp: add SCM_TS_OPT_ID test")
> Fixes: e45469e594b2 ("sock: Introduce SO_RCVPRIORITY socket option")
> Signed-off-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
> ---
> tools/include/uapi/asm-generic/socket.h | 21 +++++++++++++++++++--
> 1 file changed, 19 insertions(+), 2 deletions(-)
>
> diff --git a/tools/include/uapi/asm-generic/socket.h b/tools/include/uapi/asm-generic/socket.h
> index ffff554a5230..aa5016ff3d91 100644
> --- a/tools/include/uapi/asm-generic/socket.h
> +++ b/tools/include/uapi/asm-generic/socket.h
> @@ -119,14 +119,31 @@
>
> #define SO_DETACH_REUSEPORT_BPF 68
>
> +#define SO_PREFER_BUSY_POLL 69
> +#define SO_BUSY_POLL_BUDGET 70
> +
> +#define SO_NETNS_COOKIE 71
> +
> +#define SO_BUF_LOCK 72
> +
> +#define SO_RESERVE_MEM 73
> +
> +#define SO_TXREHASH 74
> +
> #define SO_RCVMARK 75
>
> #define SO_PASSPIDFD 76
> #define SO_PEERPIDFD 77
>
> -#define SCM_TS_OPT_ID 78
> +#define SO_DEVMEM_LINEAR 78
> +#define SCM_DEVMEM_LINEAR SO_DEVMEM_LINEAR
> +#define SO_DEVMEM_DMABUF 79
> +#define SCM_DEVMEM_DMABUF SO_DEVMEM_DMABUF
> +#define SO_DEVMEM_DONTNEED 80
> +
> +#define SCM_TS_OPT_ID 81
>
> -#define SO_RCVPRIORITY 79
> +#define SO_RCVPRIORITY 82
>
> #if !defined(__KERNEL__)
>
> --
> 2.43.0
>
On Sun, Mar 9, 2025 at 1:15 PM Alexander Mikhalitsyn
<aleksandr.mikhalitsyn@canonical.com> wrote:
>
> This also fixes a wrong definitions for SCM_TS_OPT_ID & SO_RCVPRIORITY.
>
> Accidentally found while working on another patchset.
>
> Cc: linux-kernel@vger.kernel.org
> Cc: netdev@vger.kernel.org
> Cc: Eric Dumazet <edumazet@google.com>
> Cc: Jakub Kicinski <kuba@kernel.org>
> Cc: Vadim Fedorenko <vadim.fedorenko@linux.dev>
> Cc: Willem de Bruijn <willemb@google.com>
> Cc: Jason Xing <kerneljasonxing@gmail.com>
> Cc: Anna Emese Nyiri <annaemesenyiri@gmail.com>
> Fixes: a89568e9be75 ("selftests: txtimestamp: add SCM_TS_OPT_ID test")
> Fixes: e45469e594b2 ("sock: Introduce SO_RCVPRIORITY socket option")
> Signed-off-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
I'm not sure if it's a bug. As you may notice, in
arch/parisc/include/uapi/asm/socket.h, it has its own management of
definitions.
I'm worried that since this file is uapi, is it allowed to adjust the
number like this patch does if it's not a bug.
Otherwise, the change looks good to me.
Thanks,
Jason
> ---
> tools/include/uapi/asm-generic/socket.h | 21 +++++++++++++++++++--
> 1 file changed, 19 insertions(+), 2 deletions(-)
>
> diff --git a/tools/include/uapi/asm-generic/socket.h b/tools/include/uapi/asm-generic/socket.h
> index ffff554a5230..aa5016ff3d91 100644
> --- a/tools/include/uapi/asm-generic/socket.h
> +++ b/tools/include/uapi/asm-generic/socket.h
> @@ -119,14 +119,31 @@
>
> #define SO_DETACH_REUSEPORT_BPF 68
>
> +#define SO_PREFER_BUSY_POLL 69
> +#define SO_BUSY_POLL_BUDGET 70
> +
> +#define SO_NETNS_COOKIE 71
> +
> +#define SO_BUF_LOCK 72
> +
> +#define SO_RESERVE_MEM 73
> +
> +#define SO_TXREHASH 74
> +
> #define SO_RCVMARK 75
>
> #define SO_PASSPIDFD 76
> #define SO_PEERPIDFD 77
>
> -#define SCM_TS_OPT_ID 78
> +#define SO_DEVMEM_LINEAR 78
> +#define SCM_DEVMEM_LINEAR SO_DEVMEM_LINEAR
> +#define SO_DEVMEM_DMABUF 79
> +#define SCM_DEVMEM_DMABUF SO_DEVMEM_DMABUF
> +#define SO_DEVMEM_DONTNEED 80
> +
> +#define SCM_TS_OPT_ID 81
>
> -#define SO_RCVPRIORITY 79
> +#define SO_RCVPRIORITY 82
>
> #if !defined(__KERNEL__)
>
> --
> 2.43.0
>
Am Mo., 10. März 2025 um 06:33 Uhr schrieb Jason Xing
<kerneljasonxing@gmail.com>:
>
> On Sun, Mar 9, 2025 at 1:15 PM Alexander Mikhalitsyn
> <aleksandr.mikhalitsyn@canonical.com> wrote:
> >
> > This also fixes a wrong definitions for SCM_TS_OPT_ID & SO_RCVPRIORITY.
> >
> > Accidentally found while working on another patchset.
> >
> > Cc: linux-kernel@vger.kernel.org
> > Cc: netdev@vger.kernel.org
> > Cc: Eric Dumazet <edumazet@google.com>
> > Cc: Jakub Kicinski <kuba@kernel.org>
> > Cc: Vadim Fedorenko <vadim.fedorenko@linux.dev>
> > Cc: Willem de Bruijn <willemb@google.com>
> > Cc: Jason Xing <kerneljasonxing@gmail.com>
> > Cc: Anna Emese Nyiri <annaemesenyiri@gmail.com>
> > Fixes: a89568e9be75 ("selftests: txtimestamp: add SCM_TS_OPT_ID test")
> > Fixes: e45469e594b2 ("sock: Introduce SO_RCVPRIORITY socket option")
> > Signed-off-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
>
Hi Jason,
Thanks for looking into this!
> I'm not sure if it's a bug. As you may notice, in
> arch/parisc/include/uapi/asm/socket.h, it has its own management of
> definitions.
>
> I'm worried that since this file is uapi, is it allowed to adjust the
> number like this patch does if it's not a bug.
My understanding is that this file (tools/include/uapi/asm-generic/socket.h) is
a mirror copy of the actual UAPI file (uapi/asm-generic/socket.h),
and definitions need to be in sync with it.
But I absolutely agree that we need someone who knows that for sure
and can confirm.
Breaking anything, especially UAPI-related stuff is my nightmare.
>
> Otherwise, the change looks good to me.
Kind regards,
Alex
>
> Thanks,
> Jason
>
> > ---
> > tools/include/uapi/asm-generic/socket.h | 21 +++++++++++++++++++--
> > 1 file changed, 19 insertions(+), 2 deletions(-)
> >
> > diff --git a/tools/include/uapi/asm-generic/socket.h b/tools/include/uapi/asm-generic/socket.h
> > index ffff554a5230..aa5016ff3d91 100644
> > --- a/tools/include/uapi/asm-generic/socket.h
> > +++ b/tools/include/uapi/asm-generic/socket.h
> > @@ -119,14 +119,31 @@
> >
> > #define SO_DETACH_REUSEPORT_BPF 68
> >
> > +#define SO_PREFER_BUSY_POLL 69
> > +#define SO_BUSY_POLL_BUDGET 70
> > +
> > +#define SO_NETNS_COOKIE 71
> > +
> > +#define SO_BUF_LOCK 72
> > +
> > +#define SO_RESERVE_MEM 73
> > +
> > +#define SO_TXREHASH 74
> > +
> > #define SO_RCVMARK 75
> >
> > #define SO_PASSPIDFD 76
> > #define SO_PEERPIDFD 77
> >
> > -#define SCM_TS_OPT_ID 78
> > +#define SO_DEVMEM_LINEAR 78
> > +#define SCM_DEVMEM_LINEAR SO_DEVMEM_LINEAR
> > +#define SO_DEVMEM_DMABUF 79
> > +#define SCM_DEVMEM_DMABUF SO_DEVMEM_DMABUF
> > +#define SO_DEVMEM_DONTNEED 80
> > +
> > +#define SCM_TS_OPT_ID 81
> >
> > -#define SO_RCVPRIORITY 79
> > +#define SO_RCVPRIORITY 82
> >
> > #if !defined(__KERNEL__)
> >
> > --
> > 2.43.0
> >
Alexander Mikhalitsyn <alexander@mihalicyn.com> ezt írta (időpont:
2025. márc. 10., H, 9:22):
>
> Am Mo., 10. März 2025 um 06:33 Uhr schrieb Jason Xing
> <kerneljasonxing@gmail.com>:
> >
> > On Sun, Mar 9, 2025 at 1:15 PM Alexander Mikhalitsyn
> > <aleksandr.mikhalitsyn@canonical.com> wrote:
> > >
> > > This also fixes a wrong definitions for SCM_TS_OPT_ID & SO_RCVPRIORITY.
> > >
> > > Accidentally found while working on another patchset.
> > >
> > > Cc: linux-kernel@vger.kernel.org
> > > Cc: netdev@vger.kernel.org
> > > Cc: Eric Dumazet <edumazet@google.com>
> > > Cc: Jakub Kicinski <kuba@kernel.org>
> > > Cc: Vadim Fedorenko <vadim.fedorenko@linux.dev>
> > > Cc: Willem de Bruijn <willemb@google.com>
> > > Cc: Jason Xing <kerneljasonxing@gmail.com>
> > > Cc: Anna Emese Nyiri <annaemesenyiri@gmail.com>
> > > Fixes: a89568e9be75 ("selftests: txtimestamp: add SCM_TS_OPT_ID test")
> > > Fixes: e45469e594b2 ("sock: Introduce SO_RCVPRIORITY socket option")
> > > Signed-off-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
> >
>
> Hi Jason,
>
> Thanks for looking into this!
>
> > I'm not sure if it's a bug. As you may notice, in
> > arch/parisc/include/uapi/asm/socket.h, it has its own management of
> > definitions.
> >
> > I'm worried that since this file is uapi, is it allowed to adjust the
> > number like this patch does if it's not a bug.
>
> My understanding is that this file (tools/include/uapi/asm-generic/socket.h) is
> a mirror copy of the actual UAPI file (uapi/asm-generic/socket.h),
> and definitions need to be in sync with it.
I don’t completely understand this either—if the definitions need to
be in sync, why is there a discrepancy?
Specifically, I am referring to the ones that caused the shift in
numbering in uapi/asm-generic/socket.h:
#define SO_DEVMEM_LINEAR 78
#define SCM_DEVMEM_LINEAR SO_DEVMEM_LINEAR
#define SO_DEVMEM_DMABUF 79
#define SCM_DEVMEM_DMABUF SO_DEVMEM_DMABUF
#define SO_DEVMEM_DONTNEED 80
In the case of SO_RCVPRIORITY, I simply continued the numbering
sequence as it was—I didn’t intend to disrupt the structure of the
definitions. It’s possible that I made a mistake in doing so.
If this doesn’t cause any issues, I would also vote for modifying the
numbering. Could someone more familiar with this area confirm whether
adjusting the numbering is acceptable?
> But I absolutely agree that we need someone who knows that for sure
> and can confirm.
> Breaking anything, especially UAPI-related stuff is my nightmare.
>
> >
> > Otherwise, the change looks good to me.
>
> Kind regards,
> Alex
>
> >
> > Thanks,
> > Jason
> >
> > > ---
> > > tools/include/uapi/asm-generic/socket.h | 21 +++++++++++++++++++--
> > > 1 file changed, 19 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/tools/include/uapi/asm-generic/socket.h b/tools/include/uapi/asm-generic/socket.h
> > > index ffff554a5230..aa5016ff3d91 100644
> > > --- a/tools/include/uapi/asm-generic/socket.h
> > > +++ b/tools/include/uapi/asm-generic/socket.h
> > > @@ -119,14 +119,31 @@
> > >
> > > #define SO_DETACH_REUSEPORT_BPF 68
> > >
> > > +#define SO_PREFER_BUSY_POLL 69
> > > +#define SO_BUSY_POLL_BUDGET 70
> > > +
> > > +#define SO_NETNS_COOKIE 71
> > > +
> > > +#define SO_BUF_LOCK 72
> > > +
> > > +#define SO_RESERVE_MEM 73
> > > +
> > > +#define SO_TXREHASH 74
> > > +
> > > #define SO_RCVMARK 75
> > >
> > > #define SO_PASSPIDFD 76
> > > #define SO_PEERPIDFD 77
> > >
> > > -#define SCM_TS_OPT_ID 78
> > > +#define SO_DEVMEM_LINEAR 78
> > > +#define SCM_DEVMEM_LINEAR SO_DEVMEM_LINEAR
> > > +#define SO_DEVMEM_DMABUF 79
> > > +#define SCM_DEVMEM_DMABUF SO_DEVMEM_DMABUF
> > > +#define SO_DEVMEM_DONTNEED 80
> > > +
> > > +#define SCM_TS_OPT_ID 81
> > >
> > > -#define SO_RCVPRIORITY 79
> > > +#define SO_RCVPRIORITY 82
> > >
> > > #if !defined(__KERNEL__)
> > >
> > > --
> > > 2.43.0
> > >
From: Anna Nyiri <annaemesenyiri@gmail.com>
Date: Fri, 14 Mar 2025 14:31:34 +0100
> Alexander Mikhalitsyn <alexander@mihalicyn.com> ezt írta (időpont:
> 2025. márc. 10., H, 9:22):
> >
> > Am Mo., 10. März 2025 um 06:33 Uhr schrieb Jason Xing
> > <kerneljasonxing@gmail.com>:
> > >
> > > On Sun, Mar 9, 2025 at 1:15 PM Alexander Mikhalitsyn
> > > <aleksandr.mikhalitsyn@canonical.com> wrote:
> > > >
> > > > This also fixes a wrong definitions for SCM_TS_OPT_ID & SO_RCVPRIORITY.
> > > >
> > > > Accidentally found while working on another patchset.
> > > >
> > > > Cc: linux-kernel@vger.kernel.org
> > > > Cc: netdev@vger.kernel.org
> > > > Cc: Eric Dumazet <edumazet@google.com>
> > > > Cc: Jakub Kicinski <kuba@kernel.org>
> > > > Cc: Vadim Fedorenko <vadim.fedorenko@linux.dev>
> > > > Cc: Willem de Bruijn <willemb@google.com>
> > > > Cc: Jason Xing <kerneljasonxing@gmail.com>
> > > > Cc: Anna Emese Nyiri <annaemesenyiri@gmail.com>
> > > > Fixes: a89568e9be75 ("selftests: txtimestamp: add SCM_TS_OPT_ID test")
> > > > Fixes: e45469e594b2 ("sock: Introduce SO_RCVPRIORITY socket option")
> > > > Signed-off-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@canonical.com>
> > >
> >
> > Hi Jason,
> >
> > Thanks for looking into this!
> >
> > > I'm not sure if it's a bug. As you may notice, in
> > > arch/parisc/include/uapi/asm/socket.h, it has its own management of
> > > definitions.
> > >
> > > I'm worried that since this file is uapi, is it allowed to adjust the
> > > number like this patch does if it's not a bug.
The uAPI number definions are different between arch, but strictly,
files under tools/ are not the source of truth.
> >
> > My understanding is that this file (tools/include/uapi/asm-generic/socket.h) is
> > a mirror copy of the actual UAPI file (uapi/asm-generic/socket.h),
> > and definitions need to be in sync with it.
Right.
>
> I don’t completely understand this either—if the definitions need to
> be in sync, why is there a discrepancy?
>
> Specifically, I am referring to the ones that caused the shift in
> numbering in uapi/asm-generic/socket.h:
> #define SO_DEVMEM_LINEAR 78
> #define SCM_DEVMEM_LINEAR SO_DEVMEM_LINEAR
> #define SO_DEVMEM_DMABUF 79
> #define SCM_DEVMEM_DMABUF SO_DEVMEM_DMABUF
> #define SO_DEVMEM_DONTNEED 80
>
> In the case of SO_RCVPRIORITY, I simply continued the numbering
> sequence as it was
This should've followed include/uapi/asm-generic/socket.h.
Otherwise, a program compiled with tools/include/uapi/asm-generic/socket.h
does not work on kernel compiled with include/uapi/asm-generic/socket.h,
and the prog will invoke syscall with an unintentional number.
So, tools/include/uapi must be synced with include/uapi and fixing
up wrong definitions under tools/include/uapi is totally fine, and
this does not cause uAPI breakage, rather it's been broken.
© 2016 - 2026 Red Hat, Inc.