nuttx/net/tcp
Fotis Panagiotopoulos 3c54d82d81 net: Fix task block when devif_send fails.
When a task needs to send data, a callback is allocated and the
transmission is happening in a worker task through devif_send.
Synchronization between the two tasks (sender & worker) is
achieved by a semaphore.

If devif_send fails, this semaphore was never posted, leaving
the sending task blocked indefinitely. This commit fixes this
by checking the return code of netif_send, and posting this
semaphore in case of failure.

Polling then stops, and execution is resumed on the sending
task.
2023-06-01 17:05:54 +08:00
..
Kconfig net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
Make.defs net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp_accept.c
tcp_appsend.c
tcp_backlog.c
tcp_callback.c
tcp_cc.c net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp_close.c net/tcp: Add flag for tcp_close to avoid double free 2023-05-29 13:00:06 +02:00
tcp_conn.c net/semantic/parser: fix compile warning found by sparse 2023-05-30 23:00:00 +08:00
tcp_connect.c
tcp_devpoll.c
tcp_dump.c
tcp_finddev.c
tcp_getsockopt.c
tcp_input.c net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp_ioctl.c
tcp_ipselect.c
tcp_listen.c
tcp_monitor.c
tcp_netpoll.c
tcp_notifier.c
tcp_recvfrom.c
tcp_recvwindow.c
tcp_send_buffered.c net: Fix task block when devif_send fails. 2023-06-01 17:05:54 +08:00
tcp_send_unbuffered.c net: Fix task block when devif_send fails. 2023-06-01 17:05:54 +08:00
tcp_send.c
tcp_sendfile.c
tcp_seqno.c
tcp_setsockopt.c
tcp_shutdown.c
tcp_timer.c net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp_txdrain.c
tcp_wrbuffer.c net/tcp:Add NewReno congestion control. 2023-05-16 12:35:01 -03:00
tcp.h net/tcp: Add flag for tcp_close to avoid double free 2023-05-29 13:00:06 +02:00