net: Rename mono_delivery_time to tstamp_type for scalabilty
authorAbhishek Chauhan <quic_abchauha@quicinc.com>
Thu, 9 May 2024 21:18:32 +0000 (14:18 -0700)
committerMartin KaFai Lau <martin.lau@kernel.org>
Thu, 23 May 2024 21:14:23 +0000 (14:14 -0700)
commit4d25ca2d6801cfcf26f7f39c561611ba5be99bf8
tree15921ebd5e417bb05052b97e371199517e4d673a
parenta87f34e742d279d54d529e4bc4763fdaab32a466
net: Rename mono_delivery_time to tstamp_type for scalabilty

mono_delivery_time was added to check if skb->tstamp has delivery
time in mono clock base (i.e. EDT) otherwise skb->tstamp has
timestamp in ingress and delivery_time at egress.

Renaming the bitfield from mono_delivery_time to tstamp_type is for
extensibilty for other timestamps such as userspace timestamp
(i.e. SO_TXTIME) set via sock opts.

As we are renaming the mono_delivery_time to tstamp_type, it makes
sense to start assigning tstamp_type based on enum defined
in this commit.

Earlier we used bool arg flag to check if the tstamp is mono in
function skb_set_delivery_time, Now the signature of the functions
accepts tstamp_type to distinguish between mono and real time.

Also skb_set_delivery_type_by_clockid is a new function which accepts
clockid to determine the tstamp_type.

In future tstamp_type:1 can be extended to support userspace timestamp
by increasing the bitfield.

Signed-off-by: Abhishek Chauhan <quic_abchauha@quicinc.com>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Reviewed-by: Martin KaFai Lau <martin.lau@kernel.org>
Link: https://lore.kernel.org/r/20240509211834.3235191-2-quic_abchauha@quicinc.com
Signed-off-by: Martin KaFai Lau <martin.lau@kernel.org>
17 files changed:
include/linux/skbuff.h
include/net/inet_frag.h
net/bridge/netfilter/nf_conntrack_bridge.c
net/core/dev.c
net/core/filter.c
net/ieee802154/6lowpan/reassembly.c
net/ipv4/inet_fragment.c
net/ipv4/ip_fragment.c
net/ipv4/ip_output.c
net/ipv4/tcp_output.c
net/ipv6/ip6_output.c
net/ipv6/netfilter.c
net/ipv6/netfilter/nf_conntrack_reasm.c
net/ipv6/reassembly.c
net/ipv6/tcp_ipv6.c
net/sched/act_bpf.c
net/sched/cls_bpf.c