Date: Fri, 12 Jul 2002 20:41:24 +0400 (MSD) From: Dmitry Morozovsky <marck@rinet.ru> To: Mike Tancsa <mike@sentex.net> Cc: noc@rinet.ru, <stable@freebsd.org> Subject: Re: 4.6-STABLE panics wirh MROUTING Message-ID: <20020712203045.O75573-100000@woozle.rinet.ru> In-Reply-To: <5.1.0.14.0.20020711154823.0379dd28@marble.sentex.ca>
index | next in thread | previous in thread | raw e-mail
On Thu, 11 Jul 2002, Mike Tancsa wrote:
MT> Can you build a debug kernel and then capture a crash dump when the machine
MT> panics ? Then load the files in gdb and show where it crashed. Post that
MT> to the list and I am sure someone might see something at issue.
Just did it. Here is the offending data (panic reproduced exactly by
just running mrouted)
Fatal trap 12: page fault while in kernel mode
fault virtual address = 0x40
fault code = supervisor read, page not present
instruction pointer = 0x8:0xc019508e
stack pointer = 0x10:0xc9fcab48
frame pointer = 0x10:0xc9fcabe8
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 = 418 (mrouted)
interrupt mask = net
trap number = 12
panic: page fault
syncing disks... 11 2 1 1
done
Uptime: 8m18s
dumping to dev #ad/0x20001, offset 262272
dump ata0: resetting devices .. ata0: mask=03 ostat0=50 ostat2=00
ad0: ATAPI 00 00
ata0-slave: ATAPI 00 00
ata0: mask=03 stat0=50 stat1=00
ad0: ATA 01 a5
ata0: devices=01
ad0: success setting PIO4 on generic chip
done
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
---
#0 dumpsys () at /lh/src/sys/kern/kern_shutdown.c:487
487 if (dumping++) {
(kgdb) bt
#0 dumpsys () at /lh/src/sys/kern/kern_shutdown.c:487
#1 0xc01445ba in boot (howto=256) at /lh/src/sys/kern/kern_shutdown.c:316
#2 0xc01449f0 in poweroff_wait (junk=0xc0212f4c, howto=-1071568273)
at /lh/src/sys/kern/kern_shutdown.c:595
#3 0xc01e9fdf in trap_fatal (frame=0xc9fcab08, eva=64)
at /lh/src/sys/i386/i386/trap.c:974
#4 0xc01e9ca1 in trap_pfault (frame=0xc9fcab08, usermode=0, eva=64)
at /lh/src/sys/i386/i386/trap.c:867
#5 0xc01e987f in trap (frame={tf_fs = -1072168944, tf_es = 16, tf_ds =
16,
tf_edi = 0, tf_esi = -1066864128, tf_ebp = -906187800,
tf_isp = -906187980, tf_ebx = 0, tf_edx = -1066863904,
tf_ecx = -1015757268, tf_eax = 0, tf_trapno = 12, tf_err = 0,
tf_eip = -1072082802, tf_cs = 8, tf_eflags = 66054,
tf_esp = -1015757312, tf_ss = 0}) at
/lh/src/sys/i386/i386/trap.c:466
#6 0xc019508e in ip_output (m0=0xc068f200, opt=0x0, ro=0xc374c62c,
flags=0,
imo=0x0) at /lh/src/sys/netinet/ip_output.c:189
#7 0xc018ba0e in transmit_event (pipe=0xc3651f00)
at /lh/src/sys/netinet/ip_dummynet.c:425
#8 0xc018bcc3 in ready_event (q=0xc36ef680)
at /lh/src/sys/netinet/ip_dummynet.c:577
#9 0xc018cab4 in dummynet_io (m=0xc068f200, pipe_nr=1000, dir=1,
fwa=0xc9fcad00) at /lh/src/sys/netinet/ip_dummynet.c:1175
#10 0xc01958b8 in ip_output (m0=0xc068f200, opt=0xc0602f00, ro=0xc0234598,
---Type <return> to continue, or q <return> to quit---
flags=0, imo=0xc9fcad60) at /lh/src/sys/netinet/ip_output.c:851
#11 0xc018892c in igmp_sendpkt (inm=0xc36f1840, type=22, addr=0)
at /lh/src/sys/netinet/igmp.c:482
#12 0xc0188695 in igmp_joingroup (inm=0xc36f1840)
at /lh/src/sys/netinet/igmp.c:354
#13 0xc0189b07 in in_addmulti (ap=0xc9fcae44, ifp=0xc35c4e00)
at /lh/src/sys/netinet/in.c:863
#14 0xc019692a in ip_setmoptions (sopt=0xc9fcaf10, imop=0xc99acf3c)
at /lh/src/sys/netinet/ip_output.c:1744
#15 0xc0196239 in ip_ctloutput (so=0xc88d5b80, sopt=0xc9fcaf10)
at /lh/src/sys/netinet/ip_output.c:1233
#16 0xc0197277 in rip_ctloutput (so=0xc88d5b80, sopt=0xc9fcaf10)
at /lh/src/sys/netinet/raw_ip.c:382
#17 0xc0164385 in sosetopt (so=0xc88d5b80, sopt=0xc9fcaf10)
at /lh/src/sys/kern/uipc_socket.c:1125
#18 0xc0167613 in setsockopt (p=0xc84a4560, uap=0xc9fcaf80)
at /lh/src/sys/kern/uipc_syscalls.c:1113
#19 0xc01ea252 in syscall2 (frame={tf_fs = 47, tf_es = 47, tf_ds = 47,
tf_edi = 1052784323, tf_esi = 67109088, tf_ebp = -1077939076,
tf_isp = -906186796, tf_ebx = 1052784323, tf_edx = 0, tf_ecx = 6,
tf_eax = 105, tf_trapno = 12, tf_err = 2, tf_eip = 671830616,
tf_cs = 31, tf_eflags = 643, tf_esp = -1077939136, tf_ss = 47})
at /lh/src/sys/i386/i386/trap.c:1175
---Type <return> to continue, or q <return> to quit---
#20 0xc01de445 in Xint0x80_syscall ()
#21 0x804e978 in ?? ()
#22 0x804e3c5 in ?? ()
#23 0x804b129 in ?? ()
#24 0x8048fc3 in ?? ()
#6 0xc019508e in ip_output (m0=0xc068f200, opt=0x0, ro=0xc374c62c,
flags=0,
imo=0x0) at /lh/src/sys/netinet/ip_output.c:189
189 ia = ifatoia(ro->ro_rt->rt_ifa);
(kgdb) l
184 (void)ipsec_setsocket(m, NULL);
185 #endif
186 if (args.rule != NULL) { /* dummynet already saw us */
187 ip = mtod(m, struct ip *);
188 hlen = IP_VHL_HL(ip->ip_vhl) << 2 ;
189 ia = ifatoia(ro->ro_rt->rt_ifa);
190 goto sendit;
191 }
192
193 if (opt) {
(kgdb) p *ro
$2 = {ro_rt = 0x0, ro_dst = {sa_len = 16 '\020', sa_family = 2 '\002',
sa_data = "\000\000à\000\000\004\000\000\000\000\000\000\000"}}
so, ro->rt is NULL, and it's producing panic.
MT>
MT> ---Mike
MT>
MT> At 10:55 PM 11/07/2002 +0400, Dmitry Morozovsky wrote:
MT> >Hello there colleagues.
MT> >
MT> >After upgrading one of our gateways I'd encountered reproducible
MT> >kernel panics in multicast-related situations. processes involved are
MT> >mrouted (from base system) and ospfd from zebra-0.92a_1
MT> >
MT> >FreeBSD gw-f.rinet.ru 4.6-STABLE FreeBSD 4.6-STABLE #2: Wed Jul 10
MT> >15:05:26 MSD 2002 root@gw-f.rinet.ru:/var/obj/lh/src/sys/gwfn i386
MT> >
MT> >I suspect options MROUTING being "The Evil" [tm], but had no time to check
MT> >it thoroughly (it's production gateway, you know, so now I'd simply stick
MT> >it out with about 40 statics both there and on border Cisco ;-)
MT> >
MT> >kernel config file follows (it's 4-ethernet router + COM multiport console
MT> >server)
MT> >
MT> >Any thoughts?
MT> >
MT> >Sincerely,
MT> >D.Marck [DM5020, DM268-RIPE, DM3-RIPN]
MT> >------------------------------------------------------------------------
MT> >*** Dmitry Morozovsky --- D.Marck --- Wild Woozle --- marck@rinet.ru ***
MT> >------------------------------------------------------------------------
MT> >
MT> >
MT> >
MT> >machine i386
MT> >cpu I686_CPU
MT> >ident GWF
MT> >maxusers 0
MT> >
MT> >#makeoptions DEBUG=-g #Build kernel with gdb(1) debug
MT> >symbols
MT> >
MT> >options INET #InterNETworking
MT> >options FFS #Berkeley Fast Filesystem
MT> >options FFS_ROOT #FFS usable as root device [keep
MT> >this!]
MT> >options SOFTUPDATES #Enable FFS soft updates support
MT> >options NFS_NOSERVER #Completely disable server code
MT> >options PROCFS #Process filesystem
MT> >options COMPAT_43 #Compatible with BSD 4.3 [KEEP
MT> >THIS!]
MT> >options KTRACE #ktrace(1) support
MT> >options SYSVSHM #SYSV-style shared memory
MT> >options SYSVMSG #SYSV-style message queues
MT> >options SYSVSEM #SYSV-style semaphores
MT> >options P1003_1B #Posix P1003_1B real-time
MT> >extensions
MT> >options _KPOSIX_PRIORITY_SCHEDULING
MT> >options ICMP_BANDLIM #Rate limit bad replies
MT> >options KBD_INSTALL_CDEV # install a CDEV entry in /dev
MT> >options NO_F00F_HACK # we are not on buggy Pentium
MT> >
MT> >options CLK_USE_I8254_CALIBRATION
MT> >options CLK_USE_TSC_CALIBRATION
MT> >
MT> >options MROUTING # Multicast routing
MT> >options IPFIREWALL #firewall
MT> >options IPFIREWALL_VERBOSE #print information about
MT> > # dropped packets
MT> >#options IPFIREWALL_FORWARD #enable transparent proxy support
MT> >#options IPFIREWALL_VERBOSE_LIMIT=100 #limit verbosity
MT> >options DUMMYNET #dummynet shaper
MT> >options HZ=1000
MT> >
MT> >options NMBCLUSTERS=16384
MT> >
MT> >device isa
MT> >device pci
MT> >
MT> ># Floppy drives
MT> >device fdc0 at isa? port IO_FD1 irq 6 drq 2
MT> >device fd0 at fdc0 drive 0
MT> >
MT> ># ATA and ATAPI devices
MT> >device ata
MT> >device atadisk # ATA disk drives
MT> >options ATA_STATIC_ID #Static device numbering
MT> >
MT> ># atkbdc0 controls both the keyboard and the PS/2 mouse
MT> >device atkbdc0 at isa? port IO_KBD
MT> >device atkbd0 at atkbdc? irq 1 flags 0x1
MT> >
MT> >device vga0 at isa?
MT> >
MT> ># splash screen/screen saver
MT> >#pseudo-device splash
MT> >
MT> ># syscons is the default console driver, resembling an SCO console
MT> >device sc0 at isa? flags 0x100
MT> >
MT> ># Floating point support - do not disable.
MT> >device npx0 at nexus? port IO_NPX irq 13
MT> >
MT> ># Serial (COM) ports
MT> >device sio0 at isa? port IO_COM1 flags 0x10 irq 4
MT> >device sio1 at isa? port IO_COM2 irq 3
MT> >
MT> >options COM_MULTIPORT #code for some cards with shared
MT> >IRQs
MT> >
MT> ># 4-port AST
MT> >device sio2 at isa? port 0x2a0 flags 0x501
MT> >device sio3 at isa? port 0x2a8 flags 0x501
MT> >device sio4 at isa? port 0x2b0 flags 0x501
MT> >device sio5 at isa? port 0x2b8 flags 0x501 irq 7
MT> >
MT> ># 8-port Omega
MT> >device sio6 at isa? port 0x100 flags 0x605 irq 12
MT> >device sio7 at isa? port 0x108 flags 0x605
MT> >device sio8 at isa? port 0x110 flags 0x605
MT> >device sio9 at isa? port 0x118 flags 0x605
MT> >device sio10 at isa? port 0x120 flags 0x605
MT> >device sio11 at isa? port 0x128 flags 0x605
MT> >device sio12 at isa? port 0x130 flags 0x605
MT> >device sio13 at isa? port 0x138 flags 0x605
MT> >
MT> ># PCI Ethernet NICs.
MT> >#device ed # NE1000/2000 and compatibles
MT> >#device ed0 at isa? port 0x300 irq 10 iomem 0xd8000
MT> >
MT> >device miibus
MT> >device rl # NE1000/2000 and compatibles
MT> >device fxp # Intel EtherExpress PRO/100B (82557,
MT> >82558)
MT> >
MT> >
MT> ># Pseudo devices - the number indicates how many units to allocated.
MT> >pseudo-device loop # Network loopback
MT> >pseudo-device ether # Ethernet support
MT> >pseudo-device pty # Pseudo-ttys (telnet etc)
MT> >pseudo-device bpf #Berkeley packet filter
MT> >
MT> >
MT> >
MT> >
MT> >To Unsubscribe: send mail to majordomo@FreeBSD.org
MT> >with "unsubscribe freebsd-stable" in the body of the message
MT>
Sincerely,
D.Marck [DM5020, DM268-RIPE, DM3-RIPN]
------------------------------------------------------------------------
*** Dmitry Morozovsky --- D.Marck --- Wild Woozle --- marck@rinet.ru ***
------------------------------------------------------------------------
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020712203045.O75573-100000>
