walnux/libs/libc
ouyangxiangzhen fb592064cb sched: Improved the wdog and wq list insertion.
For the watchdog list and the workqueue list, we wonder whether the list head has changed after the insertion. In the original implementation, we have to access the list->next field and compare the result to the currently inserted node. In this commit, we mark the list head before the insertion and comparing the current traversed node with the list head we marked, which can avoid accessing the list->next and is more cache-friendly.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-05-07 02:02:10 +08:00
..
aio libs/libc: There is no need to use sched_[un]lock 2024-10-12 13:28:23 +08:00
assert libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
audio libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
builtin libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
ctype libcxx: fix compile error 2024-10-23 09:42:57 +08:00
dirent cmake:refine nuttx cmake build system fix CMake build missing part 2024-10-13 02:25:06 +08:00
dlfcn libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
elf libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
errno libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
eventfd libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
fdt libs/libc/fdt/Make.defs: cannot move due to directory not empty bugfix 2024-10-09 15:42:17 +08:00
fixedmath libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
gdbstub gdbstub: fix memory binary upload on latest GDB 2025-02-09 11:45:43 +08:00
gnssutils libc/gnssutils: remove C99 standard flag from Make.defs 2025-01-17 09:03:18 +08:00
grp libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
hex2bin stream_getc: use lib_stream_eof instead of EOF 2024-11-26 10:25:36 +08:00
inttypes libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
libgen libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
locale fix(locale): misspelled "February" string (nl_langinfo) 2025-05-05 09:32:31 +08:00
lzf libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
machine libc/arm: optimize crc32/crc32c for arm 2025-04-04 09:51:50 -03:00
misc libc/backtrace: Fix compilation error when set LIBC_BACKTRACE_BUFFSIZE 2025-05-05 09:29:26 +08:00
net lib_getifaddrs.c:set the last multi ipv6addr next pointer to be NULL 2024-11-21 21:31:28 +08:00
netdb DNS: Implement TCP fallback 2024-10-31 17:18:20 +08:00
obstack stream: reduce int use, handle FS_LARGEFILE correctly. 2024-11-15 01:05:04 +08:00
pthread pthread_barrier_destroy: Fix return value, if sem_getvalue fails 2025-01-20 23:55:26 +08:00
pwd libs/libc/unistd: add getspnam function 2024-10-16 11:15:25 +08:00
queue libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
regex libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
sched sched/gettid: Move thread ID to TLS 2025-04-08 22:53:10 +08:00
search libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
semaphore Revert "libs/libc/semaphore: Fix DEBUGASSERTS" 2025-04-16 10:10:56 +08:00
signal cmake:refine nuttx cmake build system fix CMake build missing part 2024-10-13 02:25:06 +08:00
spawn cmake:refine nuttx cmake build system fix CMake build missing part 2024-10-13 02:25:06 +08:00
stdio Revert "[POSIX][Bug] syslog: Add support for %m modifier" 2024-12-24 11:02:04 -05:00
stdlib libs/libc/stdlib: migrate to SPDX identifier 2024-12-17 09:36:46 +08:00
stream libc/stream: Support lowsyslog. 2025-04-02 12:01:46 +08:00
string libc: Rename LIBC_STRING_OPTIMIZE to LIBC_NEWLIB_OPTSPEED 2025-01-20 22:27:19 +08:00
symtab lib_libvsprintf.c:add option in Kconfig to control "%p*" special format specifier. 2024-10-15 15:33:13 +08:00
syslog setlogmask: fix setlogmask behavior according to POSIX standard 2025-05-02 16:29:08 +02:00
termios libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
time fix(libc): lib_strftime %F month number off-by-one 2025-01-21 18:24:35 +08:00
tls libc: Add debug assert to prevent tls allocation failure 2024-10-18 21:34:18 +08:00
uio move readv/writev to the kernel 2024-10-30 17:07:54 +08:00
unistd libc/unistd: move NAME_MAX/LINE_MAX/PATH_MAX define to unistd 2025-01-15 23:17:51 +08:00
userfs libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
uuid libc: Refine the arc4random_buf implementation 2024-10-26 18:04:21 -03:00
wchar libc/wcsrtombs: Fix the wcsrtombs() according to the POSIX standard 2025-02-06 10:24:55 +01:00
wctype libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
wqueue sched: Improved the wdog and wq list insertion. 2025-05-07 02:02:10 +08:00
zoneinfo libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
.gitignore libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
CMakeLists.txt libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
Kconfig libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
libc.csv nuttx: add get_current_dir_name implementation 2024-12-19 20:55:51 +08:00
libc.h libc/machine:Add prefixes to libc functions implemented by arch 2024-10-31 18:11:16 +08:00
Makefile libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00