nuttx/net/udp
Zhe Weng 075eb6a6d2 net/udp: Change conn->readahead to I/O buffer chain
When using IOB queue to store readahead data, we use one IOB for each
UDP packet. Then if the packets are very small, like 10Bytes per packet,
we'll use ~1600 IOBs just for 16KB recv buffer size, which is wasteful
and dangerous. So change conn->readahead to a single IOB chain like TCP.

Benefits:
- Using memory and IOBs more efficiently (small packets are common in
  UDP)

Side effects:
- UDP recv buffer size may count the overhead
- A little bit drop in performance (<1%, more seek & copy)

Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2023-07-18 10:51:45 +08:00
..
CMakeLists.txt build: add initial cmake build system 2023-07-08 13:50:48 +08:00
Kconfig Kconfig: Simplify the conditional default statement 2023-07-16 14:39:20 -03:00
Make.defs
udp_callback.c net/udp: Change conn->readahead to I/O buffer chain 2023-07-18 10:51:45 +08:00
udp_close.c
udp_conn.c net/udp: Change conn->readahead to I/O buffer chain 2023-07-18 10:51:45 +08:00
udp_devpoll.c
udp_finddev.c
udp_input.c
udp_ioctl.c net/udp: Change conn->readahead to I/O buffer chain 2023-07-18 10:51:45 +08:00
udp_ipselect.c
udp_netpoll.c net/udp: Change conn->readahead to I/O buffer chain 2023-07-18 10:51:45 +08:00
udp_notifier.c net/udp: Change conn->readahead to I/O buffer chain 2023-07-18 10:51:45 +08:00
udp_recvfrom.c net/udp: Change conn->readahead to I/O buffer chain 2023-07-18 10:51:45 +08:00
udp_send.c
udp_sendto_buffered.c
udp_sendto_unbuffered.c
udp_setsockopt.c
udp_txdrain.c
udp_wrbuffer_dump.c
udp_wrbuffer.c
udp.h net/udp: Change conn->readahead to I/O buffer chain 2023-07-18 10:51:45 +08:00