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
...
New Board Support
Board Improvements
...
File System
Improvements
Markdown |
---|
arm
* [#10995#10987](https://github.com/apache/nuttx/pull/1099510987) Change inode_checkflags to static functiongd32f4: add gd32f470i board support
* [#11445#11094](https://github.com/apache/nuttx/pull/1144511094) stm32: Fixadd hostfssupport after uid/gid changesto LINUM-STM32H753BI board
* [#11433#10990](https://github.com/apache/nuttx/pull/1143310990) fatstm32: Fixadd numbersupport ofto data clusters usable for fat driverSTM32F401RC-RS485 board
* [#11196#11358](https://github.com/apache/nuttx/pull/1119611358) fat stm32h7: linum-stm32h753bi: fixAdd ubsanmodbus warningexample of shift-out-of-boundsusing usart6
* [#10706#11276](https://github.com/apache/nuttx/pull/1070611276) fs_epollseeed-xiao-rp2040: severalAdd epollinitial problems fixboard support
xtensa
* [#11125#10976](https://github.com/apache/nuttx/pull/1112510976) fs_files.c: make sure that fs_getfilep is not interrupted when holding mutexAdd ESP32-2432S028 board
* [#11349#10928](https://github.com/apache/nuttx/pull/1134910928) fs_gettype:add zipfs magic
* [#11446esp32s3-box: Support hardware version 3
risc-v
* [#11379](https://github.com/apache/nuttx/pull/1144611379) hostfs:fixInitial structuresupport layoutfor inconsistency in hostfsCanMV-k230 board
* [#11090#11377](https://github.com/apache/nuttx/pull/1109011377) inode: Change inode_unlink to static function
* [#11188Add support for PINE64 Ox64 BL808 SBC
|
Board Improvements
Markdown |
---|
* [#11056](https://github.com/apache/nuttx/pull/1118811056) inode:Modify checktest file list before memcpy"ramtest" path
* [#11140#11192](https://github.com/apache/nuttx/pull/1114011192) inode:remove obsolete CONFIG_EXAMPLES_FOC_IPHASE_ADC option
|
arm
Markdown |
---|
improve the performance of get file pointer
* [#11318#11101](https://github.com/apache/nuttx/pull/1131811101) proccxd56xx: FixAdd groupfdcxd5610 to get fd by group instead of current tcb
* [#11449gnss driver
* [#11373](https://github.com/apache/nuttx/pull/1144911373) gd32f4xx: procfschange addgd32f470z pollboard supportcode
* [#11360#11193](https://github.com/apache/nuttx/pull/1136011193) procfs/cpuinfoimx6: Zero copylen in cpuinfo_readFix sabre-6quad:libcxx
* [#11039#11310](https://github.com/apache/nuttx/pull/1103911310) renamenrf52: fix use after free issue about renamenrf52832-dk: add timer example
* [#11451#10835](https://github.com/apache/nuttx/pull/1145110835) smartfsnrf52: Add necessary aligned access in smartfs_rename()remove CONFIG_ARMV7M_SYSTICK form tickless configs
* [#11248#11150](https://github.com/apache/nuttx/pull/1124811150) spiffssama5: correctAdd mutexQSPI lock cycle of spiffssupport SAMA5
* [#10804#11151](https://github.com/apache/nuttx/pull/1080411151) support zipfs,can mount zipfilesama5: sama5d2-xult: add support for QSPI flash and nxffs
* [#11232#11117](https://github.com/apache/nuttx/pull/1123211117) tmpfsstm32: fix an integer overflowb-g431b-esc1: don't use CONFIG_STM32_USE_LEGACY_PINMAP=y
* [#10880#11306](https://github.com/apache/nuttx/pull/1088011306) vfsstm32h7: addfix munmap logic to pseudofs
|
Networking
Improvements
Markdown |
---|
config conflict
* [#10813#11214](https://github.com/apache/nuttx/pull/10813) Add CONFIG_NET_ICMPv6_ROUTER_LIFETIME11214) stm32h7: linum-stm32h753bi: Add support to RTC and alarm
* [#10893#11167](https://github.com/apache/nuttx/pull/1089311167) allow icmpv6 and udpstm32h7: linum-stm32h753bi: Added suport to find the dev by the ifindex with s_boundto.
* [#10916userlerds library.
* [#11265](https://github.com/apache/nuttx/pull/1091611265) Fix RNDIS compilation error stm32f4: stm32f401rc-rs485: Add sdcard support
* [#10819#11217](https://github.com/apache/nuttx/pull/1081911217) localstm32f4: Fix the problem that local udp socketpair cannot release fifo files.stm32f401rc-rs485: Add buttons support
* [#11443#11169](https://github.com/apache/nuttx/pull/1144311169) localstm32f4: make the call return of each process consistent with linuxstm32f401rc-rs485: add support to userleds
* [#11015#11255](https://github.com/apache/nuttx/pull/1101511255) localstm32f4: Support SO_SNDBUF option in getsockopt
stm32f401rc-rs485: Fix f401rc flash size |
risc-v
Markdown |
---|
* [#11289#10736](https://github.com/apache/nuttx/pull/1128910736) loopbackesp32c3: pm: FixLet flagsPM_PROCFS ofdepend lo deviceon FS_PROCFS_REGISTER
* [#11324#11418](https://github.com/apache/nuttx/pull/1132411418) icmpv6esp32c6:Optimize theAdd process of obtaining the IPv6 address through RA.ostest defconfig
* [#11010#11096](https://github.com/apache/nuttx/pull/1101011096) icmpv6mpfs: Add Fixoption netfor maskboard logicspecific inPMP icmpv6_setaddressesconfiguration
* [#11197#11262](https://github.com/apache/nuttx/pull/1119711262) igmp: call IFF_SET_IPv4 when igmp_send qemu-rv: rv-virt/knsh: Set correct RAM_START and RAM_SIZE
* [#11384#11397](https://github.com/apache/nuttx/pull/1138411397) ipv6qemu-rv: Fix source address with many addresses in same networkVirtio sound |
sim
Markdown |
---|
* [#10960](https://github.com/apache/nuttx/pull/10960) fix Cygwin/MSYS2 ld: unrecognized option '-z'
* [#11378#11290](https://github.com/apache/nuttx/pull/1137811290) ipv6nxscope: Moveremove CONFIG_ALLSYMS=y |
xtensa
Markdown |
---|
xxx_ipv6multicast from arch to common code
* [#10894#11142](https://github.com/apache/nuttx/pull/1089411142) netdbesp32: WhenAdd set a dns nameserver which already exists, retrun OKLVGL defconfig
* [#11076#11229](https://github.com/apache/nuttx/pull/1107611229) netconfigesp32: EnableAdd SOCK_CLOEXECsupport forenconder ioctlto socketsESP32-2432S028
* [#11396#10961](https://github.com/apache/nuttx/pull/1139610961) netdevesp32: ModifyAdd thewifishare logicboard forconfig settingand the IFF_RUNNING status of interfaces.
* [#11110documentation
* [#10996](https://github.com/apache/nuttx/pull/1111010996) Simplifyesp32: gettingRename valueShift forgame differentto domain
* [#11054](https://github.com/apache/nuttx/pull/11054) Support multiple IPv6 address per netdevBrickmatch and add an board example to esp32-devkitc
* [#11406#11417](https://github.com/apache/nuttx/pull/1140611417) tcpesp32<|s2|s3>_board_spiflash: RecoverFix fromerror iobmessage shortageabout with TCP_WRITE_BUFFERSSmartFS init
* [#11126#11425](https://github.com/apache/nuttx/pull/1112611425) tcpesp32s2: SupportIncrease initialinit sequencetask numberstack describedsize into RFC 65283072
* [#11009#11156](https://github.com/apache/nuttx/pull/1100911156) tunesp32s3: FixLink the error of calling tun_close when tun_txavail or tun_txavail_work is executedstack checking function and data to SRAM when enable flash or PSRAM driver
* [#10986#11342](https://github.com/apache/nuttx/pull/1098611342) tunesp32s3: Fix the error of calling tun_close when tun_txavail or tun_txavail_work is executedadd esp32s3-devkit:toywasm kconfig
* [#11372#11295](https://github.com/apache/nuttx/pull/1137211295) udpesp32s3: Add check when sending too big packet without IP fragrtc defconfig
* [#11210#10885](https://github.com/apache/nuttx/pull/1121010885) udpESP32S3-EYE: AddGPIO supportand forbutton SO_TIMESTAMPsupport
* [#11120#10884](https://github.com/apache/nuttx/pull/1112010884) udp: modify ipv4 multicast to allow different conn to join simultaneously
* [#10878](https://github.com/apache/nuttx/pull/10878) usersock: Return -ENOSUPP directly if domain isn't equal to PF_INET/PF_INET6 |
Security Issues Fixed In This Release
Compatibility Concerns
Changes to Build System
Renamed or Modified Kconfig Options
...
ESP32-S3-EYE: I2C, SPI and LCD support
* [#10883](https://github.com/apache/nuttx/pull/10883) ESP32-S3-EYE: Wifi |
File System
Improvements
Markdown |
---|
* [#10995](https://github.com/apache/nuttx/pull/10995) Change inode_checkflags to static function
* [#11445](https://github.com/apache/nuttx/pull/11445) Fix hostfs after uid/gid changes
* [#11433](https://github.com/apache/nuttx/pull/11433) fat: Fix number of data clusters usable for fat driver
* [#11196](https://github.com/apache/nuttx/pull/11196) fat: fix ubsan warning of shift-out-of-bounds
* [#10706](https://github.com/apache/nuttx/pull/10706) fs_epoll: several epoll problems fix
* [#11125](https://github.com/apache/nuttx/pull/11125) fs_files.c: make sure that fs_getfilep is not interrupted when holding mutex
* [#11349](https://github.com/apache/nuttx/pull/11349) fs_gettype:add zipfs magic
* [#11446](https://github.com/apache/nuttx/pull/11446) hostfs:fix structure layout inconsistency in hostfs
* [#11090](https://github.com/apache/nuttx/pull/11090) inode: Change inode_unlink to static function
* [#11188](https://github.com/apache/nuttx/pull/11188) inode: check file list before memcpy
* [#11140](https://github.com/apache/nuttx/pull/11140) inode: improve the performance of get file pointer
* [#11318](https://github.com/apache/nuttx/pull/11318) proc: Fix groupfd to get fd by group instead of current tcb
* [#11449](https://github.com/apache/nuttx/pull/11449) procfs add poll support
* [#11360](https://github.com/apache/nuttx/pull/11360) procfs/cpuinfo: Zero copylen in cpuinfo_read
* [#11039](https://github.com/apache/nuttx/pull/11039) rename: fix use after free issue about rename
* [#11451](https://github.com/apache/nuttx/pull/11451) smartfs: Add necessary aligned access in smartfs_rename()
* [#11248](https://github.com/apache/nuttx/pull/11248) spiffs: correct mutex lock cycle of spiffs
* [#10804](https://github.com/apache/nuttx/pull/10804) support zipfs,can mount zipfile
* [#11232](https://github.com/apache/nuttx/pull/11232) tmpfs: fix an integer overflow
* [#10880](https://github.com/apache/nuttx/pull/10880) vfs: add munmap logic to pseudofs
|
Networking
Improvements
Markdown |
---|
* [#10813](https://github.com/apache/nuttx/pull/10813) Add CONFIG_NET_ICMPv6_ROUTER_LIFETIME
* [#10893](https://github.com/apache/nuttx/pull/10893) allow icmpv6 and udp to find the dev by the ifindex with s_boundto.
* [#10916](https://github.com/apache/nuttx/pull/10916) Fix RNDIS compilation error
* [#10819](https://github.com/apache/nuttx/pull/10819) local: Fix the problem that local udp socketpair cannot release fifo files.
* [#11443](https://github.com/apache/nuttx/pull/11443) local: make the call return of each process consistent with linux
* [#11015](https://github.com/apache/nuttx/pull/11015) local: Support SO_SNDBUF option in getsockopt
* [#11289](https://github.com/apache/nuttx/pull/11289) loopback: Fix flags of lo device
* [#11324](https://github.com/apache/nuttx/pull/11324) icmpv6:Optimize the process of obtaining the IPv6 address through RA.
* [#11010](https://github.com/apache/nuttx/pull/11010) icmpv6: Fix net mask logic in icmpv6_setaddresses
* [#11197](https://github.com/apache/nuttx/pull/11197) igmp: call IFF_SET_IPv4 when igmp_send
* [#11384](https://github.com/apache/nuttx/pull/11384) ipv6: Fix source address with many addresses in same network
* [#11378](https://github.com/apache/nuttx/pull/11378) ipv6: Move xxx_ipv6multicast from arch to common code
* [#10894](https://github.com/apache/nuttx/pull/10894) netdb: When set a dns nameserver which already exists, retrun OK
* [#11076](https://github.com/apache/nuttx/pull/11076) netconfig: Enable SOCK_CLOEXEC for ioctl sockets
* [#11396](https://github.com/apache/nuttx/pull/11396) netdev: Modify the logic for setting the IFF_RUNNING status of interfaces.
* [#11110](https://github.com/apache/nuttx/pull/11110) Simplify getting value for different domain
* [#11054](https://github.com/apache/nuttx/pull/11054) Support multiple IPv6 address per netdev
* [#11406](https://github.com/apache/nuttx/pull/11406) tcp: Recover from iob shortage with TCP_WRITE_BUFFERS
* [#11126](https://github.com/apache/nuttx/pull/11126) tcp: Support initial sequence number described in RFC 6528
* [#11009](https://github.com/apache/nuttx/pull/11009) tun: Fix the error of calling tun_close when tun_txavail or tun_txavail_work is executed
* [#10986](https://github.com/apache/nuttx/pull/10986) tun: Fix the error of calling tun_close when tun_txavail or tun_txavail_work is executed
* [#11372](https://github.com/apache/nuttx/pull/11372) udp: Add check when sending too big packet without IP frag
* [#11210](https://github.com/apache/nuttx/pull/11210) udp: Add support for SO_TIMESTAMP
* [#11120](https://github.com/apache/nuttx/pull/11120) udp: modify ipv4 multicast to allow different conn to join simultaneously
* [#10878](https://github.com/apache/nuttx/pull/10878) usersock: Return -ENOSUPP directly if domain isn't equal to PF_INET/PF_INET6 |
Security Issues Fixed In This Release
Compatibility Concerns
Markdown |
---|
* [#10605](https://github.com/apache/nuttx/pull/10605) Implement ticket spinlock
A proposal to slove #1488
Implement ticket spinlock.
* [#10861](https://github.com/apache/nuttx/pull/10861) spinlock: Add spin_lock_init and spin_is_locked macro
align with Linux api naming.
* [#11102](https://github.com/apache/nuttx/pull/11102) sched: explicitly select the cpuload clock source configuration
Different configurations require different dependencies.
Explicitly select dependencies to avoid automatically selecting
inappropriate configurations.
* [#11334](https://github.com/apache/nuttx/pull/11334) stm32h7_adc: Dynamically set clock prescaler and BOOST
First commit is aligning naming and is a breaking change.
* [#10827](https://github.com/apache/nuttx/pull/10827) Improve adjtime() functionality
Prior pull request #9084 and issue #8858 added basic adjtime()
support for the SAMv7 platform.
This pull request adds support for STM32 platform.
In addition I have made a few changes to the adjtime() configuration
options:
1) Previously adjustments less than 1 microsecond per tick would be
completely ignored. Now they are applied over a shorter period at
a rate of 1 us per tick.
2) Previously CLOCK_ADJTIME_PERIOD was in units of 1/100th of second.
Change to milliseconds to be more generally useful unit.
Change setting name to CLOCK_ADJTIME_PERIOD_MS to make the unit change
easier to notice.
3) Previously CLOCK_ADJTIME_SLEWLIMIT was in percentage.
Most clock crystals have better accuracy than 1%, so the minimum slew
rate was excessive. Change to CLOCK_ADJTIME_SLEWLIMIT_PPM with setting
value in parts per million.
4) No need to use floating point math in clock_adjtime.c.
Impact
Users who have used CLOCK_ADJTIME_PERIOD and CLOCK_ADJTIME_SLEWLIMIT
settings should update their configuration. New CLOCK_ADJTIME_PERIOD_MS is
10x the old period value, and new CLOCK_ADJTIME_SLEWLIMIT_PPM is 10000 times
the old slewlimit. |
Known Problems In This Release
NuttX on Ox64: getprime + hello crashes
Markdown |
---|
NuttShell (NSH) NuttX-12.4.0
nsh> uname -a
NuttX 12.4.0 96c2707737 Jan 15 2024 10:35:29 risc-v ox64
nsh>
nsh> getprime
Set thread priority to 10
Set thread policy to SCHED_RR
Start thread #0
thread #0 started, looking for primes < 10000, doing 10 run(s)
thread #0 finished, found 1230 primes, last one was 9973
Done
getprime took 0 msec
nsh>
nsh> hello
riscv_exception: EXCEPTION: Store/AMO page fault. MCAUSE: 000000000000000f, EPC: 0000000050208fcc, MTVAL: 0000000080200000
riscv_exception: PANIC!!! Exception = 000000000000000f |
More Information
How to Download
...
The main "Single Source of Truth" repositories are hosted by the ASF:
These are synchronized with repositories hosted at GitHub:
...