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
..
Makefile net: hold netdev instance lock during rtnetlink operations 2025-03-06 12:59:44 -08: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
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
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_addr_lists_test.c
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
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.c net: Add options as a flexible array to struct ip_tunnel_info 2025-02-20 13:17:16 -08:00
dst_cache.c
failover.c
fib_notifier.c
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
gen_stats.c
gro.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-02-27 10:20:58 -08:00
gro_cells.c
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
lwtunnel.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-03-20 21:38:01 +01:00
mp_dmabuf_devmem.h
neighbour.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-03-20 21:38:01 +01:00
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
net_namespace.c net: Add net_passive_inc() and net_passive_dec(). 2025-02-18 18:33:29 -08:00
net_test.c
netclassid_cgroup.c
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
netdev_rx_queue.c net: drop rtnl_lock for queue_mgmt operations 2025-03-12 13:32:35 -07:00
netevent.c
netmem_priv.h
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.c page_pool: avoid infinite loop to schedule delayed worker 2025-02-18 12:48:29 +01:00
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
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
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.c tcp: cache RTAX_QUICKACK metric in a hot cache line 2025-03-18 13:44:59 +01:00
sock_destructor.h
sock_diag.c
sock_map.c BPF fixes: 2025-02-20 15:37:17 -08:00
sock_reuseport.c
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
utils.c
xdp.c xdp: remove xdp_alloc_skb_bulk() 2025-02-27 14:03:52 +01:00