Hi,

Here my tests on QEMU rv-virt target basically passed, so vote +1 for it.

Most configs works smoothly except the `rv-virt:smp` one needs minor tweaks.

Below are detailed logs.

### toolchain

Toolchain name: `gcc-riscv64-unknown-elf 10.2.0-0ubuntu1` on Ubuntu 22.04

```shell
$ riscv64-unknown-elf-gcc -v
Using built-in specs.
Target: riscv64-unknown-elf
Thread model: single
Supported LTO compression algorithms: zlib
gcc version 10.2.0 ()
```
### nsbi

```sh
$ qemu-system-riscv32 -M virt,aclint=on -semihosting -nographic -bios nuttx
ABC
NuttShell (NSH) NuttX-12.10.0
nsh> cat /proc/version
NuttX version 12.10.0 6fc5b3e9dc Jul  3 2025 07:09:43 rv-virt:nsbi
nsh> free; ostest > /dev/null; rm -r /var; sleep 1; free
      total       used       free    maxused    maxfree  nused  nfree name
    4158460       8428    4150032      20488    4148184     25      4 Kmem
    4194304     602112    3592192               3592192               Page
stdio_test: write fd=2
stdio_test: Standard I/O Check: fprintf to stderr
setvbuf_test: Using NO buffering
setvbuf_test: Using default FULL buffering
setvbuf_test: Using FULL buffering, buffer size 64
setvbuf_test: Using FULL buffering, pre-allocated buffer
setvbuf_test: Using LINE buffering, buffer size 64
setvbuf_test: Using FULL buffering, pre-allocated buffer
      total       used       free    maxused    maxfree  nused  nfree name
    4158460       8428    4150032      42816    4148184     25      4 Kmem
    4194304     602112    3592192               3592192               Page
nsh> quit
```

### knsh64

```sh
$ qemu-system-riscv64 -M virt,aclint=on -semihosting -nographic -kernel nuttx

OpenSBI v1.5.1
   ____                    _____ ____ _____
  / __ \                  / ____|  _ \_   _|
 | |  | |_ __   ___ _ __ | (___ | |_) || |
 | |  | | '_ \ / _ \ '_ \ \___ \|  _ < | |
 | |__| | |_) |  __/ | | |____) | |_) || |_
  \____/| .__/ \___|_| |_|_____/|____/_____|
        | |
        |_|

Platform Name             : riscv-virtio,qemu
Platform Features         : medeleg
Platform HART Count       : 1
Platform IPI Device       : aclint-mswi
Platform Timer Device     : aclint-mtimer @ 10000000Hz
Platform Console Device   : semihosting
Platform HSM Device       : ---
Platform PMU Device       : ---
Platform Reboot Device    : syscon-reboot
Platform Shutdown Device  : syscon-poweroff
Platform Suspend Device   : ---
Platform CPPC Device      : ---
Firmware Base             : 0x80000000
Firmware Size             : 327 KB
Firmware RW Offset        : 0x40000
Firmware RW Size          : 71 KB
Firmware Heap Offset      : 0x49000
Firmware Heap Size        : 35 KB (total), 2 KB (reserved), 11 KB (used), 21 KB
(free)
Firmware Scratch Size     : 4096 B (total), 416 B (used), 3680 B (free)
Runtime SBI Version       : 2.0

Domain0 Name              : root
Domain0 Boot HART         : 0
Domain0 HARTs             : 0*
Domain0 Region00          : 0x0000000000100000-0x0000000000100fff M: (I,R,W)
S/U: (R,W)
Domain0 Region01          : 0x0000000002000000-0x000000000200ffff M: (I,R,W)
S/U: ()
Domain0 Region02          : 0x0000000080040000-0x000000008005ffff M: (R,W) S/U:
()
Domain0 Region03          : 0x0000000080000000-0x000000008003ffff M: (R,X) S/U:
()
Domain0 Region04          : 0x000000000c400000-0x000000000c5fffff M: (I,R,W)
S/U: (R,W)
Domain0 Region05          : 0x000000000c000000-0x000000000c3fffff M: (I,R,W)
S/U: (R,W)
Domain0 Region06          : 0x0000000000000000-0xffffffffffffffff M: () S/U:
(R,W,X)
Domain0 Next Address      : 0x0000000080200000
Domain0 Next Arg1         : 0x0000000087e00000
Domain0 Next Mode         : S-mode
Domain0 SysReset          : yes
Domain0 SysSuspend        : yes

Boot HART ID              : 0
Boot HART Domain          : root
Boot HART Priv Version    : v1.12
Boot HART Base ISA        : rv64imafdch
Boot HART ISA Extensions  : sstc,zicntr,zihpm,zicboz,zicbom,sdtrig,svadu
Boot HART PMP Count       : 16
Boot HART PMP Granularity : 2 bits
Boot HART PMP Address Bits: 54
Boot HART MHPM Info       : 16 (0x0007fff8)
Boot HART Debug Triggers  : 2 triggers
Boot HART MIDELEG         : 0x0000000000001666
Boot HART MEDELEG         : 0x0000000000f0b509
ABC
NuttShell (NSH) NuttX-12.10.0
nsh> cat /proc/version
NuttX version 12.10.0 6fc5b3e9dc Jul  3 2025 07:18:03 rv-virt:knsh64
nsh> free; ostest > /dev/null; rm -r /var; sleep 1; free
      total       used       free    maxused    maxfree  nused  nfree name
    2064480      10040    2054440      21824    2050992     25      4 Kmem
    4194304     606208    3588096               3588096               Page
stdio_test: write fd=2
stdio_test: Standard I/O Check: fprintf to stderr
setvbuf_test: Using NO buffering
setvbuf_test: Using default FULL buffering
setvbuf_test: Using FULL buffering, buffer size 64
setvbuf_test: Using FULL buffering, pre-allocated buffer
setvbuf_test: Using LINE buffering, buffer size 64
setvbuf_test: Using FULL buffering, pre-allocated buffer
      total       used       free    maxused    maxfree  nused  nfree name
    2064480      10040    2054440      47344    2050992     25      4 Kmem
    4194304     606208    3588096               3588096               Page
nsh>
```

