Hello,
I am experiencing repeatable kernel panics on FreeBSD 16.0-CURRENT during operations that perform heavy filesystem activity such as pkg update, pkg upgrade, or make buildworld. The panic consistently occurs inside the ZFS I/O path together with copyin/copyout.
System
uname -a
FreeBSD 16.0-CURRENT #0: Sun Mar 15 13:03:21 CET 2026
CPU
sysctl hw.model
hw.model: Intel(R) Core(TM) Ultra 9 285K
Logical CPUs
sysctl hw.ncpu
hw.ncpu: 24
RAM
sysctl hw.physmem
hw.physmem: 68152446976
(~64 GB RAM)
Filesystem: ZFS root
ZFS status
zpool status -v
pool: zroot
state: ONLINE
config:
NAME STATE READ WRITE CKSUM
zroot ONLINE 0 0 0
ada1p4 ONLINE 0 0 0
errors: No known data errors
Typical panic trace
Fatal trap 12: page fault while in kernel mode
panic: page fault
copyin_smap_erms
uiomove_faultflag
dmu_read_uio_dnode
zfs_read
zfs_freebsd_read
VOP_READ_APV
vn_read
sys_read
amd64_syscall
fast_syscall_common
In some cases it appears in the write path:
copyin_smap_erms
uiomove_faultflag
zfs_write
vn_write
sys_write
When the panic occurs
The panic occurs during:
- pkg update
- pkg upgrade
- make buildworld
- make -j1 buildworld
- LLVM compilation inside buildworld
Even running buildworld with -j1 still triggers the panic.
Things I already tried
Disabled ZFS prefetch:
sysctl vfs.zfs.prefetch.disable=1
Tried disabling SMAP:
set hw.smap.enable=0
Booting with single CPU:
set kern.smp.disabled=1
Rebuilt kernel from /usr/src:
make buildkernel
env ALLOW_PKGBASE_INSTALLKERNEL=yes make installkernel
None of the above resolved the panic.
Additional test
A simple large sequential write test works without problems:
dd if=/dev/zero of=/tmp/testfile bs=1m count
I am experiencing repeatable kernel panics on FreeBSD 16.0-CURRENT during operations that perform heavy filesystem activity such as pkg update, pkg upgrade, or make buildworld. The panic consistently occurs inside the ZFS I/O path together with copyin/copyout.
System
uname -a
FreeBSD 16.0-CURRENT #0: Sun Mar 15 13:03:21 CET 2026
CPU
sysctl hw.model
hw.model: Intel(R) Core(TM) Ultra 9 285K
Logical CPUs
sysctl hw.ncpu
hw.ncpu: 24
RAM
sysctl hw.physmem
hw.physmem: 68152446976
(~64 GB RAM)
Filesystem: ZFS root
ZFS status
zpool status -v
pool: zroot
state: ONLINE
config:
NAME STATE READ WRITE CKSUM
zroot ONLINE 0 0 0
ada1p4 ONLINE 0 0 0
errors: No known data errors
Typical panic trace
Fatal trap 12: page fault while in kernel mode
panic: page fault
copyin_smap_erms
uiomove_faultflag
dmu_read_uio_dnode
zfs_read
zfs_freebsd_read
VOP_READ_APV
vn_read
sys_read
amd64_syscall
fast_syscall_common
In some cases it appears in the write path:
copyin_smap_erms
uiomove_faultflag
zfs_write
vn_write
sys_write
When the panic occurs
The panic occurs during:
- pkg update
- pkg upgrade
- make buildworld
- make -j1 buildworld
- LLVM compilation inside buildworld
Even running buildworld with -j1 still triggers the panic.
Things I already tried
Disabled ZFS prefetch:
sysctl vfs.zfs.prefetch.disable=1
Tried disabling SMAP:
set hw.smap.enable=0
Booting with single CPU:
set kern.smp.disabled=1
Rebuilt kernel from /usr/src:
make buildkernel
env ALLOW_PKGBASE_INSTALLKERNEL=yes make installkernel
None of the above resolved the panic.
Additional test
A simple large sequential write test works without problems:
dd if=/dev/zero of=/tmp/testfile bs=1m count

