nuttx/net
zhekunren c96ed0119a net/tcp/tcp_send: Remove work_available check when updating retransmit timer
The condition work_available(&conn->work) && tx_unacked != 0
prevented tcp_update_retrantimer from being called when the work
queue was still busy, leaving conn->timer stale or zero on
subsequent sends. This caused the RTT estimation to compute a
false RTT (m = rto - 0 = rto), creating a positive feedback loop
that inflated the RTO to extreme values (e.g., 232 half-seconds
= ~116 seconds).

Fix: remove the work_available check so that tcp_update_retrantimer
is always called when there is unacknowledged data. The decision to
re-queue the work is handled internally by tcp_update_timer.

Signed-off-by: zhekunren <zhekunren@qq.com>
2026-08-05 20:46:17 +08:00
..
arp
bluetooth net/bluetooth: fix BTPROTO_HCI socket device lookup 2026-05-06 14:45:46 +08:00
can
devif net/ipfilter: Reassemble IPv6 fragments before filtering 2026-08-04 09:35:06 +08:00
icmp !sys/types.h: change time_t and clock_t to int64_t to align with other OSes 2026-05-19 16:21:28 +08:00
icmpv6 !sys/types.h: change time_t and clock_t to int64_t to align with other OSes 2026-05-19 16:21:28 +08:00
ieee802154
igmp fix(net/igmp): restore General Query handling broken by pointer compare 2026-08-03 17:22:28 +08:00
inet
ipfilter
ipforward net/ipv4: Forward fragments before local reassembly 2026-08-04 09:35:06 +08:00
ipfrag net/ipv4: Forward fragments before local reassembly 2026-08-04 09:35:06 +08:00
local
mld !sys/types.h: change time_t and clock_t to int64_t to align with other OSes 2026-05-19 16:21:28 +08:00
nat net/nat: Reassemble IPv6 fragments before NAT66 2026-08-04 09:35:06 +08:00
neighbor
netdev net/netdev/netdev_txnotify.c: add debug log with interface name 2026-05-06 01:16:40 +08:00
netfilter
netlink
pkt
procfs !include/fcntl.h: align open flags with Linux values 2026-07-03 10:33:47 +08:00
route net/route: fix return value of net_writeroute_ipv6 2026-04-13 08:46:57 -03:00
rpmsg
sixlowpan net/sixlowpan: Fix protosize to 16-bit 2026-08-03 17:15:39 +08:00
socket
tcp net/tcp/tcp_send: Remove work_available check when updating retransmit timer 2026-08-05 20:46:17 +08:00
udp
usrsock
utils !sys/types.h: change time_t and clock_t to int64_t to align with other OSes 2026-05-19 16:21:28 +08:00
CMakeLists.txt
Kconfig
Makefile tools: fix stale archive members surviving a Kconfig-driven CSRCS change 2026-08-04 00:36:32 +08:00
net_initialize.c