### flats64

```sh
$ qemu-system-riscv64 -M virt,aclint=on -semihosting -nographic -kernel nuttx

OpenSBI v1.5.1
   ____                    _____ ____ _____
  / __ \                  / ____|  _ \_   _|
 | |  | |_ __   ___ _ __ | (___ | |_) || |
 | |  | | '_ \ / _ \ '_ \ \___ \|  _ < | |
 | |__| | |_) |  __/ | | |____) | |_) || |_
  \____/| .__/ \___|_| |_|_____/|____/_____|
        | |
        |_|

Platform Name             : riscv-virtio,qemu
Platform Features         : medeleg
Platform HART Count       : 1
Platform IPI Device       : aclint-mswi
Platform Timer Device     : aclint-mtimer @ 10000000Hz
Platform Console Device   : semihosting
Platform HSM Device       : ---
Platform PMU Device       : ---
Platform Reboot Device    : syscon-reboot
Platform Shutdown Device  : syscon-poweroff
Platform Suspend Device   : ---
Platform CPPC Device      : ---
Firmware Base             : 0x80000000
Firmware Size             : 327 KB
Firmware RW Offset        : 0x40000
Firmware RW Size          : 71 KB
Firmware Heap Offset      : 0x49000
Firmware Heap Size        : 35 KB (total), 2 KB (reserved), 11 KB (used), 21 KB
(free)
Firmware Scratch Size     : 4096 B (total), 416 B (used), 3680 B (free)
Runtime SBI Version       : 2.0

Domain0 Name              : root
Domain0 Boot HART         : 0
Domain0 HARTs             : 0*
Domain0 Region00          : 0x0000000000100000-0x0000000000100fff M: (I,R,W)
S/U: (R,W)
Domain0 Region01          : 0x0000000002000000-0x000000000200ffff M: (I,R,W)
S/U: ()
Domain0 Region02          : 0x0000000080040000-0x000000008005ffff M: (R,W) S/U:
()
Domain0 Region03          : 0x0000000080000000-0x000000008003ffff M: (R,X) S/U:
()
Domain0 Region04          : 0x000000000c400000-0x000000000c5fffff M: (I,R,W)
S/U: (R,W)
Domain0 Region05          : 0x000000000c000000-0x000000000c3fffff M: (I,R,W)
S/U: (R,W)
Domain0 Region06          : 0x0000000000000000-0xffffffffffffffff M: () S/U:
(R,W,X)
Domain0 Next Address      : 0x0000000080200000
Domain0 Next Arg1         : 0x0000000087e00000
Domain0 Next Mode         : S-mode
Domain0 SysReset          : yes
Domain0 SysSuspend        : yes

Boot HART ID              : 0
Boot HART Domain          : root
Boot HART Priv Version    : v1.12
Boot HART Base ISA        : rv64imafdch
Boot HART ISA Extensions  : sstc,zicntr,zihpm,zicboz,zicbom,sdtrig,svadu
Boot HART PMP Count       : 16
Boot HART PMP Granularity : 2 bits
Boot HART PMP Address Bits: 54
Boot HART MHPM Info       : 16 (0x0007fff8)
Boot HART Debug Triggers  : 2 triggers
Boot HART MIDELEG         : 0x0000000000001666
Boot HART MEDELEG         : 0x0000000000f0b509
ABC
NuttShell (NSH) NuttX-12.10.0
nsh> cat /proc/version
NuttX version 12.10.0 6fc5b3e9dc Jul  3 2025 07:22:55 rv-virt:flats64
nsh> free; ostest > /dev/null; rm -r /var; sleep 1; free
      total       used       free    maxused    maxfree  nused  nfree name
   33340608       8224   33332384       8896   33332384     22      1 Umem
stdio_test: write fd=2
stdio_test: Standard I/O Check: fprintf to stderr
setvbuf_test: Using NO buffering
setvbuf_test: Using default FULL buffering
setvbuf_test: Using FULL buffering, buffer size 64
setvbuf_test: Using FULL buffering, pre-allocated buffer
setvbuf_test: Using LINE buffering, buffer size 64
setvbuf_test: Using FULL buffering, pre-allocated buffer
      total       used       free    maxused    maxfree  nused  nfree name
   33340608       8224   33332384      50744   33332384     22      1 Umem
nsh>
```

