Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 6 Aug 2002 23:44:36 -0700
From:      Luigi Rizzo <rizzo@icir.org>
To:        "Scott M. Nolde" <scott@smnolde.com>
Cc:        freebsd-ipfw@FreeBSD.ORG, freebsd-hackers@FreeBSD.ORG
Subject:   Re: kernel backtrace after panic - dummynet?
Message-ID:  <20020806234436.A37532@iguana.icir.org>
In-Reply-To: <20020806205900.D370@smnolde.com>; from scott@smnolde.com on Tue, Aug 06, 2002 at 08:59:00PM -0400
References:  <20020806205900.D370@smnolde.com>

next in thread | previous in thread | raw e-mail | index | archive | help
this sounds like a bug that i fixed a few days ago:

	src/sys/netinet/ip_dummynet.c

	Revision 1.24.2.16 / Sat Aug 3 16:56:39 2002 UTC by luigi 
	Branch: RELENG_4 
	Changes since 1.24.2.15: +4 -0 lines

	Include "opt_ipfw.h" so we can tell whether we are being
	compiled for the old ipfw or for ipfw2. The absence of this
	caused surprising "divide by zero" panics in "pipe" rules.

(i assume you are using ipfw2 on -stable ?).
Please check that your version of ip_dummynet.c is up to date

	cheers
	luigi


On Tue, Aug 06, 2002 at 08:59:00PM -0400, Scott M. Nolde wrote:
> I've just had a 4.6-stable box (my firewall reboot) and I've been able to
> capture a backtrace with gdb.  If someone would please offer some
> assistance I'd appreciate this.  Sorry about the crossposts.
> 
> Disclaimer:  I'm not a coder, but I hope to learn something from this.
> I've added debugging symbols into the kernel in hopes of catching just
> this.
> 
> System: FreeBSD gw.smnolde.com 4.6-STABLE FreeBSD 4.6-STABLE #4: Tue Aug
> 6 14:10:57 EDT 2002     root@gw.smnolde.com:/usr/obj/usr/src/sys/FIREWALL
> i386
> 
> Sorry for any flood, but here's the data from gdb:
> This GDB was configured as "i386-unknown-freebsd"...
> IdlePTD at phsyical address 0x003fc000
> initial pcb at physical address 0x0034f900
> panicstr: integer divide fault
> panic messages:
> ---
> Fatal trap 18: integer divide fault while in kernel mode
> instruction pointer     = 0x8:0xc02d5b06
> stack pointer           = 0x10:0xc8f70a4c
> frame pointer           = 0x10:0xc8f70ab8
> 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         = 591 (natd)
> interrupt mask          = net tty 
> trap number             = 18
> panic: integer divide fault
> 
> syncing disks... 4 
> done
> Uptime: 1h45m43s
> 
> dumping to dev #da/0x20001, offset 536576
> 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  dumpsys () at /usr/src/sys/kern/kern_shutdown.c:487
> 487             if (dumping++) {
> (kgdb) where
> #0  dumpsys () at /usr/src/sys/kern/kern_shutdown.c:487
> #1  0xc018f3f7 in boot (howto=256) at
> /usr/src/sys/kern/kern_shutdown.c:316
> #2  0xc018f835 in panic (fmt=0xc03198cc "%s") at
> /usr/src/sys/kern/kern_shutdown.c:595
> #3  0xc02be0e7 in trap_fatal (frame=0xc8f70a0c, eva=0) at
> /usr/src/sys/i386/i386/trap.c:974
> #4  0xc02bda9e in trap (frame={tf_fs = 16, tf_es = 16, tf_ds = 16, tf_edi
> = -1056562568, tf_esi = 0, 
>       tf_ebp = -923333960, tf_isp = -923334088, tf_ebx = 3932160, tf_edx =
> 0, tf_ecx = 0, tf_eax = 1, tf_trapno = 18, 
>       tf_err = 0, tf_eip = -1070769402, tf_cs = 8, tf_eflags = 66118,
> tf_esp = 0, tf_ss = -1055003648})
>     at /usr/src/sys/i386/i386/trap.c:636
> #5  0xc02d5b06 in __qdivrem (uq=3932160, vq=0, arq=0x0) at
> /usr/src/sys/libkern/qdivrem.c:100
> #6  0xc02d5ee6 in __udivdi3 (a=3932160, b=0) at
> /usr/src/sys/libkern/udivdi3.c:50
> #7  0xc01e507f in dummynet_io (m=0xc0b47500, pipe_nr=1, dir=1,
> fwa=0xc8f70ba8)
>     at /usr/src/sys/netinet/ip_dummynet.c:1205
> #8  0xc01ec13e in ip_output (m0=0xc0b47500, opt=0x0, ro=0xc8771ed8,
> flags=0, imo=0x0)
>     at /usr/src/sys/netinet/ip_output.c:626
> #9  0xc01f4ec5 in syncache_respond (sc=0xc8771ea0, m=0xc0b47500) at
> /usr/src/sys/netinet/tcp_syncache.c:1196
> #10 0xc01f4b15 in syncache_add (inc=0xc8f70cd4, to=0xc8f70d40,
> th=0xc0b475d8, sop=0xc8f70cd0, m=0xc0b47500)
>     at /usr/src/sys/netinet/tcp_syncache.c:1011
> #11 0xc01ef52d in tcp_input (m=0xc0b47500, off0=20, proto=6) at
> /usr/src/sys/netinet/tcp_input.c:831
> #12 0xc01ea530 in ip_input (m=0xc8f70dfc) at
> /usr/src/sys/netinet/ip_input.c:821
> #13 0xc01e36c3 in div_output (so=0xc85a6e00, m=0xc0b47500, sin=0xc1129710,
> control=0x0)
>     at /usr/src/sys/netinet/ip_divert.c:327
> #14 0xc01e3863 in div_send (so=0xc85a6e00, flags=0, m=0xc0b47500,
> nam=0xc1129710, control=0x0, p=0xc7fb52a0)
>     at /usr/src/sys/netinet/ip_divert.c:440
> #15 0xc01adc87 in sosend (so=0xc85a6e00, addr=0xc1129710, uio=0xc8f70ecc,
> top=0xc0b47500, control=0x0, flags=0, 
>     p=0xc7fb52a0) at /usr/src/sys/kern/uipc_socket.c:609
> #16 0xc01b1057 in sendit (p=0xc7fb52a0, s=3, mp=0xc8f70f0c, flags=0) at
> /usr/src/sys/kern/uipc_syscalls.c:585
> #17 0xc01b115a in sendto (p=0xc7fb52a0, uap=0xc8f70f80) at
> /usr/src/sys/kern/uipc_syscalls.c:638
> #18 0xc02be39d in syscall2 (frame={tf_fs = 47, tf_es = 47, tf_ds = 47,
> tf_edi = 1, tf_esi = -1078002568, 
>       tf_ebp = -1077937032, tf_isp = -923332652, tf_ebx = 60, tf_edx =
> 134811904, tf_ecx = 1, tf_eax = 133, 
>       tf_trapno = 7, tf_err = 2, tf_eip = 134551080, tf_cs = 31, tf_eflags
> = 647, tf_esp = -1078002740, tf_ss = 47})
>     at /usr/src/sys/i386/i386/trap.c:1175
> #19 0xc02af2e5 in Xint0x80_syscall ()
> #20 0x8048837 in ?? ()
> #21 0x8048137 in ?? ()
> 
> -- 
> Scott Nolde
> GPG Key 0xD869AB48
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message

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




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