PANIC: trap.c
Divacky Roman
xdivac02 at stud.fit.vutbr.cz
Tue Feb 17 01:28:27 PST 2004
On Sun, Feb 15, 2004 at 09:54:38PM -0500, Robert Watson wrote:
>
> On Mon, 16 Feb 2004, Jiri Mikulas wrote:
>
> > Hello, just only for info I got this panic on: FreeBSD 5.2-CURRENT #1:
> > Mon Feb 16 00:53:39 CET 2004
> >
> > I built few kernels from saturday morning to sunday evening and with all
> > of them i got this panic .. (my last functional kernel is from FreeBSD
> > 5.2-CURRENT #0: Mon Feb 9 19:53:47 CET 2004) Jiri
>
> It looks like 'ifp' in ip_output.c is NULL here (the offset of if_hwassist
> is 0x98). Are you running with DUMMYNET? I'm wondering if the recent
> commit to clean up MT_TAG pseudo-mbufs has a loose end somewhere. Try
> backing ouf the following commit locally:
>
> mlaier 2004/02/13 11:14:16 PST
>
> FreeBSD src repository
>
> Modified files:
> sys/net bridge.c if_ethersubr.c
> sys/netinet in_proto.c ip_divert.c ip_dummynet.c
> ip_dummynet.h ip_fastfwd.c ip_fw.h
> ip_fw2.c ip_input.c ip_output.c ip_var.h
> tcp_debug.c tcp_input.c
> sys/sys mbuf.h
> Added files:
> sys/netinet ip_divert.h
> Log:
> This set of changes eliminates the use of MT_TAG "pseudo mbufs",
> replacing
> them mostly with packet tags (one case is handled by using an mbuf flag
> since the linkage between "caller" and "callee" is direct and there's no
> need to incur the overhead of a packet tag).
>
> This is (mostly) work from: sam
>
> Silence from: -arch
> Approved by: bms(mentor), sam, rwatson
>
> Revision Changes Path
> 1.74 +5 -9 src/sys/net/bridge.c
> 1.156 +2 -15 src/sys/net/if_ethersubr.c
> 1.68 +1 -0 src/sys/netinet/in_proto.c
> 1.82 +48 -21 src/sys/netinet/ip_divert.c
> 1.1 +83 -0 src/sys/netinet/ip_divert.h (new)
> 1.77 +125 -91 src/sys/netinet/ip_dummynet.c
> 1.28 +17 -20 src/sys/netinet/ip_dummynet.h
> 1.6 +18 -67 src/sys/netinet/ip_fastfwd.c
> 1.81 +0 -1 src/sys/netinet/ip_fw.h
> 1.54 +25 -5 src/sys/netinet/ip_fw2.c
> 1.261 +56 -118 src/sys/netinet/ip_input.c
> 1.207 +60 -53 src/sys/netinet/ip_output.c
> 1.82 +16 -9 src/sys/netinet/ip_var.h
> 1.22 +1 -0 src/sys/netinet/tcp_debug.c
> 1.225 +2 -6 src/sys/netinet/tcp_input.c
> 1.136 +1 -18 src/sys/sys/mbuf.h
>
> Also, it would be quite interesting to see the contents of 'inspect *m'
> and 'inspect *ro' in stack frame #6.
>
> Thanks,
>
> Robert N M Watson FreeBSD Core Team, TrustedBSD Projects
> robert at fledge.watson.org Senior Research Scientist, McAfee Research
>
>
> >
> >
> > ~~~cut~~~
> > panic: page fault
> > panic messages:
> > ---
> > Fatal trap 12: page fault while in kernel mode
> > fault virtual address = 0x98
> > fault code = supervisor read, page not present
> > instruction pointer = 0x8:0xc05726c8
> > stack pointer = 0x10:0xcd931b6c
> > frame pointer = 0x10:0xcd931c08
> > 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 = 27 (swi1: net)
> > trap number = 12
> > panic: page fault
> > at line 819 in file /usr/src/sys/i386/i386/trap.c
> >
> > syncing disks, buffers remaining... 2228 2228 2228 2228 2228 2228 2228
> > 2228 2228 2228 2228 2228 2228 2228 2228 ad0: WARNING - WRITE_DMA
> > interrupt was seen but timeout fired LBA=16089983
> > 2228 2228 2228 2228 2228
> > giving up on 1832 buffers
> > Uptime: 48m58s
> > Dumping 255 MB
> > 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240
> > ---
> > Reading symbols from /boot/kernel/acpi.ko...done.
> > Loaded symbols for /boot/kernel/acpi.ko
> > Reading symbols from
> > /usr/obj/usr/src/sys/ROUTER-IPFW-DEBUG/modules/usr/src/sys/modules/linprocfs/linprocfs.ko.debug...done.
> > Loaded symbols for
> > /usr/obj/usr/src/sys/ROUTER-IPFW-DEBUG/modules/usr/src/sys/modules/linprocfs/linprocfs.ko.debug
> > Reading symbols from
> > /usr/obj/usr/src/sys/ROUTER-IPFW-DEBUG/modules/usr/src/sys/modules/linux/linux.ko.debug...done.
> > Loaded symbols for
> > /usr/obj/usr/src/sys/ROUTER-IPFW-DEBUG/modules/usr/src/sys/modules/linux/linux.ko.debug
> > #0 doadump () at /usr/src/sys/kern/kern_shutdown.c:240
> > 240 dumping++;
> > (kgdb) bt
> > #0 doadump () at /usr/src/sys/kern/kern_shutdown.c:240
> > #1 0xc04ef695 in boot (howto=256) at /usr/src/sys/kern/kern_shutdown.c:374
> > #2 0xc04ef963 in __panic () at /usr/src/sys/kern/kern_shutdown.c:552
> > #3 0xc063ba6c in trap_fatal (frame=0xcd931b2c, eva=152) at
> > /usr/src/sys/i386/i386/trap.c:819
> > #4 0xc063b7a3 in trap_pfault (frame=0xcd931b2c, usermode=0, eva=152) at
> > /usr/src/sys/i386/i386/trap.c:733
> > #5 0xc063b405 in trap (frame=
> > {tf_fs = 24, tf_es = 16, tf_ds = 16, tf_edi = -1028936856, tf_esi
> > = -1055952304, tf_ebp = -845997048, tf_isp = -845997224, tf_ebx = 0,
> > tf_edx = -1055952384, tf_ecx = 0, tf_eax = -1055952384, tf_trapno = 12,
> > tf_err = 0, tf_eip = -1068030264, tf_cs = 8, tf_eflags = 66050, tf_esp =
> > -1066754656, tf_ss = 64})
> > at /usr/src/sys/i386/i386/trap.c:420
> > #6 0xc05726c8 in ip_output (m=0xc10f7200, opt=0x0, ro=0xc2abab68,
> > flags=1, imo=0x0, inp=0x0) at /usr/src/sys/netinet/ip_output.c:983
> > #7 0xc05719ce in ip_forward (m=0xc10f7200, srcrt=0, next_hop=0x0) at
> > /usr/src/sys/netinet/ip_input.c:1868
> > #8 0xc05705f1 in ip_input (m=0xc10f7200) at
> > /usr/src/sys/netinet/ip_input.c:698
> > #9 0xc05536ea in netisr_processqueue (ni=0xc06f7c18) at
> > /usr/src/sys/net/netisr.c:152
> > #10 0xc0553a5d in swi_net (dummy=0x0) at /usr/src/sys/net/netisr.c:257
> > #11 0xc04dfd08 in ithread_loop (arg=0xc10dd580) at
> > /usr/src/sys/kern/kern_intr.c:547
> > #12 0xc04df0e0 in fork_exit (callout=0xc04dfbd4 <ithread_loop>,
> > arg=0xc10dd580, frame=0xcd931d48) at /usr/src/sys/kern/kern_fork.c:802
> > (kgdb) up 3
> > #3 0xc063ba6c in trap_fatal (frame=0xcd931b2c, eva=152) at
> > /usr/src/sys/i386/i386/trap.c:819
> > 819 panic("%s", trap_msg[type]);
> > (kgdb) up 1
> > #4 0xc063b7a3 in trap_pfault (frame=0xcd931b2c, usermode=0, eva=152) at
> > /usr/src/sys/i386/i386/trap.c:733
> > 733 trap_fatal(frame, eva);
> > #5 0xc063b405 in trap (frame=
> > {tf_fs = 24, tf_es = 16, tf_ds = 16, tf_edi = -1028936856, tf_esi
> > = -1055952304, tf_ebp = -845997048, tf_isp = -845997224, tf_ebx = 0,
> > tf_edx = -1055952384, tf_ecx = 0, tf_eax = -1055952384, tf_trapno = 12,
> > tf_err = 0, tf_eip = -1068030264, tf_cs = 8, tf_eflags = 66050, tf_esp =
> > -1066754656, tf_ss = 64})
> > at /usr/src/sys/i386/i386/trap.c:420
> > 420 (void) trap_pfault(&frame, FALSE, eva);
> >
> > ~~~cut~~~
> > _______________________________________________
> > freebsd-current at freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-current
> > To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
> >
I dont run dummynet and I got the same panic...
also cannot it be related to the panic I reported on Feb 13th (subj:
panic in 11th Fe current)
More information about the freebsd-current
mailing list