On Sun, Aug 29, 1999 at 04:48:32PM -0700, Matthew Dillon wrote:
> :
> :How similar?  The trap above is extremely bad; it looks like a return 
> :on a corrupted stack or a jump through a null function vector.
> :
> :Make very sure that your vinum kld is in sync with your kernel.
> 
>     This looks like an indirect call through a NULL function pointer.
> 
In my case it is a call to bp->b_iodone in kern/vfs_bio.c:2580 which is 0 :(

>     The stack looks intact ... look at the sp verses the frame pointer.
>     If the 'trace' command is resulting in a panic, perhaps it is because
>     there is no new stack frame.  Giving the trace command an argument
>     will help.  I forget how the arguments to 'trace' work under DDB
>     though.
> 

(kgdb) target remote /dev/cuaa2
Remote debugging using /dev/cuaa2
0x0 in ?? ()
(kgdb) bt
#0  0x0 in ?? ()
#1  0xc017228f in biodone (bp=0xc09ebd80) at ../../kern/vfs_bio.c:2580
#2  0xc0123db6 in dadone (periph=0xc0882c80, done_ccb=0xc09bd200) at 
../../cam/scsi/scsi_da.c:1294
#3  0xc011fa7b in camisr (queue=0xc02726b4) at ../../cam/cam_xpt.c:6141
#4  0xc011f88d in swi_cambio () at ../../cam/cam_xpt.c:6048
#5  0xc020db30 in splz_swi ()
(kgdb) frame 1
#1  0xc017228f in biodone (bp=0xc09ebd80) at ../../kern/vfs_bio.c:2580
2580    ../../kern/vfs_bio.c: No such file or directory.
(kgdb) print bp
$1 = (struct buf *) 0xc09ebd80
(kgdb) print *bp
$2 = {
  b_hash = {
    le_next = 0x0, 
    le_prev = 0x0
  }, 
  b_vnbufs = {
    tqe_next = 0x0, 
    tqe_prev = 0x0
  }, 
  b_freelist = {
    tqe_next = 0x0, 
    tqe_prev = 0x0
  }, 
  b_act = {
    tqe_next = 0x0, 
    tqe_prev = 0xc0885400
  }, 
  b_flags = 0x8100204, 
  b_qindex = 0x0, 
  b_unused1 = 0x0, 
  b_xflags = 0x0, 
  b_lock = {
    lk_interlock = {
      lock_data = 0x0
    }, 
    lk_flags = 0x400, 
    lk_sharecount = 0x0, 
    lk_waitcount = 0x0, 
    lk_exclusivecount = 0x1, 
    lk_prio = 0x14, 
    lk_wmesg = 0x0, 
    lk_timo = 0x0, 
    lk_lockholder = 0x4
  }, 
  b_error = 0x0, 
  b_bufsize = 0x400, 
  b_bcount = 0x400, 
  b_resid = 0x0, 
  b_dev = 0xc098d840, 
  b_data = 0xc0befc00 "\2275\t", 
  b_kvabase = 0x0, 
  b_kvasize = 0x0, 
  b_lblkno = 0x0, 
  b_blkno = 0x0, 
  b_offset = 0x0, 
  b_iodone = 0, 
  b_iodone_chain = 0x0, 
  b_vp = 0xc5d4a700, 
  b_dirtyoff = 0x0, 
  b_dirtyend = 0x0, 
  b_rcred = 0xffffffff, 
  b_wcred = 0xffffffff, 
  b_pblkno = 0x260c1f, 
  b_saveaddr = 0x0, 
  b_driver1 = 0x0, 
  b_driver2 = 0x0, 
  b_caller1 = 0x0, 
  b_caller2 = 0x0, 
  b_pager = {
    pg_spc = 0x0, 
    pg_reqpage = 0x0
  }, 
  b_cluster = {
    cluster_head = {
      tqh_first = 0x0, 
      tqh_last = 0x0
    }, 
    cluster_entry = {
      tqe_next = 0x0, 
      tqe_prev = 0x0
    }
  }, 
  b_pages = {0x0 <repeats 32 times>}, 
  b_npages = 0x0, 
  b_dep = {
    lh_first = 0x0
  }, 
  b_chain = {
    parent = 0x0, 
    count = 0x0
  }
}
(kgdb) 


-- 
B.Walter                  COSMO-Project              http://www.cosmo-project.de
[EMAIL PROTECTED]             Usergroup                [EMAIL PROTECTED]



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to