Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 26 Aug 2006 23:47:37 +0200
From:      "Daniel A." <alive@dienub.org>
Cc:        hackers@freebsd.org
Subject:   Re: doadump at pcpu.h:165
Message-ID:  <44F0C179.4070405@dienub.org>
In-Reply-To: <44EDC84C.6010505@dienub.org>
References:  <44EDC84C.6010505@dienub.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Daniel A. wrote:
> Hi guys,
> My server crashes very often and it's very random. So not long ago, I 
> was suggested that I read the FreeBSD Handbook pages about kernel 
> debugging, and here is the result:
> root@m00h DIENUB $ kgdb kernel.debug /var/crash/vmcore.3
> [GDB will not be able to debug user-mode threads: 
> /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]
> GNU gdb 6.1.1 [FreeBSD]
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you 
> are
> welcome to change it and/or distribute copies of it under certain 
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "i386-marcel-freebsd".
> 
> Unread portion of the kernel message buffer:
> 
> 
> Fatal trap 28: machine check trap while in kernel mode
> instruction pointer     = 0x20:0xc06830b0
> stack pointer           = 0x28:0xd446ea7c
> frame pointer           = 0x28:0xd446ea8c
> code segment            = base 0x0, limit 0xfffff, type 0x1b
>                         = DPL 0, pres 1, def32 1, gran 1
> processor eflags        = interrupt enabled, resume, IOPL = 0
> current process         = 14 (swi1: net)
> trap number             = 28
> panic: machine check trap
> Uptime: 1d4h24m37s
> Dumping 511 MB (2 chunks)
>   chunk 0: 1MB (160 pages) ... ok
>   chunk 1: 511MB (130800 pages) 495 479 463 447 431 415 399 383 367 351 
> 335 319 303 287 271 255 239 223 207 191 175 159 143 127 111 95 79 63 47 
> 31 15
> 
> #0  doadump () at pcpu.h:165
> 165             __asm __volatile("movl %%fs:0,%0" : "=r" (td));
> (kgdb) q
> 
> 
> As far as I understand, the issue is CPU-related, but that doesn't make 
> sense, as my network interface cards are constantly giving me watchdog 
> timeouts.
> 
> root@m00h include $ uname -a
> FreeBSD m00h.dienub.org 6.1-RELEASE FreeBSD 6.1-RELEASE #0: Mon May 29 
> 20:40:41 CEST 2006     root@m00h.dienub.org:/usr/obj/usr/src/sys/DIENUB 
>  i386
> 
> Thanks for any help. Also, please CC any replies to me.
> _______________________________________________
> freebsd-hackers@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"

root@m00h DIENUB $ kgdb kernel.debug /var/crash/vmcore.4
[GDB will not be able to debug user-mode threads: 
/usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain 
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-marcel-freebsd".

Unread portion of the kernel message buffer:


Fatal trap 28: machine check trap while in kernel mode
instruction pointer     = 0x20:0xc068a301
stack pointer           = 0x28:0xd8958b50
frame pointer           = 0x28:0xd8958b50
code segment            = base 0x0, limit 0xfffff, type 0x1b
                         = DPL 0, pres 1, def32 1, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = 4853 (smbd)
trap number             = 28
panic: machine check trap
Uptime: 2d15h2m59s
Dumping 511 MB (2 chunks)
   chunk 0: 1MB (160 pages) ... ok
   chunk 1: 511MB (130800 pages) 495 479 463 447 431 415 399 383 367 351 
335 319 303 287 271 255 239 223 207 191 175 159 143 127 111 95 79 63 47 
31 15

#0  doadump () at pcpu.h:165
165             __asm __volatile("movl %%fs:0,%0" : "=r" (td));
(kgdb) bt
#0  doadump () at pcpu.h:165
#1  0xc064dda5 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:402
#2  0xc064e03c in panic (fmt=0xc088c06e "%s")
     at /usr/src/sys/kern/kern_shutdown.c:558
#3  0xc0841334 in trap_fatal (frame=0xd8958b10, eva=0)
     at /usr/src/sys/i386/i386/trap.c:836
#4  0xc0840e7c in trap (frame=
       {tf_fs = 8, tf_es = -1014759384, tf_ds = -661323736, tf_edi = 0, 
tf_esi = -1014717040, tf_ebp = -661288112, tf_isp = -661288132, tf_ebx = 
-1014716840, tf_edx = -1014238848, tf_ecx = -1064155712, tf_eax = 1, 
tf_trapno = 28, tf_err = 0, tf_eip = -1066884351, tf_cs = 32, tf_eflags 
= 66050, tf_esp = -661288088, tf_ss = -1066886033}) at 
/usr/src/sys/i386/i386/trap.c:631
#5  0xc0830b5a in calltrap () at /usr/src/sys/i386/i386/exception.s:139
#6  0xc068a301 in sbcompress (sb=0x0, m=0xc384a658, n=0xc384a590)
     at /usr/src/sys/kern/uipc_socket2.c:1053
#7  0xc0689cb9 in sbappendstream (sb=0xc384a658, m=0xc35b7d00)
     at /usr/src/sys/kern/uipc_socket2.c:761
#8  0xc06f9222 in tcp_usr_send (so=0xc384a590, flags=4, m=0xc35b7d00, 
nam=0x0,
     control=0x0, td=0xc38bf180) at /usr/src/sys/netinet/tcp_usrreq.c:665
#9  0xc0686603 in sosend (so=0xc384a590, addr=0x0, uio=0xd8958cbc,
     top=0xc35b7d00, control=0x0, flags=0, td=0xc38bf180)
     at /usr/src/sys/kern/uipc_socket.c:836
#10 0xc0674f56 in soo_write (fp=0x1, uio=0xd8958cbc, active_cred=0xc5bbbb00,
---Type <return> to continue, or q <return> to quit---
     flags=0, td=0xc38bf180) at /usr/src/sys/kern/sys_socket.c:118
#11 0xc066f6bf in dofilewrite (td=0xc38bf180, fd=22, fp=0xc3a1a360,
     auio=0xd8958cbc, offset=Unhandled dwarf expression opcode 0x93
) at file.h:246
#12 0xc066f563 in kern_writev (td=0xc38bf180, fd=22, auio=0xd8958cbc)
     at /usr/src/sys/kern/sys_generic.c:402
#13 0xc066f489 in write (td=0xc38bf180, uap=0xc09245c0)
     at /usr/src/sys/kern/sys_generic.c:326
#14 0xc084164b in syscall (frame=
       {tf_fs = 59, tf_es = -1078001605, tf_ds = -1078001605, tf_edi = 
32831, tf_esi = 0, tf_ebp = -1077946040, tf_isp = -661287580, tf_ebx = 
137270200, tf_edx = 0, tf_ecx = 137863168, tf_eax = 4, tf_trapno = 0, 
tf_err = 2, tf_eip = 676136895, tf_cs = 51, tf_eflags = 534, tf_esp = 
-1077946084, tf_ss = 59})
     at /usr/src/sys/i386/i386/trap.c:981
#15 0xc0830baf in Xint0x80_syscall () at 
/usr/src/sys/i386/i386/exception.s:200
#16 0x00000033 in ?? ()
Previous frame inner to this frame (corrupt stack?)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44F0C179.4070405>