zephyr/subsys
Maochen Wang 2b2915bd98 net: ip: Fix low Zperf UDP throughput with -a
When run the Zperf UDP throughput with '-a' (Asynchronous call),
zperf_work_q thread will generate and send the packets to tx_q thread.
When zperf_work_q and tx_q threads have same priority, if zperf_work_q
fails to take the semaphore of fifo_slot, it will not wait and directly
drop the net_pkt. Then it will allocate new net_pkt, repeat, and always
occupy the CPU, which leads to extreme low throughput.
For TX, when take the semaphore of fifo_slot, setting a wait time of
K_FOREVER to let other thread to process and free these packets.
For RX, when failed to take the semaphore of fifo_slot, yield the CPU
to let the thread of data path with same priority to run to reduce
dropping packets.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2025-02-19 18:49:13 +01:00
..
bindesc
bluetooth bluetooth: host: smp: fix deadlock when public key generation fails 2025-02-18 18:44:23 +01:00
canbus
console
dap
debug
demand_paging demand_paging: use ram backend by default 2025-01-09 15:50:37 +01:00
dfu dfu: Add support for new MCUboot swap using offset mode 2025-02-10 19:05:25 +01:00
disk
dsp
emul
fb fb: cfb: Remove unused config 2025-02-13 12:14:52 +01:00
fs fs: enable custom mount points for fatfs 2025-02-13 16:41:34 +01:00
input
ipc ipc_service: icmsg: Add "unbound" functionality 2025-02-14 13:34:49 +01:00
jwt mbedtls: select ENTROPY_GENERATOR when a driver is available 2024-12-19 17:53:37 +01:00
llext llext-edk: add support for Zstd and Zip formats 2025-02-14 13:35:43 +01:00
logging logging: backends: rtt: Do not enable when shell logging is used 2025-02-14 19:40:23 +00:00
lorawan lorawan: clock_sync: assert instead of error code 2025-02-03 16:59:29 +01:00
mctp mctp: mark MCTP as experimental 2025-01-15 22:58:09 +01:00
mem_mgmt
mgmt mgmt/mcumgr: Add error logs for all error cases 2025-02-19 14:49:37 +00:00
modbus modbus: initialize return variable. 2025-01-21 19:28:52 +01:00
modem
net net: ip: Fix low Zperf UDP throughput with -a 2025-02-19 18:49:13 +01:00
pm pm: Remove deprecated function 2025-02-10 03:41:06 +01:00
portability portability: cmsis: Support static CMSIS-RTOSv2 control blocks 2025-02-14 03:13:35 +01:00
profiling arch: remove z_arch_esf_t 2025-01-23 16:32:36 +01:00
random mbedtls: select ENTROPY_GENERATOR when a driver is available 2024-12-19 17:53:37 +01:00
retention
rtio rtio: workq: Select Early P4WQ threads init 2025-02-18 05:32:58 +01:00
sd
secure_storage secure storage: Add missing include for mbedtls_platform_zeroize 2025-01-27 21:04:20 +01:00
sensing sensing: Fix static assert in get_sensor_by_dev() 2025-01-18 12:40:03 +01:00
settings settings: ZMS: add a backend for ZMS (Zephyr Memory Storage) 2025-02-13 16:40:41 +01:00
shell shell: rtt: increase bypass buffer size 2025-02-14 17:07:52 +01:00
sip_svc
stats
storage storage/stream_flash: Switch to stream_flash_erase_to_append 2025-01-30 14:13:42 +01:00
task_wdt task_wdt: Kconfig: Increase TASK_WDT_HW_FALLBACK_DELAY range 2025-01-07 20:34:41 +01:00
testsuite ztest: ztest_mock: Fix typo 2025-02-13 01:13:56 +01:00
timing
tracing tracing: k_pipe: Add tracing support for reworked k_pipe API 2025-01-17 19:43:44 +01:00
usb usb: device_next: allow CDC ACM UART to be initialized and enabled at boot 2025-02-12 02:22:18 +01:00
zbus zbus: assert when inside an ISR and time out is not zero 2025-01-21 19:30:20 +01:00
CMakeLists.txt mctp: Add mctp subsystem with uart binding 2025-01-14 22:55:41 +01:00
Kconfig mctp: Add mctp subsystem with uart binding 2025-01-14 22:55:41 +01:00