Sun Microsystems, Inc.  Oracle System Handbook - ISO 7.0 May 2018 Internal/Partner Edition
   Home | Current Systems | Former STK Products | EOL Systems | Components | General Info | Search | Feedback

Asset ID: 1-72-2044500.1
Update Date:2015-08-18
Keywords:

Solution Type  Problem Resolution Sure

Solution  2044500.1 :   zpool replace/add Hangs in dsi_pri_open  


Related Items
  • Solaris Operating System
  •  
  • Sun Fire T2000 Server
  •  
Related Categories
  • PLA-Support>Sun Systems>SAND>Kernel>SN-SND: Sun Kernel ZFS
  •  




In this Document
Symptoms
Cause
Solution


Created from <SR 3-11199432891>

Applies to:

Solaris SPARC Operating System - Version 10 3/05 and later
Sun Fire T2000 Server - Version All Versions and later
SPARC

Symptoms

"zpool create" and "zpool add" hang and are unkillable on a T2000 with current firmware.

Cause

If we look at the kernel stacks when this happens we see  many stacks of the form:

0000030008fdb1c0      6003df0e030      6003d23b3f8   1  59      6003e5503d8
 PC: cv_wait_sig+0x114    CMD: /usr/lib/picl/picld
 stack pointer for thread 30008fdb1c0: 2a102664d41
 [ 000002a102664d41 cv_wait_sig+0x114() ]
   ds_pri_open+0x74()
   spec_open+0x4f4()
   fop_open+0x78()
   vn_openat+0x4fc()
   copen+0x260()
   syscall_trap32+0xcc()

00000300ba544b60      300aa50a158      300a8abb7d0   1  59      6003e5503d8
 PC: cv_wait_sig+0x114    CMD: zpool add -n rpool mirror c0t0d0s0 c0t1d0s0
 stack pointer for thread 300ba544b60: 2a10a430d41
 [ 000002a10a430d41 cv_wait_sig+0x114() ]
   ds_pri_open+0x74()
   spec_open+0x4f4()
   fop_open+0x78()
   vn_openat+0x4fc()
   copen+0x260()
   syscall_trap32+0xcc()

000003000428a000      6004f8586c0      6003bc82c08   1  59      6003e5503d8
 PC: cv_wait_sig+0x114    CMD: /usr/lib/fm/fmd/fmd
 stack pointer for thread 3000428a000: 2a102a4ad41
 [ 000002a102a4ad41 cv_wait_sig+0x114() ]
   ds_pri_open+0x74()
   spec_open+0x4f4()
   fop_open+0x78()
   vn_openat+0x4fc()
   copen+0x260()
   syscall_trap32+0xcc()

 

Solution

It looks like we have failed to correctly attach the ds_pri driver, as we are waiting in a loop that will continue until it is correctly attached. There does not appear to be a way inside Solaris to rectify this, however resetting the service processor causes the module to be reattached and appears to resolve the issue.


Attachments
This solution has no attachment
  Copyright © 2018 Oracle, Inc.  All rights reserved.
 Feedback