Table of Contents |
---|
Work In Progress
Warning | ||
---|---|---|
| ||
NuttX X.Y has not been released yet. These Release Notes are a work-in-progress in preparation for the next release of NuttX. There is a board tracking the PRs that need to be looked at to add to this doc for the OS TODO ADD LINK and for the Apps TODO ADD LINK |
What's New In This Release
Major Changes to Core OS
New Features
sched
Markdown |
---|
* [#10062](https://github.com/apache/nuttx/pull/10062) sched: add CRITMONITOR time out panic
* [#10273](https://github.com/apache/nuttx/pull/10273) sched: add the startup process tracepoint
* [#9768](https://github.com/apache/nuttx/pull/9768) sched: Added missing semicolon to dead-lock detection.
* [#9824](https://github.com/apache/nuttx/pull/9824) sched: assert: check intstack_sp when print last stack in irq context
* [#10009](https://github.com/apache/nuttx/pull/10009) sched: Assert: Enhance the panic notify feature
* [#10811](https://github.com/apache/nuttx/pull/10811) sched: assert: Skip to include board:board.h if CONFIG_ARCH_LEDS=n
* [#10705](https://github.com/apache/nuttx/pull/10705) sched: clock: Add special handling for TCB null pointer cases
* [#9691](https://github.com/apache/nuttx/pull/9691) sched: clock: clock_getcpuclockid: add clock_getcpuclockid implementation
* [#9701](https://github.com/apache/nuttx/pull/9701) sched: clock: clock_getcpuclockid: fix code format, remove space
* [#9678](https://github.com/apache/nuttx/pull/9678) sched: clock: clock_getres: add two CPUTIME_ID res support
* [#9753](https://github.com/apache/nuttx/pull/9753) sched: clock: fix build break
* [#9735](https://github.com/apache/nuttx/pull/9735) sched: clock: move clock_getcpuclockid() and clock_getres() to libc + misc fixes
* [#10086](https://github.com/apache/nuttx/pull/10086) sched: Define sched_getcpu return 0 when CONFIG_SMP equals n
* [#10603](https://github.com/apache/nuttx/pull/10603) sched: do not DEBUGASSERT for priority multi-boost
* [#9632](https://github.com/apache/nuttx/pull/9632) sched: fix pthread_exit crash
* [#10041](https://github.com/apache/nuttx/pull/10041) sched: group_killchildren send signo SIGQUIT before cancel it
* [#10758](https://github.com/apache/nuttx/pull/10758) sched: implement effective uid and gid interfaces #10119 enable O_CLOEXEC explicit
* [#10419](https://github.com/apache/nuttx/pull/10419) eched: misc: assert: Fix the printing alignment of interrupt stack during assert
* [#10493](https://github.com/apache/nuttx/pull/10493) sched: misc: optimize collect_deadlock implementation
* [#10035](https://github.com/apache/nuttx/pull/10035) sched: pthread: Don't do cancel when it is already in the exit process
* [#9631](https://github.com/apache/nuttx/pull/9631) sched: pthread: fix race condition on pthread_cond_wait()
* [#10155](https://github.com/apache/nuttx/pull/10155) sched: pthread: remove unused temp change sched_priority
* [#10683](https://github.com/apache/nuttx/pull/10683) sched: pthread_cleanup: rm sched_[un]lock
* [#10681](https://github.com/apache/nuttx/pull/10681) sched: pthread_once: use rmutex replace sched_[un]lock
* [#10078](https://github.com/apache/nuttx/pull/10078) sched: replace nxsched_gettid with nxsched_getpid.
* [#10686](https://github.com/apache/nuttx/pull/10686) sched: return 0 from clock_systime_ticks if failed
* [#9863](https://github.com/apache/nuttx/pull/9863) sched: Rename DEBUG_TCBINFO to ARCH_HAVE_TCBINFO
* [#10199](https://github.com/apache/nuttx/pull/10199) sched: semaphore: Remove restriction to use nxsem_trywait from ISR
* [#10430](https://github.com/apache/nuttx/pull/10430) sched: signal: add more value defines of the siginfo si_code field
* [#10431](https://github.com/apache/nuttx/pull/10431) sched: signal: add siginterrupt implementation
* [#9704](https://github.com/apache/nuttx/pull/9704) sched: signal: correct to const pointer for sigorset and sigandset
* [#10040](https://github.com/apache/nuttx/pull/10040) sched: signal: fix group signal can't dispatch some parent group twice
* [#9923](https://github.com/apache/nuttx/pull/9923) sched: signal: ltp: sigprocmask fix
* [#10668](https://github.com/apache/nuttx/pull/10668) sched: signal: use work_cancel_sync() to fix used after free
* [#9790](https://github.com/apache/nuttx/pull/9790) sched: signal: SIGKILL or SIGSTOP cannot be caught
* [#9848](https://github.com/apache/nuttx/pull/9848) sched: signal: sig_nanosleep: fix the clock_nanosleep posix case
* [#10321](https://github.com/apache/nuttx/pull/10321) sched: sigqueue: add signal type judgment logic
* [#10313](https://github.com/apache/nuttx/pull/10313) sched: SMP: fix repeat entry timer_start
* [#10000](https://github.com/apache/nuttx/pull/10000) sched: SMP: fix repeat entry oneshot_tick_start
* [#10312](https://github.com/apache/nuttx/pull/10312) sched: smp: flush dcache before start other cpus
* [#9755](https://github.com/apache/nuttx/pull/9755) sched: task:fork: add fork implementation
* [#9961](https://github.com/apache/nuttx/pull/9961) sched: task: task_spawnparms: out of loop when ret less than 0
* [#9878](https://github.com/apache/nuttx/pull/9878) sched: tcbinfo: add stack info to tcbinfo
* [#10063](https://github.com/apache/nuttx/pull/10063) sched: use perf to implement cpuload
* [#10684](https://github.com/apache/nuttx/pull/10684) sched: wdog:change g_wdtickbase update situation
|
mm
Markdown |
---|
* [#9970](https://github.com/apache/nuttx/pull/9970) memdump: support dump the leak memory (malloced but task exit)
* [#10287](https://github.com/apache/nuttx/pull/10287) mempool: add check for double free check for mempool free
* [#10283](https://github.com/apache/nuttx/pull/10283) mempool: Use default alignment inside of blockalign
* [#10420](https://github.com/apache/nuttx/pull/10420) mm: alloc: remove all unnecessary cast for alloc
* [#10584](https://github.com/apache/nuttx/pull/10584) mm: heap: add coloration after free to detect use after free issue
* [#10704](https://github.com/apache/nuttx/pull/10704) mm: iob: limit the iob bufsize is sufficient to fill all L2:L3:L4 headers
* [#10292](https://github.com/apache/nuttx/pull/10292) mm: iob: iob_clone_partial support Negative offset
* [#10291](https://github.com/apache/nuttx/pull/10291) mm: iob: add elapse calc for iob_allocwait
* [#9741](https://github.com/apache/nuttx/pull/9741) mm: iob:iob_alloc: change sem_post to count++
* [#9630](https://github.com/apache/nuttx/pull/9630) mm: kasan: replace load:store methods to macro
* [#9969](https://github.com/apache/nuttx/pull/9969) mm: record more useful backtrace for memory node
* [#10786](https://github.com/apache/nuttx/pull/10786) mm: rewrite the memdump code for more readable
* [#10566](https://github.com/apache/nuttx/pull/10566) mm: shm:shmget: Zero allocated shared memory pages when created.
* [#10150](https://github.com/apache/nuttx/pull/10150) mm: mempool:change mutex to rmutex avoid deadlock
* [#10098](https://github.com/apache/nuttx/pull/10098) mm_heap: check heap member in advance
* [#9972](https://github.com/apache/nuttx/pull/9972) mm_heap: mm malloc failed dump and panic only valid for the heap own by OS
* [#9933](https://github.com/apache/nuttx/pull/9933) mmap: tmpfs: support mmap for tmpfs
|
libs
Markdown |
---|
* [#10415](https://github.com/apache/nuttx/pull/10415) alloca: add alloca implement for MSVC
* [#10337](https://github.com/apache/nuttx/pull/10337) ctype: toupper_l: Implement function toupper_l instead of macro
* [#9636](https://github.com/apache/nuttx/pull/9636) libc.csv: Correct return type of strchr
* [#10053](https://github.com/apache/nuttx/pull/10053) Revert "newlib: libc: memcpy M-profile PACBTI-enablement"
* [#10796](https://github.com/apache/nuttx/pull/10796) libc: add bsearch to libc.csv
* [#9706](https://github.com/apache/nuttx/pull/9706) libc: Add support for gdb rsp protocol
* [#10739](https://github.com/apache/nuttx/pull/10739) libc: add wchar api implementation
* [#10667](https://github.com/apache/nuttx/pull/10667) libc: add wchar implementation
* [#9643](https://github.com/apache/nuttx/pull/9643) libc: aio: fix aio_fsync compatible issue
* [#9626](https://github.com/apache/nuttx/pull/9626) libc: aio: fix aio_error compatible bug
* [#9634](https://github.com/apache/nuttx/pull/9634) libc: aio: fix aio_return compatible bug
* [#9640](https://github.com/apache/nuttx/pull/9640) libc: aio: fix aio_write compatible bug
* [#9637](https://github.com/apache/nuttx/pull/9637) libc: aio: fix aio_read compatible bug
* [#9648](https://github.com/apache/nuttx/pull/9648) libc: aio: fix aio_cancel compatible issue
* [#9655](https://github.com/apache/nuttx/pull/9655) libc: aio: adjust the flags determination method
* [#9664](https://github.com/apache/nuttx/pull/9664) libc: aio:lio_listio: fix the heap use-after-free bug
* [#10408](https://github.com/apache/nuttx/pull/10408) libc: Breakdown LIBC_BUILD_STRING into specific string operation…
* [#9835](https://github.com/apache/nuttx/pull/9835) libc: basename: Change len type from int to size_t
* [#10417](https://github.com/apache/nuttx/pull/10417) libc: change the default NETDB_DNSCLIENT_MAXRESPONSE to the standard length
* [#10021](https://github.com/apache/nuttx/pull/10021) libc: compatible with Android for htonq:ntohq
* [#10708](https://github.com/apache/nuttx/pull/10708) libc: currect usage of getpid:gettid in library
* [#10121](https://github.com/apache/nuttx/pull/10121) libc: fdt: add libfdt support
* [#10405](https://github.com/apache/nuttx/pull/10405) libc: fdt: modify makefile
* [#10519](https://github.com/apache/nuttx/pull/10519) libc: fix a fatal bug in fread
* [#9806](https://github.com/apache/nuttx/pull/9806) libc: fix and improve dynamic loader
* [#9716](https://github.com/apache/nuttx/pull/9716) libc: fix Deadloop in VFS if CONFIG_CANCELLATION_POINTS is enabled
* [#10470](https://github.com/apache/nuttx/pull/10470) libc: Fix loading of ET_DYN type of shared objects
* [#9882](https://github.com/apache/nuttx/pull/9882) libc: Fix modlib to get binary loading working again
* [#10169](https://github.com/apache/nuttx/pull/10169) libc: fix wait after vfork return error
* [#10508](https://github.com/apache/nuttx/pull/10508) libc: fopen: support fopen with mode 'm'
* [#10290](https://github.com/apache/nuttx/pull/10290) libc: getifaddrs: set sin6_scope_id when IPv6 enable
* [#9789](https://github.com/apache/nuttx/pull/9789) libc: getpgid: add getpgid implementation
* [#10336](https://github.com/apache/nuttx/pull/10336) libc: gpsutils: merged into one target to fix issue of parallel compile
* [#10184](https://github.com/apache/nuttx/pull/10184) libc: hex2bin: enhance 64-bit compatibility
* [#10675](https://github.com/apache/nuttx/pull/10675) libc: lib_iconv.c:Fix possible out-of-bounds reads
* [#10286](https://github.com/apache/nuttx/pull/10286) libc: lib_psfa_adddup2: fix mem leak when failed
* [#9644](https://github.com/apache/nuttx/pull/9644) libc: lib_remove: fix TOCTOU race condition
* [#10358](https://github.com/apache/nuttx/pull/10358) libc: libfread: Use memcpy to copy read-ahead buffer to caller buffer.
* [#9696](https://github.com/apache/nuttx/pull/9696) libc: libvsprintf: fix vsnprintf bug with "%#.0f"
* [#9748](https://github.com/apache/nuttx/pull/9748) libc: libvsprintf: fix vsnprintf bug with "%e"
* [#9662](https://github.com/apache/nuttx/pull/9662) libc: locale:langinfo: implement the nl_langinfo function
* [#10607](https://github.com/apache/nuttx/pull/10607) libc: machine: Add LIBC_PREVENT_xxx which select LIBC_PREVENT_XXX_[KERNEL|USER] automatically
* [#10446](https://github.com/apache/nuttx/pull/10446) libc: machine: Fix ARMV[7|8]M_STRING_FUNCTION typo error in Kconfig
* [#10509](https://github.com/apache/nuttx/pull/10509) libc: mallopt: implement dummy mallopt
* [#9737](https://github.com/apache/nuttx/pull/9737) libc: modlib: fix dynamic loader issues
* [#10302](https://github.com/apache/nuttx/pull/10302) libc: netdb: add dependence to net ip config
* [#10798](https://github.com/apache/nuttx/pull/10798) libc: netdb: Change the default NETDB_DNSCLIENT_NAMESIZE to PATH_MAX
* [#9890](https://github.com/apache/nuttx/pull/9890) libc: netdb: Move dns query info and buffer out of the stack
* [#9857](https://github.com/apache/nuttx/pull/9857) libc: netdb: print dns server address when query failed
* [#10761](https://github.com/apache/nuttx/pull/10761) libc: netdb: fix dns failed when ipv4:6 dual stack enable
* [#10622](https://github.com/apache/nuttx/pull/10622) libc: netdb: Restrict DNS query types
* [#10624](https://github.com/apache/nuttx/pull/10624) libc: provide flat mode the chip string customization.
* [#9886](https://github.com/apache/nuttx/pull/9886) libc: pthread: add pthread_atfork implementation
* [#9947](https://github.com/apache/nuttx/pull/9947) libc: pthread: add pthread_attr_set:getscope api
* [#9708](https://github.com/apache/nuttx/pull/9708) libc: pthread: add the implementation of pthread_getcpuclockid
* [#9903](https://github.com/apache/nuttx/pull/9903) libc: pthread: fix the incorrect description in comments
* [#10752](https://github.com/apache/nuttx/pull/10752) libc: pthread: g_lock may lead deadlock
* [#9771](https://github.com/apache/nuttx/pull/9771) libc: pthread: remove unsed compare code in pthread_rwlock_init()
* [#9948](https://github.com/apache/nuttx/pull/9948) libc: rand_r: support rand_r api
* [#9773](https://github.com/apache/nuttx/pull/9773) libc: set CONFIG_PTHREAD_STACK_MIN as DEFAULT_MM_PGSIZE`s default value and
* [#10064](https://github.com/apache/nuttx/pull/10064) libc: stdio: changed LIBC_NL_ARGMAX default value to 9
* [#10612](https://github.com/apache/nuttx/pull/10612) libc: stdio: lib_libfread: Fix buffer overflow issue
* [#9766](https://github.com/apache/nuttx/pull/9766) libc: stdlib: fix strtoul,strtoull bugs when value outside range
* [#9877](https://github.com/apache/nuttx/pull/9877) libc: strftime: add modifier character support to strftime
* [#10475](https://github.com/apache/nuttx/pull/10475) libc: support unlock version for fread:fwrite:fputc:fgetc:...
* [#9750](https://github.com/apache/nuttx/pull/9750) libc: symtab: Move SYMTAB_XXX from unistd:Kconfig to symtab:Kconfig
* [#9650](https://github.com/apache/nuttx/pull/9650) libc: time:strftime: complete the strftime implementation
* [#9836](https://github.com/apache/nuttx/pull/9836) libc: tls: Change the default value of TLS_NELEM to zero
* [#10320](https://github.com/apache/nuttx/pull/10320) libc: tls: Move task_tls_alloc and task_tls_destruct to libc
* [#10288](https://github.com/apache/nuttx/pull/10288) libc: tls: move task tls destruct to before _exit
* [#10082](https://github.com/apache/nuttx/pull/10082) libc: tls: Setting the candidtate index to null prevents dangling pointers.
* [#10510](https://github.com/apache/nuttx/pull/10510) libm: ignore git submodules
* [#9764](https://github.com/apache/nuttx/pull/9764) libm: libmcs: Fix undefined symbol 'fesetround'
* [#10114](https://github.com/apache/nuttx/pull/10114) libm: newlib: fix newlib build error
* [#10626](https://github.com/apache/nuttx/pull/10626) libm: use newlib-esp32
* [#10523](https://github.com/apache/nuttx/pull/10523) libsrc: Update libsrc
* [#8244](https://github.com/apache/nuttx/pull/8244) libcxx: LLVM libcxx upgrade from 12.0.0 to 15.0.7
* [#10674](https://github.com/apache/nuttx/pull/10674) libcxx: select PTHREAD_MUTEX_TYPES to support recursive mutex
* [#10370](https://github.com/apache/nuttx/pull/10370) libcxx: strict GCC version check from GCC-12.2 to GCC-12
|
binfmt
Markdown |
---|
* [#10144](https://github.com/apache/nuttx/pull/10144) binfmt: add enter_critical_section
* [#10630](https://github.com/apache/nuttx/pull/10630) binfmt: binfmt_execmodule: Copy filename if CONFIG_BUILD_KERNEL and argv=NULL
* [#10107](https://github.com/apache/nuttx/pull/10107) binfmt: Change the default of BINFMT_DISABLE to DEFAULT_SMALL
* [#9635](https://github.com/apache/nuttx/pull/9635) binfmt: elf: Allow the userspace ELF type to be defined by board configuration.
* [#9703](https://github.com/apache/nuttx/pull/9703) binfmt: elf: Replace nx_stat with file_stat
* [#9946](https://github.com/apache/nuttx/pull/9946) binfmt: elf: both regular file and non-regular file (such as :dev:node…
* [#9956](https://github.com/apache/nuttx/pull/9956) binfmt: elf: bss section should init to zero
* [#9710](https://github.com/apache/nuttx/pull/9710) binfmt: elf: Replace {0x7f, 'E', 'L', 'F'} to EI_MAGIC
* [#9945](https://github.com/apache/nuttx/pull/9945) binfmt: elf: Support to load ET_EXEC in flat mode
* [#10380](https://github.com/apache/nuttx/pull/10380) binfmt: Exec: Support run exec in current task
* [#9665](https://github.com/apache/nuttx/pull/9665) binfmt: Immediately exit from elf_loadbinary if elf format isn't supported
* [#10462](https://github.com/apache/nuttx/pull/10462) binfmt: libelf:ELF Loader
* [#9833](https://github.com/apache/nuttx/pull/9833) binfmt: Move elf_allocbuffer to elf_sectname and elf_symname
* [#9751](https://github.com/apache/nuttx/pull/9751) binfmt: Move [elf|nxflat]_[un]initialize to private header file
* [#9908](https://github.com/apache/nuttx/pull/9908) binfmt: remove sched_[un]lock
* [#8924](https://github.com/apache/nuttx/pull/8924) binfmt: support uid:gid config for binfs app
* [#10176](https://github.com/apache/nuttx/pull/10176) binfmt: support euid of process set from the file system
* [#10474](https://github.com/apache/nuttx/pull/10474) binfmt: The program headers are optional.
|
misc
Markdown |
---|
* [#10105](https://github.com/apache/nuttx/pull/10105) audio: add format sbc support
* [#10340](https://github.com/apache/nuttx/pull/10340) audio: support 32-bits pcm
* [#10515](https://github.com/apache/nuttx/pull/10515) aio: change aio_fildes int type
* [#10749](https://github.com/apache/nuttx/pull/10749) debug: add support for IPC (interprocessor communication) debug messages
* [#10384](https://github.com/apache/nuttx/pull/10384) debug: Let boards define custom debug configuration.
* [#10066](https://github.com/apache/nuttx/pull/10066) don't call lib_free in the kernel code
* [#9677](https://github.com/apache/nuttx/pull/9677) errno: Adjust help string for EALREADY and ESTALE
* [#10562](https://github.com/apache/nuttx/pull/10562) extract PAGESIZE and PAGEMASK from definitions and seems as common macro
* [#10079](https://github.com/apache/nuttx/pull/10079) fix SIM sensor rpmsg runtime error by asan report.
* [#10531](https://github.com/apache/nuttx/pull/10531) fix wait error after vfork
* [#9740](https://github.com/apache/nuttx/pull/9740) ifaddrs: add union ifa_ifu include ifu_broadaddr and ifu_dstaddr
* [#9816](https://github.com/apache/nuttx/pull/9816) include: add packed_struct macro implement
* [#10323](https://github.com/apache/nuttx/pull/10323) include: add the module of SDIO Slave
* [#10280](https://github.com/apache/nuttx/pull/10280) include: audio: Add AUDIO_CHANNELS_RANGE macro
* [#9934](https://github.com/apache/nuttx/pull/9934) include: bits.h: support GENMASK and GENMASK_ULL
* [#9774](https://github.com/apache/nuttx/pull/9774) include: change clockid_t type from uint8_t to int
* [#9951](https://github.com/apache/nuttx/pull/9951) include: fcntl.h: add O_NOATIME flags
* [#10357](https://github.com/apache/nuttx/pull/10357) include: list: Rewrite list_entry:list_first_entry:list_last_entry
* [#10303](https://github.com/apache/nuttx/pull/10303) include: move clockid_t and time[r]_t define to sys:types.h
* [#10120](https://github.com/apache/nuttx/pull/10120) include: note: fix sched_note_begin address errr
* [#10315](https://github.com/apache/nuttx/pull/10315) include: socket can : support ioctl cmd SIOCCANRECOVERY
* [#10395](https://github.com/apache/nuttx/pull/10395) make:archive: Use the full path name when matching or storing names in the archive
* [#10463](https://github.com/apache/nuttx/pull/10463) modify debug to enable ERR:WARN:INFO when DEBUG_FEATURES is enabled
* [#10507](https://github.com/apache/nuttx/pull/10507) mmc: add timeout fields for mmc_ioc_cmd
* [#10555](https://github.com/apache/nuttx/pull/10555) mmc: change rpmb operation type define style
* [#10670](https://github.com/apache/nuttx/pull/10670) notifier: add BLOCKING_INIT_NOTIFIER_HEAD support
* [#9760](https://github.com/apache/nuttx/pull/9760) openamp:libmetal: Check CONFIG_HAVE_ATOMICS instead of HAVE_STDATOMIC_H in atomic.h
* [#10136](https://github.com/apache/nuttx/pull/10136) perf: The new configuration supports hardware performance counting
* [#10033](https://github.com/apache/nuttx/pull/10033) posix: fix some issues for ltp mqueue testcases.
* [#10002](https://github.com/apache/nuttx/pull/10002) posix: fix ltp test issues
* [#10581](https://github.com/apache/nuttx/pull/10581) split a single queue to two separate queues at node p.
* [#10664](https://github.com/apache/nuttx/pull/10664) unistd: add _POSIX_SEMAPHORES definition
* [#10110](https://github.com/apache/nuttx/pull/10110) use lib_free for memory deallocation after strdup or asprintf
* [#10458](https://github.com/apache/nuttx/pull/10458) video:fb: add xres and yres for fb overlay
|
Changes to the Build System
...