Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Nov 1999 04:40:04 -0800 (PST)
From:      assar@stacken.kth.se
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: kern/15057: loading a kld module with a unresolved symbol crashes
Message-ID:  <199911281240.EAA66109@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/15057; it has been noted by GNATS.

From: assar@stacken.kth.se
To: Peter Wemm <peter@netplex.com.au>
Cc: FreeBSD-gnats-submit@freebsd.org
Subject: Re: kern/15057: loading a kld module with a unresolved symbol crashes
Date: 28 Nov 1999 13:38:22 +0100

 Peter Wemm <peter@netplex.com.au> writes:
 > The 1.18 fix was for a different problem and I don't see how it's applicable
 > to this case.  newmod->file is set unconditionally when loaded.
 
 Hm, I did go by the CVS comments but other than that I would have to
 agree.  The problem is however fixed in -current but I haven't not
 been able to pinpoint what patch fixed it.
 
 > Can you give me some more information please?  Such as a traceback showing
 > where the crash is?
 
 Sure, here's a cut-n-paste from kgdb.  Tell me if there's more
 information you need.
 
 
 /assar
 
 IdlePTD 4190208
 initial pcb at 36b12c
 panicstr: page fault
 panic messages:
 ---
 Fatal trap 12: page fault while in kernel mode
 fault virtual address   = 0xe51c
 fault code              = supervisor read, page not present
 instruction pointer     = 0x8:0xc015df8c
 stack pointer           = 0x10:0xc3f80e00
 frame pointer           = 0x10:0xc3f80e0c
 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         = 27873 (kldload)
 interrupt mask          = 
 trap number             = 12
 panic: page fault
 
 syncing disks... 55 55 51 41 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 32 giving up
 
 dumping to dev 20001, offset 163840
 dump 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  boot (howto=256) at ../../kern/kern_shutdown.c:285
 285                     dumppcb.pcb_cr3 = rcr3();
 (kgdb) bt
 #0  boot (howto=256) at ../../kern/kern_shutdown.c:285
 #1  0xc016a511 in panic (fmt=0xc033703e "page fault")
     at ../../kern/kern_shutdown.c:446
 #2  0xc02a1e66 in trap_fatal (frame=0xc3f80dc4, eva=58652)
     at ../../i386/i386/trap.c:942
 #3  0xc02a1b1f in trap_pfault (frame=0xc3f80dc4, usermode=0, eva=58652)
     at ../../i386/i386/trap.c:835
 #4  0xc02a177e in trap (frame={tf_es = -1007157232, tf_ds = 16, 
       tf_edi = -1058748548, tf_esi = -1058748544, tf_ebp = -1007153652, 
       tf_isp = -1007153684, tf_ebx = 58652, tf_edx = 58824, 
       tf_ecx = -1058748540, tf_eax = -1058748548, tf_trapno = 12, tf_err = 0, 
       tf_eip = -1072308340, tf_cs = 8, tf_eflags = 66050, tf_esp = 0, 
       tf_ss = -1060441472}) at ../../i386/i386/trap.c:437
 #5  0xc015df8c in linker_file_sysuninit (lf=0xc0caf280)
     at ../../kern/kern_linker.c:204
 #6  0xc015e3d6 in linker_file_unload (file=0xc0caf280)
     at ../../kern/kern_linker.c:413
 #7  0xc016048a in link_elf_load_file (filename=0xc0cb2000 "./xfs.ko", 
     result=0xc3f80f3c) at ../../kern/link_elf.c:682
 #8  0xc015fc8e in link_elf_load_module (filename=0xc0cb2000 "./xfs.ko", 
     result=0xc3f80f3c) at ../../kern/link_elf.c:340
 #9  0xc015e0d6 in linker_load_file (filename=0xc0cb2000 "./xfs.ko", 
     result=0xc3f80f5c) at ../../kern/kern_linker.c:265
 #10 0xc015e89a in kldload (p=0xc3f1f180, uap=0xc3f80f94)
     at ../../kern/kern_linker.c:655
 #11 0xc02a20c3 in syscall (frame={tf_es = 39, tf_ds = 39, tf_edi = 1, 
       tf_esi = 1, tf_ebp = -1077945412, tf_isp = -1007153180, 
       tf_ebx = -1077945360, tf_edx = 2, tf_ecx = 118, tf_eax = 304, 
       tf_trapno = 12, tf_err = 2, tf_eip = 134513676, tf_cs = 31, 
       tf_eflags = 582, tf_esp = -1077945432, tf_ss = 39})
     at ../../i386/i386/trap.c:1100
 #12 0xc02972fc in Xint0x80_syscall ()
 #13 0x80480e9 in ?? ()
 (kgdb) f 5
 #5  0xc015df8c in linker_file_sysuninit (lf=0xc0caf280)
     at ../../kern/kern_linker.c:204
 204                 if ((*sipp)->subsystem >= (*xipp)->subsystem ||
 (kgdb) p sipp
 $1 = (struct sysinit **) 0xc0e4c780
 (kgdb) p xipp
 $2 = (struct sysinit **) 0x0
 


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




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