mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-09 04:10:18 +09:00
tcp: identify cryptic messages as TCP seq # bugs
[ Upstream commit e56b8ce363 ]
Attempt to make cryptic TCP seq number error messages clearer by
(1) identifying the source of the message as "TCP", (2) identifying the
errors as "seq # bug", and (3) grouping the field identifiers and values
by separating them with commas.
E.g., the following message is changed from:
recvmsg bug 2: copied 73BCB6CD seq 70F17CBE rcvnxt 73BCB9AA fl 0
WARNING: CPU: 2 PID: 1501 at /linux/net/ipv4/tcp.c:1881 tcp_recvmsg+0x649/0xb90
to:
TCP recvmsg seq # bug 2: copied 73BCB6CD, seq 70F17CBE, rcvnxt 73BCB9AA, fl 0
WARNING: CPU: 2 PID: 1501 at /linux/net/ipv4/tcp.c:2011 tcp_recvmsg+0x694/0xba0
Suggested-by: 積丹尼 Dan Jacobson <jidanni@jidanni.org>
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
780e559aaa
commit
81970da691
@@ -1659,7 +1659,7 @@ int tcp_recvmsg(struct sock *sk, struct msghdr *msg, size_t len, int nonblock,
|
||||
* shouldn't happen.
|
||||
*/
|
||||
if (WARN(before(*seq, TCP_SKB_CB(skb)->seq),
|
||||
"recvmsg bug: copied %X seq %X rcvnxt %X fl %X\n",
|
||||
"TCP recvmsg seq # bug: copied %X, seq %X, rcvnxt %X, fl %X\n",
|
||||
*seq, TCP_SKB_CB(skb)->seq, tp->rcv_nxt,
|
||||
flags))
|
||||
break;
|
||||
@@ -1672,7 +1672,7 @@ int tcp_recvmsg(struct sock *sk, struct msghdr *msg, size_t len, int nonblock,
|
||||
if (TCP_SKB_CB(skb)->tcp_flags & TCPHDR_FIN)
|
||||
goto found_fin_ok;
|
||||
WARN(!(flags & MSG_PEEK),
|
||||
"recvmsg bug 2: copied %X seq %X rcvnxt %X fl %X\n",
|
||||
"TCP recvmsg seq # bug 2: copied %X, seq %X, rcvnxt %X, fl %X\n",
|
||||
*seq, TCP_SKB_CB(skb)->seq, tp->rcv_nxt, flags);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user