diff options
| author | Jerome Forissier <[email protected]> | 2025-08-04 14:51:01 +0200 |
|---|---|---|
| committer | Jerome Forissier <[email protected]> | 2025-08-18 15:47:58 +0200 |
| commit | 90c05f68fcab57d669233033d34e52b8d55d57dd (patch) | |
| tree | 8b2646b13e02c95428d298bd614ef9e1a7fa47bf /net | |
| parent | 2cb9fef65bbb7535c1e27cef3122bb0b43e38b68 (diff) | |
net: lwip: ping: set net_try_count to 1
The legacy network stack sets net_try_count to 1 at the beginning of the
net_loop() function. This is required for net_start_again() to work
properly. Therefore, set the variable accordingly in the do_ping()
function when NET_LWIP=y. This fixes an issue where a ping to an
unreachable destination would run twice on the same network device. For
example with qemu_arm64_lwip_defconfig:
=> dhcp
DHCP client bound to address 10.0.2.15 (3 ms)
=> ping 10.0.0.1
Using virtio-net#32 device
ping failed; host 10.0.0.1 is not alive
Using virtio-net#32 device
ping failed; host 10.0.0.1 is not alive
=> QEMU: Terminated
Signed-off-by: Jerome Forissier <[email protected]>
Diffstat (limited to 'net')
| -rw-r--r-- | net/lwip/net-lwip.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/lwip/net-lwip.c b/net/lwip/net-lwip.c index 74cbc7e4bf5..1a70cedfb58 100644 --- a/net/lwip/net-lwip.c +++ b/net/lwip/net-lwip.c @@ -27,7 +27,7 @@ #if defined(CONFIG_API) || defined(CONFIG_EFI_LOADER) void (*push_packet)(void *, int len) = 0; #endif -static int net_try_count; +int net_try_count; static int net_restarted; int net_restart_wrap; static uchar net_pkt_buf[(PKTBUFSRX) * PKTSIZE_ALIGN + PKTALIGN]; |
