linux/arch
Vadim Fedorenko 4aecca4c76 net_tstamp: add SCM_TS_OPT_ID to provide OPT_ID in control message
SOF_TIMESTAMPING_OPT_ID socket option flag gives a way to correlate TX
timestamps and packets sent via socket. Unfortunately, there is no way
to reliably predict socket timestamp ID value in case of error returned
by sendmsg. For UDP sockets it's impossible because of lockless
nature of UDP transmit, several threads may send packets in parallel. In
case of RAW sockets MSG_MORE option makes things complicated. More
details are in the conversation [1].
This patch adds new control message type to give user-space
software an opportunity to control the mapping between packets and
values by providing ID with each sendmsg for UDP sockets.
The documentation is also added in this patch.

[1] https://lore.kernel.org/netdev/CALCETrU0jB+kg0mhV6A8mrHfTE1D1pr1SD_B9Eaa9aDPfgHdtA@mail.gmail.com/

Reviewed-by: Willem de Bruijn <willemb@google.com>
Reviewed-by: Jason Xing <kerneljasonxing@gmail.com>
Signed-off-by: Vadim Fedorenko <vadfed@meta.com>
Link: https://patch.msgid.link/20241001125716.2832769-2-vadfed@meta.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2024-10-04 11:52:19 -07:00
..
alpha net_tstamp: add SCM_TS_OPT_ID to provide OPT_ID in control message 2024-10-04 11:52:19 -07:00
arc move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
arm move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
arm64 move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
csky mm: make arch_get_unmapped_area() take vm_flags by default 2024-09-09 16:39:13 -07:00
hexagon hexagon: vdso: Fix build failure 2024-09-23 08:17:50 -07:00
loongarch move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
m68k m68knommu: updates and fixes for v6.12 2024-09-24 10:48:44 -07:00
microblaze move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
mips net_tstamp: add SCM_TS_OPT_ID to provide OPT_ID in control message 2024-10-04 11:52:19 -07:00
nios2 move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
openrisc openrisc: convert to generic syscall table 2024-07-10 14:23:38 +02:00
parisc net_tstamp: add SCM_TS_OPT_ID to provide OPT_ID in control message 2024-10-04 11:52:19 -07:00
powerpc move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
riscv x86: 2024-09-28 09:20:14 -07:00
s390 x86: 2024-09-28 09:20:14 -07:00
sh move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
sparc net_tstamp: add SCM_TS_OPT_ID to provide OPT_ID in control message 2024-10-04 11:52:19 -07:00
um move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
x86 move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
xtensa move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
.gitignore
Kconfig Rust changes for v6.12 2024-09-25 10:25:40 -07:00