Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Sep 2000 14:34:33 -0400 (EDT)
From:      Michael Allman <msa@dinosauricon.com>
To:        Matt Dillon <dillon@earth.backplane.com>
Cc:        Chris Dillon <cdillon@wolves.k12.mo.us>, BSD <bsd@shell-server.com>, stable@FreeBSD.ORG
Subject:   Re: Constant panics on 4.1-STABLE!
Message-ID:  <Pine.BSF.4.21.0009221424310.30227-100000@dinosaur.umbc.edu>
In-Reply-To: <200009211836.e8LIaN854272@earth.backplane.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> :...
> :I am having problems with random panics/reboots as well.  I am using two
> :sticks of Corsair 128MB ECC memory.  My motherboard uses the GX chipset.  
> :Crashes occur when I am using both sticks and one or the other stick.  
> :...
> 
>     The first thing I would do is run a DDB-configured kernel so it
>     drops you into DDB on the console rather then reboot, then do a
>     'trace' to see where it crashed.  If the crashes are occuring
>     in a consistent place, then it is probably a bug in the kernel
>     rather then a memory problem.

Done.  In fact, I was trying my other stick of 128MB ECC memory today when
the machine panicked again.  I was able to get a crash dump.  It is
panicking in the same place as it has before.  I posted two stack traces
from earlier, distinct panics on Wednesday at about 1:00am EDT.  Here is
the latest one:

GNU gdb 4.18
Copyright 1998 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-unknown-freebsd"...
SMP 2 cpus
IdlePTD 3866624
initial pcb at 3168a0
panicstr: from debugger
panic messages:
---
Fatal trap 12: page fault while in kernel mode
mp_lock = 01000002; cpuid = 1; lapic.id = 01000000
fault virtual address	= 0x303031f
fault code		= supervisor read, page not present
instruction pointer	= 0x8:0xc01a1cfd
stack pointer	        = 0x10:0xff80dd78
frame pointer	        = 0x10:0xff80ddbc
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		= Idle
interrupt mask		=  <- SMP: XXX


Fatal trap 12: page fault while in kernel mode
mp_lock = 01000002; cpuid = 1; lapic.id = 01000000
fault virtual address	= 0x303031f
fault code		= supervisor read, page not present
instruction pointer	= 0x8:0xc01a1cfd
stack pointer	        = 0x10:0xff80dd78
frame pointer	        = 0x10:0xff80ddbc
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		= Idle
interrupt mask		=  <- SMP: XXX


Fatal trap 12: page fault while in kernel mode
mp_lock = 01000002; cpuid = 1; lapic.id = 01000000
fault virtual address	= 0x303031f
fault code		= supervisor read, page not present
instruction pointer	= 0x8:0xc01a1cfd
stack pointer	        = 0x10:0xff80dd78
frame pointer	        = 0x10:0xff80ddbc
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		= Idle
interrupt mask		=  <- SMP: XXX


Fatal trap 12: page fault while in kernel mode
mp_lock = 01000002; cpuid = 1; lapic.id = 01000000
fault virtual address	= 0x303031f
fault code		= supervisor read, page not present
instruction pointer	= 0x8:0xc01a1cfd
stack pointer	        = 0x10:0xff80dd78
frame pointer	        = 0x10:0xff80ddbc
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		= Idle
interrupt mask		=  <- SMP: XXX


Fatal trap 12: page fault while in kernel mode
mp_lock = 01000002; cpuid = 1; lapic.id = 01000000
fault virtual address	= 0x303031f
fault code		= supervisor read, page not present
instruction pointer	= 0x8:0xc01a1cfd
stack pointer	        = 0x10:0xff80dd78
frame pointer	        = 0x10:0xff80ddbc
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		= Idle
interrupt mask		=  <- SMP: XXX
panic: from debugger
mp_lock = 01000002; cpuid = 1; lapic.id = 01000000
panic: from debugger
mp_lock = 01000003; cpuid = 1; lapic.id = 01000000
boot() called on cpu#1
Uptime: 2h37m0s

