Skip site navigation (1)Skip section navigation (2)
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>