Call for testers with NVMe

From: Ruslan Zalata <rz_at_fabmicro.ru>
Date: Sat, 19 Sep 2026 16:49:13 UTC
Hello Abdelkader,

Excuse me for being a bit late to the party, here below are test results
made on my commodity hardware (AMD Ryzen 5 based mini-PC).

The machine:

CPU: AMD Ryzen 5 7535HS with Radeon Graphics (3293.97-MHz K8-class CPU)
Origin="AuthenticAMD" Id=0xa40f41 Family=0x19 Model=0x44 Stepping=1
Features=0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT>
Features2=0x7ef8320b<SSE3,PCLMULQDQ,MON,SSSE3,FMA,CX16,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,AESNI,XSAVE,OSXSAVE,AVX,F16C,RDRAND>
AMD Features=0x2e500800<SYSCALL,NX,MMX+,FFXSR,Page1GB,RDTSCP,LM>
AMD
Features2=0x75c237ff<LAHF,CMP,SVM,ExtAPIC,CR8,ABM,SSE4A,MAS,Prefetch,OSVW,IBS,SKINIT,WDT,TCE,Topology,PCXC,PNXC,DBE,PL2I,MWAITX,A
DMSKX>
Structured Extended
Features=0x219c97a9<FSGSBASE,BMI1,AVX2,SMEP,BMI2,ERMS,INVPCID,PQM,PQE,RDSEED,ADX,SMAP,CLFLUSHOPT,CLWB,SHA>
Structured Extended
Features2=0x40069c<UMIP,PKU,OSPKE,VAES,VPCLMULQDQ,RDPID>
Structured Extended Features3=0x10<FSRM>
XSAVE Features=0xf<XSAVEOPT,XSAVEC,XINUSE,XSAVES>
AMD Extended Feature Extensions ID
EBX=0x191ef657<CLZERO,IRPerf,XSaveErPtr,RDPRU,BE,WBNOINVD,IBPB,INT_WBINVD,IBRS,STIBP,STIBP_ALWAYSO
N,PREFER_IBRS,SAMEMODE_IBRS,NOLMSLE,SSBD,CPPC,PSFD>
SVM: NP,NRIP,VClean,AFlush,DAssist,NAsids=32768
TSC: P-state invariant, performance statistics
real memory = 17179869184 (16384 MB)
avail memory = 15920312320 (15182 MB)

ACPI APIC Table: <ALASKA A M I >
FreeBSD/SMP: Multiprocessor System Detected: 12 CPUs
FreeBSD/SMP: 1 package(s) x 6 core(s) x 2 hardware threads

nvme0@pci0:4:0:0: class=0x010802 rev=0x01 hdr=0x00 vendor=0x1dee
device=0x1202 subvendor=0x1dee subdevice=0x1202
vendor = 'Biwin Storage Technology Co., Ltd.'
device = 'HP EX900 Plus NVMe SSD (DRAM-less)'
class = mass storage
subclass = NVM

Test on 15.1 stock kernel (no patch):

root@megamini:/home/rz/FreeBSD-src/src-current # dd if=/dev/nvd0
of=/dev/null bs=819200 iflag=direct status=progress
^C19326566400 bytes (19 GB, 18 GiB) transferred 10.030s, 1927 MB/s 
24593+0 records in
24593+0 records out
20146585600 bytes transferred in 10.429100 secs (1931766530 bytes/sec)

Test on pre-patched 16.0 kernel:

root@megamini:~ # uname -a
FreeBSD megamini 16.0-CURRENT FreeBSD 16.0-CURRENT #0 main-47f9e6650782:
Sat Sep 19 19:34:43 +05 2026
rz@megamini:/home/rz/FreeBSD-src/src-current/obj/amd64.amd64/sys/GENERIC
amd64

root@megamini:~ # dd if=/dev/nvd0 of=/dev/null bs=819200 iflag=direct
status=progress
^C10170368000 bytes (10 GB, 9699 MiB) transferred 5.057s, 2011 MB/s 
13640+0 records in
13640+0 records out
11173888000 bytes transferred in 5.545963 secs (2014778813 bytes/sec)

Test on 16.0 kernel with patch stack applied:

root@megamini:/home/rz # uname -a
FreeBSD megamini 16.0-CURRENT FreeBSD 16.0-CURRENT #1
drop_s3x_quirk_test-b90ba7e5f8f8: Sat Sep 19 21:26:27 +05 2026
rz@megamini:/home/rz/FreeBSD-src/src-current/obj/amd64.amd64/sys/GENERIC
amd64
root@megamini:/home/rz # 
root@megamini:/home/rz # 
root@megamini:/home/rz # dd if=/dev/nvd0 of=/dev/null bs=819200
iflag=direct status=progress
^C28062515200 bytes (28 GB, 26 GiB) transferred 14.004s, 2004 MB/s 
34464+0 records in
34464+0 records out
28232908800 bytes transferred in 14.066009 secs (2007172693 bytes/sec)

Conclusion: the patch works, yet no significant increase in throughput.

Just my two cents.

---
Regards,
Ruslan 

>