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