### smp

The `rv-virt:smp` doesn't build, adjusting defconfig can build it:

```sh
$ ddiff rv-virt:smp rv-virt:yfsmp
63c63
< CONFIG_LIBM_TOOLCHAIN=y
---
> CONFIG_LIBM=y
```

Also the NSH lacks stdout redirection and ';' separated commands list is not
supported, so commands were run line by line.

```sh
$ qemu-system-riscv32 -M virt,aclint=on -semihosting -nographic -bios nuttx -smp
8

NuttShell (NSH) NuttX-12.10.0
nsh> cat /proc/version
NuttX version 12.10.0 6fc5b3e9dc Jul  3 2025 07:29:21 rv-virt:yfsmp
nsh> free;
      total       used       free    maxused    maxfree  nused  nfree name
   33361600       5128   33356472       5512   33356472     19      1 Umem
nsh> ostest
stdio_test: write fd=1
...
Final memory usage:
VARIABLE  BEFORE   AFTER
======== ======== ========
arena     1fd0ec0  1fd0ec0
ordblks         1       12
mxordblk  1fccd28  1fbc490
uordblks     4198     8ca0
fordblks  1fccd28  1fc8220
user_main: Exiting
ostest_main: Exiting with status 0
nsh> rm -r /var
nsh> sleep 1
nsh> free
      total       used       free    maxused    maxfree  nused  nfree name
   33361600      26360   33335240     107032   33277072     27      9 Umem
nsh>
```

Regards,
yf


On Mon, 2025-06-30 at 07:05 +0200, Alin Jerpelea wrote:
> Hello all,
> 
> Apache NuttX 12.10.0 RC0 has been staged under [1] and it's
> time to vote on accepting it for release. Voting will be open for 72hr.
> 
> A minimum of 3 binding +1 votes and more binding +1 than binding -1 are
> required to pass.
> 
> The Apache requirements for approving a release can be found here [3]
> "Before voting +1 PMC members are required to download the signed
> source code package, compile it as provided, and test the resulting
> executable on their own platform, along with also verifying that the
> package meets the requirements of the ASF policy on releases."
> 
> A document to walk through some of this process has been published on
> our project wiki and can be found here [4].
> 
> [ ] +1 accept (indicate what you validated - e.g. performed the non-RM
> items in [4])
> [ ] -1 reject (explanation required)
> 
> Thank you all,
> Alin Jerpelea
> 
> SCM Information:
>   Release tag: nuttx-12.10.0-RC0
>   Hash for the release nuttx tag: 6fc5b3e9dc51dcda46d99519f72b7f2ec6db2e64
>   Hash for the release nuttx-apps tag:
> 8ff533beb37eeef1f288c467acd7c50b542464eb
> 
> [1] https://dist.apache.org/repos/dist/dev/nuttx/12.10.0-RC0/
> [2]
> https://raw.githubusercontent.com/apache/nuttx/nuttx-12.10.0-RC0/ReleaseNotes
> [3] https://www.apache.org/dev/release.html#approving-a-release
> [4]
> https://cwiki.apache.org/confluence/display/NUTTX/Validating+a+staged+Release

Reply via email to