diff options
author | Jakub Kicinski <kuba@kernel.org> | 2024-06-06 11:33:09 -0700 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2024-06-06 12:06:56 -0700 |
commit | 62b5bf58b928f0f4fcc8bb633b63795517825d31 (patch) | |
tree | 7331b7fad6fd30251fff3ebbd095680a1db328dd /net/ipv4/tcp.c | |
parent | 749332814479ad2e06d892109227d3d93032f65b (diff) | |
parent | d30d0e49da71de8df10bf3ff1b3de880653af562 (diff) | |
download | lwn-62b5bf58b928f0f4fcc8bb633b63795517825d31.tar.gz lwn-62b5bf58b928f0f4fcc8bb633b63795517825d31.zip |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Cross-merge networking fixes after downstream PR.
No conflicts.
Adjacent changes:
drivers/net/ethernet/pensando/ionic/ionic_txrx.c
d9c04209990b ("ionic: Mark error paths in the data path as unlikely")
491aee894a08 ("ionic: fix kernel panic in XDP_TX action")
net/ipv6/ip6_fib.c
b4cb4a1391dc ("net: use unrcu_pointer() helper")
b01e1c030770 ("ipv6: fix possible race in __fib6_drop_pcpu_from()")
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/ipv4/tcp.c')
-rw-r--r-- | net/ipv4/tcp.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c index f727bc8d82a6..6553221694ec 100644 --- a/net/ipv4/tcp.c +++ b/net/ipv4/tcp.c @@ -1167,6 +1167,9 @@ new_segment: process_backlog++; +#ifdef CONFIG_SKB_DECRYPTED + skb->decrypted = !!(flags & MSG_SENDPAGE_DECRYPTED); +#endif tcp_skb_entail(sk, skb); copy = size_goal; @@ -2648,6 +2651,10 @@ void tcp_set_state(struct sock *sk, int state) if (oldstate != TCP_ESTABLISHED) TCP_INC_STATS(sock_net(sk), TCP_MIB_CURRESTAB); break; + case TCP_CLOSE_WAIT: + if (oldstate == TCP_SYN_RECV) + TCP_INC_STATS(sock_net(sk), TCP_MIB_CURRESTAB); + break; case TCP_CLOSE: if (oldstate == TCP_CLOSE_WAIT || oldstate == TCP_ESTABLISHED) @@ -2659,7 +2666,7 @@ void tcp_set_state(struct sock *sk, int state) inet_put_port(sk); fallthrough; default: - if (oldstate == TCP_ESTABLISHED) + if (oldstate == TCP_ESTABLISHED || oldstate == TCP_CLOSE_WAIT) TCP_DEC_STATS(sock_net(sk), TCP_MIB_CURRESTAB); } |