Solaris: prtdiag atascado en Environmental Status (Fan sensors)

Una entrada rápida para dar solución a un problema que se puede presentar cuando durante la ejecución del comando prtdiag en Solaris. El problema consiste en que la ejecución no llega a terminar, quedando atascada en un determinado punto, en este caso específico a la hora de mostrar información sobre los sensores de ventiladores.

root@foo:~# prtdiag 

[...]
======================================== IO Devices =======================================
Slot +            Bus   Name +                            Model      Max Speed  Cur Speed 
Status            Type  Path                                         /Width     /Width    
-------------------------------------------------------------------------------------------
/SYS/MB/XGBE      PCIE  network-pciex8086,1589                       8.0GT/x8   8.0GT/x8   
                        /pci@300/pci@1/pci@0/pci@1/network@0        
/SYS/MB/NET1      PCIE  network-pciex8086,1589                       8.0GT/x8   8.0GT/x8   
                        /pci@300/pci@1/pci@0/pci@1/network@0,1      
/SYS/MB/NET2      PCIE  network-pciex8086,1589                       8.0GT/x8   8.0GT/x8   
                        /pci@300/pci@1/pci@0/pci@1/network@0,2      
/SYS/MB/NET3      PCIE  network-pciex8086,1589                       8.0GT/x8   8.0GT/x8   
                        /pci@300/pci@1/pci@0/pci@1/network@0,3      
/SYS/MB/USB_CTRL  PCIE  usb-pciexclass,0c0330                        5.0GT/x1   5.0GT/x1   
                        /pci@300/pci@1/pci@0/pci@2/usb@0            
/SYS/MB/RISER3/PCIE3 PCIE  network-pciex8086,10fb            X1109a-z/1109a-z 5.0GT/x8   5.0GT/x8   
                        /pci@300/pci@2/pci@0/pci@13/network@0       
/SYS/MB/RISER3/PCIE3 PCIE  network-pciex8086,10fb            X1109a-z/1109a-z 5.0GT/x8   5.0GT/x8   
                        /pci@300/pci@2/pci@0/pci@13/network@0,1     
/SYS/MB/RISER1/PCIE1 PCIE  network-pciex8086,10fb            X1109a-z/1109a-z 5.0GT/x8   5.0GT/x8   
                        /pci@302/pci@1/pci@0/pci@11/network@0       
/SYS/MB/RISER1/PCIE1 PCIE  network-pciex8086,10fb            X1109a-z/1109a-z 5.0GT/x8   5.0GT/x8   
                        /pci@302/pci@1/pci@0/pci@11/network@0,1     
/SYS/MB/RISER3/PCIE4 PCIE  LSI,sas-pciex1000,97              LSI,3008   8.0GT/x8   8.0GT/x8   
                        /pci@302/pci@2/pci@0/pci@14/LSI,sas@0       

============================ Environmental Status ============================

Fan sensors:




El origen del problema está en el servicio picl. El framework PICL de Solaris proporciona información sobre la configuración del sistema que mantiene en el árbol PICL. Es por esto que cuando se presenta este error en prtdiag, tampoco funcionará el comando prtpicl.

La solución al problema es sencilla, es suficiente con reiniciar el servicio correspondiente:

root@foo:~# svcs -a | grep -i picl
online          7:07:40 svc:/system/picl:default

root@foo:~# svcadm -v disable svc:/system/picl:default
svc:/system/picl:default disabled.

root@foo:~# svcadm -v enable svc:/system/picl:default

root@foo:~# svcs -a | grep -i picl
online          7:17:40 svc:/system/picl:default