Depurando modulos en OpenSolaris

Hace ya algo de tiempo había venido experimentando algunos reboots injustificados en mi laptop al momento del inicio de sesión en SXCE b83. Cuando el escritorio empezaba a cargar, repentinamente se congelaba todo el laptop y se reiniciaba el sistema luego de unos segundos después de quedar sin vida. Al principio no le pare bolas, ya que no tenia tiempo para ver que es lo que estaba pasando, sin embargo, ahora que me volvió a pasar (de hecho, de manera más frecuente) y dada la oportunidad que no tengo nada que hacer esta tarde, me puse en la tarea de diagnosticar la razón de las fritadas. En Solaris (por ende, OpenSolaris), los logs de los crashes son guardados en /var/crash/`hostname` y dependen de la configuración del dump facility, que se configura con dumpadm. En el momento en que el sistema va a colapsar, dependiendo de la configuración del volcado, el servicio SMF de dumpadm guarda una copia en el disco de la memoria física del equipo antes de que este se muriera, y luego de que el dump haya sido guardado, el servicio continua con el reboot del sistema. # dumpadm Dump content: kernel pages Dump device: /dev/dsk/c1t0d0s1 (swap) Savecore directory: /var/crash/futurisk Savecore enabled: yes # Pero, ¿que podemos diagnosticar de los volcados?. Utilizando nuestro buen amigo mdb y teniendo los dos archivos requeridos para diagnosticar el problema, podemos ver en que estado estuvo la maquina antes de que se reiniciara el equipo; los archivos son vmcore.X y unix.X, donde vmcore es el archivo que contiene todos los datos del volcado del crash y unix es el que tiene los datos de los módulos que estaban cargados en el kernel al momento de la pataleta. # mdb unix.0 vmcore.0 Loading modules: [ unix genunix specfs dtrace cpu.generic uppc pcplusmp scsi_vhci ufs ip hook neti sctp arp usba uhci s1394 fctl nca lofs zfs random audiosup sppp ptm crypto ipc md cpc smbsrv fcip fcp logindmux nsctl sdbc sv ii rdc ] > ::status debugging crash dump vmcore.0 (64-bit) from futurisk operating system: 5.11 snv_83 (i86pc) panic message: BAD TRAP: type=e (#pf Page fault) rp=ffffff0005403600 addr=ffffff015134c6e2 dump content: kernel pages only > Genial, ahora sabemos que es un page fault. Por lo general esto indica problemas de software, entonces puedo descartar la posibilidad de que mi laptop se este dañando. Sin embargo, ya entrando en gastos con mdb, veamos que otro tipo de información podemos obtener. > ::panicinfo cpu 0 thread ffffff014b54e940 message BAD TRAP: type=e (#pf Page fault) rp=ffffff0005403600 addr=ffffff015134c6e2 rdi ffffff015134b000 rsi 0 rdx 40000 rcx 5dae00 [más y más registros...] Y ahora con la dirección del thread...

Leer Más

Siguenos!

O Puedes Subscribete

ANTES DE

SALIRTE ...

NO TE

ARREPENTIRÁS

!Gracias¡

NO OLVIDES NUESTRAS REDES SOCIALES