Commit 3d359fab authored by Jason Xing's avatar Jason Xing Committed by David S. Miller

tcp: introduce dropreasons in receive path

Soon later patches can use these relatively more accurate
reasons to recognise and find out the cause.
Signed-off-by: default avatarJason Xing <kernelxing@tencent.com>
Reviewed-by: default avatarEric Dumazet <edumazet@google.com>
Reviewed-by: default avatarDavid Ahern <dsahern@kernel.org>
Reviewed-by: default avatarKuniyuki Iwashima <kuniyu@amazon.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 253541a3
...@@ -30,6 +30,7 @@ ...@@ -30,6 +30,7 @@
FN(TCP_AOFAILURE) \ FN(TCP_AOFAILURE) \
FN(SOCKET_BACKLOG) \ FN(SOCKET_BACKLOG) \
FN(TCP_FLAGS) \ FN(TCP_FLAGS) \
FN(TCP_ABORT_ON_DATA) \
FN(TCP_ZEROWINDOW) \ FN(TCP_ZEROWINDOW) \
FN(TCP_OLD_DATA) \ FN(TCP_OLD_DATA) \
FN(TCP_OVERWINDOW) \ FN(TCP_OVERWINDOW) \
...@@ -37,6 +38,7 @@ ...@@ -37,6 +38,7 @@
FN(TCP_RFC7323_PAWS) \ FN(TCP_RFC7323_PAWS) \
FN(TCP_OLD_SEQUENCE) \ FN(TCP_OLD_SEQUENCE) \
FN(TCP_INVALID_SEQUENCE) \ FN(TCP_INVALID_SEQUENCE) \
FN(TCP_INVALID_ACK_SEQUENCE) \
FN(TCP_RESET) \ FN(TCP_RESET) \
FN(TCP_INVALID_SYN) \ FN(TCP_INVALID_SYN) \
FN(TCP_CLOSE) \ FN(TCP_CLOSE) \
...@@ -204,6 +206,11 @@ enum skb_drop_reason { ...@@ -204,6 +206,11 @@ enum skb_drop_reason {
SKB_DROP_REASON_SOCKET_BACKLOG, SKB_DROP_REASON_SOCKET_BACKLOG,
/** @SKB_DROP_REASON_TCP_FLAGS: TCP flags invalid */ /** @SKB_DROP_REASON_TCP_FLAGS: TCP flags invalid */
SKB_DROP_REASON_TCP_FLAGS, SKB_DROP_REASON_TCP_FLAGS,
/**
* @SKB_DROP_REASON_TCP_ABORT_ON_DATA: abort on data, corresponding to
* LINUX_MIB_TCPABORTONDATA
*/
SKB_DROP_REASON_TCP_ABORT_ON_DATA,
/** /**
* @SKB_DROP_REASON_TCP_ZEROWINDOW: TCP receive window size is zero, * @SKB_DROP_REASON_TCP_ZEROWINDOW: TCP receive window size is zero,
* see LINUX_MIB_TCPZEROWINDOWDROP * see LINUX_MIB_TCPZEROWINDOWDROP
...@@ -228,13 +235,19 @@ enum skb_drop_reason { ...@@ -228,13 +235,19 @@ enum skb_drop_reason {
SKB_DROP_REASON_TCP_OFOMERGE, SKB_DROP_REASON_TCP_OFOMERGE,
/** /**
* @SKB_DROP_REASON_TCP_RFC7323_PAWS: PAWS check, corresponding to * @SKB_DROP_REASON_TCP_RFC7323_PAWS: PAWS check, corresponding to
* LINUX_MIB_PAWSESTABREJECTED * LINUX_MIB_PAWSESTABREJECTED, LINUX_MIB_PAWSACTIVEREJECTED
*/ */
SKB_DROP_REASON_TCP_RFC7323_PAWS, SKB_DROP_REASON_TCP_RFC7323_PAWS,
/** @SKB_DROP_REASON_TCP_OLD_SEQUENCE: Old SEQ field (duplicate packet) */ /** @SKB_DROP_REASON_TCP_OLD_SEQUENCE: Old SEQ field (duplicate packet) */
SKB_DROP_REASON_TCP_OLD_SEQUENCE, SKB_DROP_REASON_TCP_OLD_SEQUENCE,
/** @SKB_DROP_REASON_TCP_INVALID_SEQUENCE: Not acceptable SEQ field */ /** @SKB_DROP_REASON_TCP_INVALID_SEQUENCE: Not acceptable SEQ field */
SKB_DROP_REASON_TCP_INVALID_SEQUENCE, SKB_DROP_REASON_TCP_INVALID_SEQUENCE,
/**
* @SKB_DROP_REASON_TCP_INVALID_ACK_SEQUENCE: Not acceptable ACK SEQ
* field because ack sequence is not in the window between snd_una
* and snd_nxt
*/
SKB_DROP_REASON_TCP_INVALID_ACK_SEQUENCE,
/** @SKB_DROP_REASON_TCP_RESET: Invalid RST packet */ /** @SKB_DROP_REASON_TCP_RESET: Invalid RST packet */
SKB_DROP_REASON_TCP_RESET, SKB_DROP_REASON_TCP_RESET,
/** /**
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment