Date: Wed, 15 Nov 2000 21:33:24 -0800 (PST) From: Rich Wales <richw@webcom.com> To: freebsd-stable@freebsd.org Subject: Re: Bridging code in 4.2RC1 still not fixed Message-ID: <20001116051639.85232.richw@wyattearp.stanford.edu>
next in thread | raw e-mail | index | archive | help
Bosko Milekic wrote: > What's unfortunate is that this entire thread has failed > to provide any single piece of VALID debugging information, > despite my (and I'm sure others') efforts in obtaining that. OK, here's the best I can do for the moment. I didn't have debugging enabled in the kernel I was running at the time (yes, I know, stupid of me), but I did get a crash dump (see below). Remember, again, that this is 3.4-RELEASE. The crash occurred in in_cksum() in i386/i386/in_cksum.c. As best I can tell from disassembling the in_cksum() routine, the trap happened near the top of the "while ((mlen -= 32) >= 0)" loop (line 149 of the source code). I hope this is enough to help someone. Rich Wales richw@webcom.com http://www.webcom.com/richw/ ======================================================================== Script started on Wed Nov 15 21:10:32 2000 Warning: imported path contains relative components gateway# gdb -k kernel.1 vmcore.1 GNU gdb 4.18 Copyright 1998 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-unknown-freebsd"... IdlePTD 3354624 initial pcb at 2a9224 panicstr: page fault panic messages: --- Fatal trap 12: page fault while in kernel mode fault virtual address = 0xc04f3000 fault code = supervisor read, page not present instruction pointer = 0x8:0xc0230ddc stack pointer = 0x10:0xc0292100 frame pointer = 0x10:0xc0292110 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 = Idle interrupt mask = trap number = 12 panic: page fault syncing disks... done dumping to dev 50009, offset 53376 dump 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 --- #0 0xc01335b7 in boot () (kgdb) where #0 0xc01335b7 in boot () #1 0xc013383c in at_shutdown () #2 0xc023a781 in trap_fatal () #3 0xc023a45f in trap_pfault () #4 0xc023a0d6 in trap () #5 0xc0230ddc in in_cksum () #6 0xc0194d69 in udp_input () #7 0xc018748b in ip_input () #8 0xc01874fb in ipintr () (kgdb) disassemble in_cksum Dump of assembler code for function in_cksum: 0xc0230cec <in_cksum>: pushl %ebp 0xc0230ced <in_cksum+1>: movl %esp,%ebp 0xc0230cef <in_cksum+3>: subl $0x4,%esp 0xc0230cf2 <in_cksum+6>: pushl %edi 0xc0230cf3 <in_cksum+7>: pushl %esi 0xc0230cf4 <in_cksum+8>: pushl %ebx 0xc0230cf5 <in_cksum+9>: xorl %ebx,%ebx 0xc0230cf7 <in_cksum+11>: xorl %esi,%esi 0xc0230cf9 <in_cksum+13>: movl $0x0,0xfffffffc(%ebp) 0xc0230d00 <in_cksum+20>: cmpl $0x0,0x8(%ebp) 0xc0230d04 <in_cksum+24>: je 0xc0230ee3 <in_cksum+503> 0xc0230d0a <in_cksum+30>: movl %esi,%esi 0xc0230d0c <in_cksum+32>: cmpl $0x0,0xc(%ebp) 0xc0230d10 <in_cksum+36>: je 0xc0230ef3 <in_cksum+519> 0xc0230d16 <in_cksum+42>: movl 0x8(%ebp),%edx 0xc0230d19 <in_cksum+45>: cmpl $0x0,0xc(%edx) 0xc0230d1d <in_cksum+49>: je 0xc0230ed3 <in_cksum+487> 0xc0230d23 <in_cksum+55>: movl 0x8(%edx),%ecx 0xc0230d26 <in_cksum+58>: cmpl $0xffffffff,%esi 0xc0230d29 <in_cksum+61>: jne 0xc0230d48 <in_cksum+92> 0xc0230d2b <in_cksum+63>: movb (%ecx),%al 0xc0230d2d <in_cksum+65>: shlw $0x8,%ax 0xc0230d31 <in_cksum+69>: andw $0xff,%di 0xc0230d36 <in_cksum+74>: orw %ax,%di 0xc0230d39 <in_cksum+77>: movzwl %di,%eax 0xc0230d3c <in_cksum+80>: addl %eax,%ebx 0xc0230d3e <in_cksum+82>: incl %ecx 0xc0230d3f <in_cksum+83>: movl 0xc(%edx),%esi 0xc0230d42 <in_cksum+86>: decl %esi 0xc0230d43 <in_cksum+87>: decl 0xc(%ebp) 0xc0230d46 <in_cksum+90>: jmp 0xc0230d4e <in_cksum+98> 0xc0230d48 <in_cksum+92>: movl 0x8(%ebp),%edx 0xc0230d4b <in_cksum+95>: movl 0xc(%edx),%esi 0xc0230d4e <in_cksum+98>: cmpl %esi,0xc(%ebp) 0xc0230d51 <in_cksum+101>: jnl 0xc0230d56 <in_cksum+106> 0xc0230d53 <in_cksum+103>: movl 0xc(%ebp),%esi 0xc0230d56 <in_cksum+106>: subl %esi,0xc(%ebp) 0xc0230d59 <in_cksum+109>: testb $0x3,%cl 0xc0230d5c <in_cksum+112>: je 0xc0230da7 <in_cksum+187> 0xc0230d5e <in_cksum+114>: movzwl %bx,%edx 0xc0230d61 <in_cksum+117>: movl %ebx,%eax 0xc0230d63 <in_cksum+119>: shrl $0x10,%eax 0xc0230d66 <in_cksum+122>: leal (%eax,%edx,1),%ebx 0xc0230d69 <in_cksum+125>: cmpl $0xffff,%ebx 0xc0230d6f <in_cksum+131>: jbe 0xc0230d77 <in_cksum+139> 0xc0230d71 <in_cksum+133>: addl $0xffff0001,%ebx 0xc0230d77 <in_cksum+139>: testb $0x1,%cl 0xc0230d7a <in_cksum+142>: je 0xc0230d92 <in_cksum+166> 0xc0230d7c <in_cksum+144>: testl %esi,%esi 0xc0230d7e <in_cksum+146>: jle 0xc0230d92 <in_cksum+166> 0xc0230d80 <in_cksum+148>: shll $0x8,%ebx 0xc0230d83 <in_cksum+151>: movl %edi,%edx 0xc0230d85 <in_cksum+153>: movb (%ecx),%dl 0xc0230d87 <in_cksum+155>: movl %edx,%edi 0xc0230d89 <in_cksum+157>: incl %ecx 0xc0230d8a <in_cksum+158>: decl %esi 0xc0230d8b <in_cksum+159>: movl $0x1,0xfffffffc(%ebp) 0xc0230d92 <in_cksum+166>: testb $0x2,%cl 0xc0230d95 <in_cksum+169>: je 0xc0230da7 <in_cksum+187> 0xc0230d97 <in_cksum+171>: cmpl $0x1,%esi 0xc0230d9a <in_cksum+174>: jle 0xc0230da7 <in_cksum+187> 0xc0230d9c <in_cksum+176>: movzwl (%ecx),%eax 0xc0230d9f <in_cksum+179>: addl %eax,%ebx 0xc0230da1 <in_cksum+181>: addl $0x2,%ecx 0xc0230da4 <in_cksum+184>: addl $0xfffffffe,%esi 0xc0230da7 <in_cksum+187>: testb $0x4,%cl 0xc0230daa <in_cksum+190>: je 0xc0230dbd <in_cksum+209> 0xc0230dac <in_cksum+192>: cmpl $0x3,%esi 0xc0230daf <in_cksum+195>: jle 0xc0230dbd <in_cksum+209> 0xc0230db1 <in_cksum+197>: addl 0x0(%ecx),%ebx 0xc0230db4 <in_cksum+200>: adcl $0x0,%ebx 0xc0230db7 <in_cksum+203>: addl $0x4,%ecx 0xc0230dba <in_cksum+206>: addl $0xfffffffc,%esi 0xc0230dbd <in_cksum+209>: testb $0x8,%cl 0xc0230dc0 <in_cksum+212>: je 0xc0230dd6 <in_cksum+234> 0xc0230dc2 <in_cksum+214>: cmpl $0x7,%esi 0xc0230dc5 <in_cksum+217>: jle 0xc0230dd6 <in_cksum+234> 0xc0230dc7 <in_cksum+219>: addl 0x0(%ecx),%ebx 0xc0230dca <in_cksum+222>: adcl 0x4(%ecx),%ebx 0xc0230dcd <in_cksum+225>: adcl $0x0,%ebx 0xc0230dd0 <in_cksum+228>: addl $0x8,%ecx 0xc0230dd3 <in_cksum+231>: addl $0xfffffff8,%esi 0xc0230dd6 <in_cksum+234>: addl $0xffffffdf,%esi 0xc0230dd9 <in_cksum+237>: js 0xc0230e02 <in_cksum+278> 0xc0230ddb <in_cksum+239>: nop 0xc0230ddc <in_cksum+240>: addl 0x10(%ecx),%ebx 0xc0230ddf <in_cksum+243>: adcl 0x0(%ecx),%ebx 0xc0230de2 <in_cksum+246>: adcl 0x4(%ecx),%ebx 0xc0230de5 <in_cksum+249>: adcl 0x8(%ecx),%ebx 0xc0230de8 <in_cksum+252>: adcl 0xc(%ecx),%ebx 0xc0230deb <in_cksum+255>: movb 0x20(%ecx),%al 0xc0230dee <in_cksum+258>: adcl 0x14(%ecx),%ebx 0xc0230df1 <in_cksum+261>: adcl 0x18(%ecx),%ebx 0xc0230df4 <in_cksum+264>: adcl 0x1c(%ecx),%ebx 0xc0230df7 <in_cksum+267>: adcl $0x0,%ebx 0xc0230dfa <in_cksum+270>: addl $0x20,%ecx 0xc0230dfd <in_cksum+273>: addl $0xffffffe0,%esi 0xc0230e00 <in_cksum+276>: jns 0xc0230ddc <in_cksum+240> 0xc0230e02 <in_cksum+278>: addl $0x21,%esi 0xc0230e05 <in_cksum+281>: cmpl $0x1f,%esi 0xc0230e08 <in_cksum+284>: jle 0xc0230e2b <in_cksum+319> 0xc0230e0a <in_cksum+286>: addl 0x10(%ecx),%ebx 0xc0230e0d <in_cksum+289>: adcl 0x0(%ecx),%ebx 0xc0230e10 <in_cksum+292>: adcl 0x4(%ecx),%ebx 0xc0230e13 <in_cksum+295>: adcl 0x8(%ecx),%ebx 0xc0230e16 <in_cksum+298>: adcl 0xc(%ecx),%ebx 0xc0230e19 <in_cksum+301>: adcl 0x14(%ecx),%ebx 0xc0230e1c <in_cksum+304>: adcl 0x18(%ecx),%ebx 0xc0230e1f <in_cksum+307>: adcl 0x1c(%ecx),%ebx 0xc0230e22 <in_cksum+310>: adcl $0x0,%ebx 0xc0230e25 <in_cksum+313>: addl $0x20,%ecx 0xc0230e28 <in_cksum+316>: addl $0xffffffe0,%esi 0xc0230e2b <in_cksum+319>: cmpl $0xf,%esi 0xc0230e2e <in_cksum+322>: jle 0xc0230e45 <in_cksum+345> 0xc0230e30 <in_cksum+324>: addl 0x0(%ecx),%ebx 0xc0230e33 <in_cksum+327>: adcl 0x4(%ecx),%ebx 0xc0230e36 <in_cksum+330>: adcl 0x8(%ecx),%ebx 0xc0230e39 <in_cksum+333>: adcl 0xc(%ecx),%ebx 0xc0230e3c <in_cksum+336>: adcl $0x0,%ebx 0xc0230e3f <in_cksum+339>: addl $0x10,%ecx 0xc0230e42 <in_cksum+342>: addl $0xfffffff0,%esi 0xc0230e45 <in_cksum+345>: cmpl $0x7,%esi 0xc0230e48 <in_cksum+348>: jle 0xc0230e59 <in_cksum+365> 0xc0230e4a <in_cksum+350>: addl 0x0(%ecx),%ebx 0xc0230e4d <in_cksum+353>: adcl 0x4(%ecx),%ebx 0xc0230e50 <in_cksum+356>: adcl $0x0,%ebx 0xc0230e53 <in_cksum+359>: addl $0x8,%ecx 0xc0230e56 <in_cksum+362>: addl $0xfffffff8,%esi 0xc0230e59 <in_cksum+365>: testl %esi,%esi 0xc0230e5b <in_cksum+367>: jne 0xc0230e63 <in_cksum+375> 0xc0230e5d <in_cksum+369>: cmpl $0x0,0xfffffffc(%ebp) 0xc0230e61 <in_cksum+373>: je 0xc0230ed3 <in_cksum+487> 0xc0230e63 <in_cksum+375>: movzwl %bx,%edx 0xc0230e66 <in_cksum+378>: movl %ebx,%eax 0xc0230e68 <in_cksum+380>: shrl $0x10,%eax 0xc0230e6b <in_cksum+383>: leal (%eax,%edx,1),%ebx 0xc0230e6e <in_cksum+386>: cmpl $0xffff,%ebx 0xc0230e74 <in_cksum+392>: jbe 0xc0230e7c <in_cksum+400> 0xc0230e76 <in_cksum+394>: addl $0xffff0001,%ebx 0xc0230e7c <in_cksum+400>: addl $0xfffffffe,%esi 0xc0230e7f <in_cksum+403>: js 0xc0230e91 <in_cksum+421> 0xc0230e81 <in_cksum+405>: leal 0x0(%esi),%esi 0xc0230e84 <in_cksum+408>: movzwl (%ecx),%eax 0xc0230e87 <in_cksum+411>: addl %eax,%ebx 0xc0230e89 <in_cksum+413>: addl $0x2,%ecx 0xc0230e8c <in_cksum+416>: addl $0xfffffffe,%esi 0xc0230e8f <in_cksum+419>: jns 0xc0230e84 <in_cksum+408> 0xc0230e91 <in_cksum+421>: cmpl $0x0,0xfffffffc(%ebp) 0xc0230e95 <in_cksum+425>: je 0xc0230ec8 <in_cksum+476> 0xc0230e97 <in_cksum+427>: shll $0x8,%ebx 0xc0230e9a <in_cksum+430>: movl $0x0,0xfffffffc(%ebp) 0xc0230ea1 <in_cksum+437>: cmpl $0xffffffff,%esi 0xc0230ea4 <in_cksum+440>: jne 0xc0230ec0 <in_cksum+468> 0xc0230ea6 <in_cksum+442>: movb (%ecx),%al 0xc0230ea8 <in_cksum+444>: shlw $0x8,%ax 0xc0230eac <in_cksum+448>: andw $0xff,%di 0xc0230eb1 <in_cksum+453>: orw %ax,%di 0xc0230eb4 <in_cksum+456>: movzwl %di,%eax 0xc0230eb7 <in_cksum+459>: addl %eax,%ebx 0xc0230eb9 <in_cksum+461>: xorl %esi,%esi 0xc0230ebb <in_cksum+463>: jmp 0xc0230ed3 <in_cksum+487> 0xc0230ebd <in_cksum+465>: leal 0x0(%esi),%esi 0xc0230ec0 <in_cksum+468>: movl $0xffffffff,%esi 0xc0230ec5 <in_cksum+473>: jmp 0xc0230ed3 <in_cksum+487> 0xc0230ec7 <in_cksum+475>: nop 0xc0230ec8 <in_cksum+476>: cmpl $0xffffffff,%esi 0xc0230ecb <in_cksum+479>: jne 0xc0230ed3 <in_cksum+487> 0xc0230ecd <in_cksum+481>: movl %edi,%edx 0xc0230ecf <in_cksum+483>: movb (%ecx),%dl 0xc0230ed1 <in_cksum+485>: movl %edx,%edi 0xc0230ed3 <in_cksum+487>: movl 0x8(%ebp),%edx 0xc0230ed6 <in_cksum+490>: movl (%edx),%edx 0xc0230ed8 <in_cksum+492>: movl %edx,0x8(%ebp) 0xc0230edb <in_cksum+495>: testl %edx,%edx 0xc0230edd <in_cksum+497>: jne 0xc0230d0c <in_cksum+32> 0xc0230ee3 <in_cksum+503>: cmpl $0x0,0xc(%ebp) 0xc0230ee7 <in_cksum+507>: je 0xc0230ef3 <in_cksum+519> 0xc0230ee9 <in_cksum+509>: pushl $0xc0284b86 0xc0230eee <in_cksum+514>: call 0xc013c3f8 <printf> 0xc0230ef3 <in_cksum+519>: cmpl $0xffffffff,%esi 0xc0230ef6 <in_cksum+522>: jne 0xc0230eff <in_cksum+531> 0xc0230ef8 <in_cksum+524>: movl %edi,%edx 0xc0230efa <in_cksum+526>: movzbl %dl,%eax 0xc0230efd <in_cksum+529>: addl %eax,%ebx 0xc0230eff <in_cksum+531>: movzwl %bx,%edx 0xc0230f02 <in_cksum+534>: movl %ebx,%eax 0xc0230f04 <in_cksum+536>: shrl $0x10,%eax 0xc0230f07 <in_cksum+539>: leal (%eax,%edx,1),%ebx 0xc0230f0a <in_cksum+542>: cmpl $0xffff,%ebx 0xc0230f10 <in_cksum+548>: jbe 0xc0230f18 <in_cksum+556> 0xc0230f12 <in_cksum+550>: addl $0xffff0001,%ebx 0xc0230f18 <in_cksum+556>: movl %ebx,%eax 0xc0230f1a <in_cksum+558>: notl %eax 0xc0230f1c <in_cksum+560>: andl $0xffff,%eax 0xc0230f21 <in_cksum+565>: leal 0xfffffff0(%ebp),%esp 0xc0230f24 <in_cksum+568>: popl %ebx 0xc0230f25 <in_cksum+569>: popl %esi 0xc0230f26 <in_cksum+570>: popl %edi 0xc0230f27 <in_cksum+571>: leave 0xc0230f28 <in_cksum+572>: ret 0xc0230f29 <in_cksum+573>: leal 0x0(%esi),%esi End of assembler dump. (kgdb) quit gateway# Script done on Wed Nov 15 21:11:11 2000 ======================================================================== 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?20001116051639.85232.richw>