summaryrefslogtreecommitdiffstats
path: root/include/net/sock.h
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2017-03-31 14:59:25 -0700
committerDavid S. Miller <davem@davemloft.net>2017-04-02 19:34:55 -0700
commitd3fbff306c215946cdbcf9ace4d0b78e9f72b5c4 (patch)
treeb95dadd63a823008c3591a57b6de9aa1d89e4b8d /include/net/sock.h
parente270e966868530d2667ac0a0b1080560b2965408 (diff)
downloadlinux-d3fbff306c215946cdbcf9ace4d0b78e9f72b5c4.tar.gz
linux-d3fbff306c215946cdbcf9ace4d0b78e9f72b5c4.tar.bz2
linux-d3fbff306c215946cdbcf9ace4d0b78e9f72b5c4.zip
sock: correctly test SOCK_TIMESTAMP in sock_recv_ts_and_drops()
It seems the code does not match the intent. This broke packetdrill, and probably other programs. Fixes: 6c7c98bad488 ("sock: avoid dirtying sk_stamp, if possible") Signed-off-by: Eric Dumazet <edumazet@google.com> Cc: Paolo Abeni <pabeni@redhat.com> Acked-by: Paolo Abeni <pabeni@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/sock.h')
-rw-r--r--include/net/sock.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/net/sock.h b/include/net/sock.h
index 8e53158a7d95..66349e49d468 100644
--- a/include/net/sock.h
+++ b/include/net/sock.h
@@ -2250,7 +2250,7 @@ static inline void sock_recv_ts_and_drops(struct msghdr *msg, struct sock *sk,
if (sk->sk_flags & FLAGS_TS_OR_DROPS || sk->sk_tsflags & TSFLAGS_ANY)
__sock_recv_ts_and_drops(msg, sk, skb);
- else if (unlikely(sk->sk_flags & SOCK_TIMESTAMP))
+ else if (unlikely(sock_flag(sk, SOCK_TIMESTAMP)))
sk->sk_stamp = skb->tstamp;
else if (unlikely(sk->sk_stamp == SK_DEFAULT_STAMP))
sk->sk_stamp = 0;