My Oracle Support Banner

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.


Symptoms

1. The system will panic with the following string and stack:

Panic string:

type=31 rp=2a100f96f20 addr=28 mmu_fsr=0 occurred in module "zfs" due to a NULL pointer dereference

Panic stack:

 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.

Cause

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
Symptoms
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.