dumping to dev #da/0x30001, offset 1048576
dump 128 127 126 125 124 123 122 121 120 119 118 117 116 115 114 113 112 111 110 109 108 107 106 105 104 103 102 101 100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 
---
#0  boot (howto=260) at ../../kern/kern_shutdown.c:302
302			dumppcb.pcb_cr3 = rcr3();
(kgdb) bt
#0  boot (howto=260) at ../../kern/kern_shutdown.c:302
#1  0xc015cadd in panic (fmt=0xc029aa94 "from debugger")
    at ../../kern/kern_shutdown.c:552
#2  0xc0136931 in db_panic (addr=-1072030467, have_addr=0, count=-1, 
    modif=0xff80dbdc "") at ../../ddb/db_command.c:433
#3  0xc01368d1 in db_command (last_cmdp=0xc02d214c, cmd_table=0xc02d1fac, 
    aux_cmd_tablep=0xc0312c38) at ../../ddb/db_command.c:333
#4  0xc0136996 in db_command_loop () at ../../ddb/db_command.c:455
#5  0xc0138aa3 in db_trap (type=12, code=0) at ../../ddb/db_trap.c:71
#6  0xc026e4c9 in kdb_trap (type=12, code=0, regs=0xff80dd38)
    at ../../i386/i386/db_interface.c:158
#7  0xc028149a in trap_fatal (frame=0xff80dd38, eva=50529055)
    at ../../i386/i386/trap.c:946
#8  0xc0281131 in trap_pfault (frame=0xff80dd38, usermode=0, eva=50529055)
    at ../../i386/i386/trap.c:844
#9  0xc0280c87 in trap (frame={tf_fs = 24, tf_es = 16, tf_ds = 16, 
      tf_edi = -1042305824, tf_esi = 0, tf_ebp = -8331844, tf_isp = -8331932, 
      tf_ebx = 50529027, tf_edx = 0, tf_ecx = -1042305824, 
      tf_eax = 1644167168, tf_trapno = 12, tf_err = 0, tf_eip = -1072030467, 
      tf_cs = 8, tf_eflags = 66054, tf_esp = -1042305824, tf_ss = 50529027})
    at ../../i386/i386/trap.c:443
#10 0xc01a1cfd in rtalloc1 (dst=0xc1dface0, report=0, ignflags=65792)
    at ../../net/route.c:135
---Type <return> to continue, or q <return> to quit---
#11 0xc01ad891 in in_addroute (v_arg=0xc1dface0, n_arg=0x0, head=0xc0c0d300, 
    treenodes=0xc0c98500) at ../../netinet/in_rmx.c:123
#12 0xc01a239b in rtrequest (req=11, dst=0xff80dec0, gateway=0x0, netmask=0x0, 
    flags=0, ret_nrt=0xff80de54) at ../../net/route.c:606
#13 0xc01a1d3b in rtalloc1 (dst=0xff80dec0, report=1, ignflags=256)
    at ../../net/route.c:149
#14 0xc01a1cbc in rtalloc_ign (ro=0xff80debc, ignore=256)
    at ../../net/route.c:111
#15 0xc0cface9 in ?? ()
#16 0xc0cfb82f in ?? ()
#17 0xc01af6e6 in ip_input (m=0xc08a4700) at ../../netinet/ip_input.c:387
#18 0xc01afb33 in ipintr () at ../../netinet/ip_input.c:766
(kgdb) up 10
#10 0xc01a1cfd in rtalloc1 (dst=0xc1dface0, report=0, ignflags=65792)
    at ../../net/route.c:135
135		if (rnh && (rn = rnh->rnh_matchaddr((caddr_t)dst, rnh)) &&
(kgdb) print rnh
$1 = (struct radix_node_head *) 0x62000000
(kgdb) print rn
$2 = (struct radix_node *) 0x0
(kgdb) print dst
$3 = (struct sockaddr *) 0xc1dface0
(kgdb)

>     Typically ECC memory either works or you get NMI's.  You typically
>     do not get unreported corruption.

I have not received any NMI's.

Thanks very much for any help you can provide in solving this problem.  If
you need any more information just ask.

BTW, in case you are wondering, I have received panics when running a
uniprocessor kernel, including GENERIC.

Michael



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0009221424310.30227-100000>