linux/net/core
Pauli Virtanen 983e0e4e87 net-timestamp: COMPLETION timestamp on packet tx completion
Add SOF_TIMESTAMPING_TX_COMPLETION, for requesting a software timestamp
when hardware reports a packet completed.

Completion tstamp is useful for Bluetooth, as hardware timestamps do not
exist in the HCI specification except for ISO packets, and the hardware
has a queue where packets may wait.  In this case the software SND
timestamp only reflects the kernel-side part of the total latency
(usually small) and queue length (usually 0 unless HW buffers
congested), whereas the completion report time is more informative of
the true latency.

It may also be useful in other cases where HW TX timestamps cannot be
obtained and user wants to estimate an upper bound to when the TX
probably happened.

Signed-off-by: Pauli Virtanen <pav@iki.fi>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
2025-03-25 12:48:05 -04:00
..
bpf_sk_storage.c bpf: Remove unnecessary BTF lookups in bpf_sk_storage_tracing_allowed 2025-01-29 08:51:51 -08:00
datagram.c net: add support for skbs with unreadable frags 2024-09-11 20:44:31 -07:00
dev_addr_lists_test.c
dev_addr_lists.c net: ti: icssg-prueth: Add Multicast Filtering support for VLAN in MAC mode 2025-01-14 12:17:27 +01:00
dev_api.c net: reorder dev_addr_sem lock 2025-03-19 18:52:00 +01:00
dev_ioctl.c Revert "net: replace dev_addr_sem with netdev instance lock" 2025-03-19 18:52:00 +01:00
dev.c net: reorder dev_addr_sem lock 2025-03-19 18:52:00 +01:00
dev.h Revert "net: replace dev_addr_sem with netdev instance lock" 2025-03-19 18:52:00 +01:00
devmem.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-03-13 23:08:11 +01:00
devmem.h net: prepare for non devmem TCP memory providers 2025-02-06 16:27:31 -08:00
drop_monitor.c drop_monitor: fix incorrect initialization order 2025-02-17 16:35:55 -08:00
dst_cache.c net: dst_cache: add two DEBUG_NET warnings 2024-06-03 18:50:09 -07:00
dst.c net: Add options as a flexible array to struct ip_tunnel_info 2025-02-20 13:17:16 -08:00
failover.c
fib_notifier.c net: do not acquire rtnl in fib_seq_sum() 2024-10-11 15:35:05 -07:00
fib_rules.c net: fib_rules: Enable DSCP mask usage 2025-02-21 16:08:48 -08:00
filter.c tcp: bpf: Support bpf_getsockopt for TCP_BPF_DELACK_MAX 2025-03-13 14:30:39 -07:00
flow_dissector.c net: remove '__' from __skb_flow_get_ports() 2025-02-24 14:27:53 -08:00
flow_offload.c
gen_estimator.c net: use unrcu_pointer() helper 2024-06-06 11:52:52 +02:00
gen_stats.c
gro_cells.c
gro.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-02-27 10:20:58 -08:00
gso.c
hotdata.c
hwbm.c
ieee8021q_helpers.c
link_watch.c ipvlan: Fix use-after-free in ipvlan_get_iflink(). 2025-01-07 17:50:49 -08:00
lwt_bpf.c bpf: lwtunnel: Prepare bpf_lwt_xmit_reroute() to future .flowi4_tos conversion. 2024-11-14 19:07:49 -08:00
lwtunnel.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-03-20 21:38:01 +01:00
Makefile net: hold netdev instance lock during rtnetlink operations 2025-03-06 12:59:44 -08:00
mp_dmabuf_devmem.h memory-provider: dmabuf devmem memory provider 2024-09-11 20:44:31 -07:00
neighbour.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-03-20 21:38:01 +01:00
net_namespace.c net: Add net_passive_inc() and net_passive_dec(). 2025-02-18 18:33:29 -08:00
net_test.c
net-procfs.c
net-sysfs.c Revert "net: replace dev_addr_sem with netdev instance lock" 2025-03-19 18:52:00 +01:00
net-sysfs.h
net-traces.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
netclassid_cgroup.c
netdev_rx_queue.c net: drop rtnl_lock for queue_mgmt operations 2025-03-12 13:32:35 -07:00
netdev-genl-gen.c net: create netdev_nl_sock to wrap bindings list 2025-03-12 13:32:35 -07:00
netdev-genl-gen.h net: create netdev_nl_sock to wrap bindings list 2025-03-12 13:32:35 -07:00
netdev-genl.c net: drop rtnl_lock for queue_mgmt operations 2025-03-12 13:32:35 -07:00
netevent.c
netmem_priv.h page_pool: devmem support 2024-09-11 20:44:31 -07:00
netpoll.c netconsole: allow selection of egress interface via MAC address 2025-03-19 19:17:58 +01:00
netprio_cgroup.c
of_net.c
page_pool_priv.h net: page_pool: don't try to stash the napi id 2025-01-27 14:37:41 -08:00
page_pool_user.c net: use napi_id_valid helper 2025-02-17 16:43:04 -08:00
page_pool.c page_pool: avoid infinite loop to schedule delayed worker 2025-02-18 12:48:29 +01:00
pktgen.c net: pktgen: remove all superfluous index assignements 2025-03-04 10:57:58 +01:00
ptp_classifier.c
request_sock.c
rtnetlink.c net: reorder dev_addr_sem lock 2025-03-19 18:52:00 +01:00
rtnl_net_debug.c dev: Hold rtnl_net_lock() for dev_ifsioc(). 2025-01-16 17:20:50 -08:00
scm.c tcp: devmem: don't write truncated dmabuf CMSGs to userspace 2025-02-25 18:15:43 -08:00
secure_seq.c tcp: use EXPORT_IPV6_MOD[_GPL]() 2025-02-14 13:09:39 -08:00
selftests.c net: phy: Support speed selection for PHY loopback 2025-03-20 08:45:08 +01:00
skb_fault_injection.c net: Implement fault injection forcing skb reallocation 2024-11-12 12:05:33 +01:00
skbuff.c net-timestamp: COMPLETION timestamp on packet tx completion 2025-03-25 12:48:05 -04:00
skmsg.c bpf: Fix wrong copied_seq calculation 2025-01-29 13:32:23 -08:00
sock_destructor.h
sock_diag.c net: use unrcu_pointer() helper 2024-06-06 11:52:52 +02:00
sock_map.c BPF fixes: 2025-02-20 15:37:17 -08:00
sock_reuseport.c net: core: annotate socks of struct sock_reuseport with __counted_by 2024-08-02 17:16:59 -07:00
sock.c tcp: cache RTAX_QUICKACK metric in a hot cache line 2025-03-18 13:44:59 +01:00
stream.c
sysctl_net_core.c net: set the minimum for net_hotdata.netdev_budget_usecs 2025-02-21 16:27:54 -08:00
timestamping.c net: Add the possibility to support a selected hwtstamp in netdevice 2024-12-16 12:51:40 +00:00
tso.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
utils.c net: Correct spelling in net/core 2024-08-26 09:37:23 -07:00
xdp.c xdp: remove xdp_alloc_skb_bulk() 2025-02-27 14:03:52 +01:00