Date: Wed, 3 Aug 2005 17:09:52 +0000 (UTC) From: "Bjoern A. Zeeb" <bzeeb-lists@lists.zabbadoz.net> To: FreeBSD current mailing list <current@freebsd.org> Subject: sis0: + top + panic in bus_dmamap_load Message-ID: <Pine.BSF.4.53.0508031313130.27151@e0-0.zab2.int.zabbadoz.net>
next in thread | raw e-mail | index | archive | help
Hi,
while testing ipfw patches hammering an interface with
invalid tcp over ipv6 packets I got following:
sis0: discard frame w/o packet header
sis0: discard frame w/o packet header
sis0: discard frame w/o packet header
sis0: discard frame w/o packet header
sis0: discard frame w/o packet header
sis0: discard frame w/o packet header
and somewhen later I got a panic I haven't been able to
reproduce after the reset.
At the time the panic happend a newly started top did
it's first refresh cycle. I hadn't started top before.
Here's all I have:
Fatal trap 12: page fault while in kernel mode
fault virtual address = 0xbfcb5214
fault code = supervisor read, page not present
instruction pointer = 0x20:0xc0652f68
stack pointer = 0x28:0xc98aec10
frame pointer = 0x28:0xc98aec60
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 = 20 (irq10: sis0 sis1+)
[thread pid 20 tid 100013 ]
Stopped at bus_dmamap_load+0x308: movl PTmap(,%eax,4),%edx
db> where
Tracing pid 20 tid 100013 td 0xc4ad7000
bus_dmamap_load(c4affc80,0,2d485353,800,c05fae90,c4b333a8,0,c4affc80,0,c4b333bc) at bus_dmamap_load+0x308
sis_newbuf(c4b30700,c4b333a8,0) at sis_newbuf+0x8a
sis_rxeof(c4b30700) at sis_rxeof+0xbc
sis_intr(c4b30700) at sis_intr+0xab
ithread_loop(c4ac2800,c98aed38) at ithread_loop+0x149
fork_exit(c04d6fb0,c4ac2800,c98aed38) at fork_exit+0x6f
fork_trampoline() at fork_trampoline+0x8
--- trap 0x1, eip = 0, esp = 0xc98aed6c, ebp = 0 ---
(gdb) l *0xc0652f68
0xc0652f68 is in bus_dmamap_load (pmap.h:201).
196
197 if ((pa = PTD[va >> PDRSHIFT]) & PG_PS) {
198 pa = (pa & ~(NBPDR - 1)) | (va & (NBPDR - 1));
199 } else {
200 pa = *vtopte(va);
201 pa = (pa & PG_FRAME) | (va & PAGE_MASK);
202 }
203 return pa;
204 }
205
(gdb)
db> show registers
cs 0xc98a0020
ds 0xc4ad0028
es 0x28
fs 0xc98a0008
ss 0x28
eax 0x2d485
ecx 0x2d485353
edx 0
ebx 0xc4df5300
esp 0xc98aec10
ebp 0xc98aec60
esi 0xc4b333a8
edi 0xc4b30700
eip 0xc0652f68 bus_dmamap_load+0x308
efl 0x10202
dr0 0
dr1 0
dr2 0
dr3 0
dr4 0xffff0ff0
dr5 0x400
dr6 0xffff0ff0
dr7 0x400
bus_dmamap_load+0x308: movl PTmap(,%eax,4),%edx
db> show threads
100038 (0xc4b43a80) sched_switch(c4b43a80,0,1) at sched_switch+0x15b
100070 (0xc4e65780) sched_switch(c4e65780,0,1) at sched_switch+0x15b
100066 (0xc4e65d80) sched_switch(c4e65d80,0,1) at sched_switch+0x15b
100064 (0xc4bcd000) sched_switch(c4bcd000,0,2) at sched_switch+0x15b
100053 (0xc4bce180) sched_switch(c4bce180,0,1) at sched_switch+0x15b
100056 (0xc4bcdc00) sched_switch(c4bcdc00,0,1) at sched_switch+0x15b
100050 (0xc4bce600) sched_switch(c4bce600,0,1) at sched_switch+0x15b
100057 (0xc4bcda80) sched_switch(c4bcda80,0,1) at sched_switch+0x15b
100058 (0xc4bcd900) sched_switch(c4bcd900,0,1) at sched_switch+0x15b
100051 (0xc4bce480) sched_switch(c4bce480,0,1) at sched_switch+0x15b
100059 (0xc4bcd780) sched_switch(c4bcd780,0,1) at sched_switch+0x15b
100040 (0xc4b43780) sched_switch(c4b43780,0,1) at sched_switch+0x15b
100060 (0xc4bcd600) sched_switch(c4bcd600,0,1) at sched_switch+0x15b
100055 (0xc4bcdd80) sched_switch(c4bcdd80,0,1) at sched_switch+0x15b
100043 (0xc4b43300) sched_switch(c4b43300,0,1) at sched_switch+0x15b
100044 (0xc4b43180) sched_switch(c4b43180,0,1) at sched_switch+0x15b
100045 (0xc4b43000) sched_switch(c4b43000,0,1) at sched_switch+0x15b
100046 (0xc4af7d80) sched_switch(c4af7d80,0,1) at sched_switch+0x15b
100047 (0xc4af7c00) sched_switch(c4af7c00,0,1) at sched_switch+0x15b
100048 (0xc4af7a80) sched_switch(c4af7a80,0,1) at sched_switch+0x15b
100049 (0xc4af7900) sched_switch(c4af7900,0,1) at sched_switch+0x15b
100027 (0xc4af7180) sched_switch(c4af7180,0,1) at sched_switch+0x15b
100028 (0xc4af7000) sched_switch(c4af7000,0,1) at sched_switch+0x15b
100029 (0xc4ad7d80) sched_switch(c4ad7d80,0,1) at sched_switch+0x15b
100030 (0xc4ad7c00) sched_switch(c4ad7c00,0,1) at sched_switch+0x15b
100031 (0xc4ad7a80) sched_switch(c4ad7a80,0,1) at sched_switch+0x15b
100032 (0xc4ad7900) sched_switch(c4ad7900,0,1) at sched_switch+0x15b
100033 (0xc4ad7780) sched_switch(c4ad7780,0,1) at sched_switch+0x15b
100034 (0xc4ad7600) sched_switch(c4ad7600,0,1) at sched_switch+0x15b
100035 (0xc4ad7480) fork_trampoline() at fork_trampoline
100036 (0xc4b43d80) sched_switch(c4b43d80,0,1) at sched_switch+0x15b
100037 (0xc4b43c00) fork_trampoline() at fork_trampoline
100017 (0xc4ad1900) sched_switch(c4ad1900,0,1) at sched_switch+0x15b
100018 (0xc4ad1780) fork_trampoline() at fork_trampoline
100019 (0xc4ad1600) sched_switch(c4ad1600,0,1) at sched_switch+0x15b
100020 (0xc4ad1480) sched_switch(c4ad1480,0,1) at sched_switch+0x15b
100021 (0xc4ad1300) sched_switch(c4ad1300,0,1) at sched_switch+0x15b
100022 (0xc4ad1180) sched_switch(c4ad1180,0,1) at sched_switch+0x15b
100023 (0xc4af7780) sched_switch(c4af7780,0,1) at sched_switch+0x15b
100024 (0xc4af7600) sched_switch(c4af7600,0,1) at sched_switch+0x15b
100025 (0xc4af7480) fork_trampoline() at fork_trampoline
100026 (0xc4af7300) sched_switch(c4af7300,0,1) at sched_switch+0x15b
100008 (0xc4ad0300) fork_trampoline() at fork_trampoline
100009 (0xc4ad0180) sched_switch(c4ad0180,0,1) at sched_switch+0x15b
100010 (0xc4ad0000) fork_trampoline() at fork_trampoline
100011 (0xc4ad7300) fork_trampoline() at fork_trampoline
100012 (0xc4ad7180) fork_trampoline() at fork_trampoline
100013 (0xc4ad7000) bus_dmamap_load(c4affc80,0,2d485353,800,c05fae90,c4b333a8,0,c4affc80,0,c4b333bc) at bus_dmamap_load+0x308
100014 (0xc4ad1d80) fork_trampoline() at fork_trampoline
100015 (0xc4ad1c00) fork_trampoline() at fork_trampoline
100016 (0xc4ad1a80) fork_trampoline() at fork_trampoline
100000 (0xc4ad1000) fork_trampoline() at fork_trampoline
100001 (0xc4ad0d80) fork_trampoline() at fork_trampoline
100002 (0xc4ad0c00) fork_trampoline() at fork_trampoline
100003 (0xc4ad0a80) fork_trampoline() at fork_trampoline
100004 (0xc4ad0900) fork_trampoline() at fork_trampoline
100005 (0xc4ad0780) fork_trampoline() at fork_trampoline
100006 (0xc4ad0600) sched_switch(c4ad0600,0,1) at sched_switch+0x15b
100007 (0xc4ad0480) sched_switch(c4ad0480,0,1) at sched_switch+0x15b
0 (0xc06dfe20) sched_switch(c06dfe20,0,1) at sched_switch+0x15b
--
Bjoern A. Zeeb bzeeb at Zabbadoz dot NeT
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.53.0508031313130.27151>
