net-timestamp: extend SCM_TIMESTAMPING ancillary data struct
[cascardo/linux.git] / include / net / sock.h
index b91c886..02f5b35 100644 (file)
@@ -2169,7 +2169,9 @@ sock_recv_timestamp(struct msghdr *msg, struct sock *sk, struct sk_buff *skb)
         */
        if (sock_flag(sk, SOCK_RCVTSTAMP) ||
            sock_flag(sk, SOCK_TIMESTAMPING_RX_SOFTWARE) ||
-           (kt.tv64 && sock_flag(sk, SOCK_TIMESTAMPING_SOFTWARE)) ||
+           (kt.tv64 &&
+            (sock_flag(sk, SOCK_TIMESTAMPING_SOFTWARE) ||
+             skb_shinfo(skb)->tx_flags & SKBTX_ANY_SW_TSTAMP)) ||
            (hwtstamps->hwtstamp.tv64 &&
             sock_flag(sk, SOCK_TIMESTAMPING_RAW_HARDWARE)))
                __sock_recv_timestamp(msg, sk, skb);