Squashed commit of the following:

Author: Gregory Nutt <gnutt@nuttx.org>

    Run all .h and .c files modified in last PR through nxstyle.

Author: Xiang Xiao <xiaoxiang@xiaomi.com>

    Net cleanup (#17)

    * Fix the semaphore usage issue found in tcp/udp

    1. The count semaphore need disable priority inheritance
    2. Loop again if net_lockedwait return -EINTR
    3. Call nxsem_trywait to avoid the race condition
    4. Call nxsem_post instead of sem_post

    * Put the work notifier into free list to avoid the heap fragment in the long run.  Since the allocation strategy is encapsulated internally, we can even refine the implementation later.

    * Network stack shouldn't allocate memory in the poll implementation to avoid the heap fragment in the long run, other modification include:

    1. Select MM_IOB automatically since ICMP[v6] socket can't work without the read ahead buffer
    2. Remove the net lock since xxx_callback_free already do the same thing
    3. TCP/UDP poll should work even the read ahead buffer isn't enabled at all

    * Add NET_ prefix for UDP_NOTIFIER and TCP_NOTIFIER option to align with other UDP/TCP option convention

    * Remove the unused _SF_[IDLE|ACCEPT|SEND|RECV|MASK] flags since there are code to set/clear these flags, but nobody check them.
This commit is contained in:
Xiang Xiao
2019-12-31 09:26:14 -06:00
committed by Gregory Nutt
parent e33fc3dc89
commit 90c52e6f8f
52 changed files with 375 additions and 558 deletions

View File

@@ -49,7 +49,7 @@
#include "tcp/tcp.h"
#ifdef CONFIG_TCP_NOTIFIER
#ifdef CONFIG_NET_TCP_NOTIFIER
/****************************************************************************
* Public Functions
@@ -330,4 +330,4 @@ void tcp_disconnect_signal(FAR struct tcp_conn_s *conn)
return work_notifier_signal(WORK_TCP_DISCONNECT, conn);
}
#endif /* CONFIG_TCP_NOTIFIER */
#endif /* CONFIG_NET_TCP_NOTIFIER */