]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net-timestamp: extend SOF_TIMESTAMPING_OPT_ID to HW timestamps
authorVadim Fedorenko <vadfed@meta.com>
Mon, 6 Mar 2023 16:07:38 +0000 (08:07 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 10 Jan 2024 16:10:23 +0000 (17:10 +0100)
[ Upstream commit 8ca5a5790b9a1ce147484d2a2c4e66d2553f3d6c ]

When the feature was added it was enabled for SW timestamps only but
with current hardware the same out-of-order timestamps can be seen.
Let's expand the area for the feature to all types of timestamps.

Signed-off-by: Vadim Fedorenko <vadfed@meta.com>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stable-dep-of: 7f6ca95d16b9 ("net: Implement missing getsockopt(SO_TIMESTAMPING_NEW)")
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/ipv4/ip_output.c
net/ipv6/ip6_output.c

index 493c679ea54f3ca8ad3694f5d33c6744b029b56e..d8ec802f975248c1e7f1a2d57f6d1ded8b07b354 100644 (file)
@@ -990,7 +990,7 @@ static int __ip_append_data(struct sock *sk,
        mtu = cork->gso_size ? IP_MAX_MTU : cork->fragsize;
        paged = !!cork->gso_size;
 
-       if (cork->tx_flags & SKBTX_ANY_SW_TSTAMP &&
+       if (cork->tx_flags & SKBTX_ANY_TSTAMP &&
            sk->sk_tsflags & SOF_TIMESTAMPING_OPT_ID)
                tskey = atomic_inc_return(&sk->sk_tskey) - 1;
 
index 3c2b2a85de3679b212d85cfa78168372041e8a0f..04822e2cba74a3c8901ef4f72a36814492f38951 100644 (file)
@@ -1506,7 +1506,7 @@ static int __ip6_append_data(struct sock *sk,
        mtu = cork->gso_size ? IP6_MAX_MTU : cork->fragsize;
        orig_mtu = mtu;
 
-       if (cork->tx_flags & SKBTX_ANY_SW_TSTAMP &&
+       if (cork->tx_flags & SKBTX_ANY_TSTAMP &&
            sk->sk_tsflags & SOF_TIMESTAMPING_OPT_ID)
                tskey = atomic_inc_return(&sk->sk_tskey) - 1;