Solaris systems running KU 150400-02 or lower may panic with: type=31 rp=2a100f96f20 addr=28 mmu_fsr=0 occurred in module "zfs" due to a NULL pointer dereference
(Doc ID 1615904.1)
Last updated on APRIL 06, 2021
Applies to:Solaris Operating System - Version 10 1/13 U11 and later
Information in this document applies to any platform.
Only ZFS pools with L2ARC (cache) devices are susceptible to this issue.
1. The system will panic with the following string and stack:
type=31 rp=2a100f96f20 addr=28 mmu_fsr=0 occurred in module "zfs" due to a NULL pointer dereference
zfs:arc_hash_replace+0x30 ( )
zfs:arc_kill_buf+0x120 ( )
zfs:arc_evict_buf+0x1d0 ( )
zfs:arc_evict_bytes+0x70 ( )
zfs:arc_get_data_block+0xc4 ( )
zfs:arc_read+0x4d4 ( )
zfs:dsl_read+0x44 ( )
zfs:dbuf_prefetch+0x140 ( )
zfs:dmu_prefetch+0x11c ( )
zfs:metaslab_prefetch+0x80 ( )
zfs:metaslab_sync_reassess+0xe4 ( )
zfs:vdev_sync_done ( )
zfs:spa_sync+0x71c ( )
zfs:txg_sync_thread+0x1b8 ( )
unix:thread_start+4 ( )
2. The ZFS pool associated with the panic must have a separate Layer 2 Adaptive Replacement Cache (L2ARC) device.
To determine if a pool has a separate L2ARC device, execute the following command. A L2ARC device will be displayed as "cache", as seen in the example below:
# /usr/sbin/zpool status <pool> ... NAME STATE READ WRITE CKSUM <pool> ONLINE 0 0 0 c2t10d0 ONLINE 0 0 0 cache c2t11d0 ONLINE 0 0 0
In this example the pool has one cache device c2t11d0 and is therefore susceptible to the issue.
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document