Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 10 Nov 2002 01:26:18 -0400 (AST)
From:      "Marc G. Fournier" <scrappy@hub.org>
To:        freebsd-stable@freebsd.org
Subject:   kernel crash: KASSERT(bp->b_resid == 0, ("bp->b_resid != 0"));
Message-ID:  <20021110010710.R61734-100000@hub.org>

next in thread | raw e-mail | index | archive | help

Haven't been able to upgrade to a newer kernel yet, due to it hanging on
boot, so this may be something that is already fixed, but:

(kgdb) where
#0  0xc953b256 in ?? ()
#1  0xc01430bc in boot (howto=256) at /usr/src/sys/kern/kern_shutdown.c:223
#2  0xc01437e1 in panic (fmt=0xc0218458 "bp->b_resid != 0")
    at /usr/src/sys/kern/kern_shutdown.c:595
#3  0xc01b0ad2 in ffs_read (ap=0xf9a4ae98)
    at /usr/src/sys/ufs/ufs/ufs_readwrite.c:302
#4  0xc01b71d6 in ufs_readdir (ap=0xf9a4aee8) at vnode_if.h:334
#5  0xc01b7c29 in ufs_vnoperate (ap=0xf9a4aee8)
    at /usr/src/sys/ufs/ufs/ufs_vnops.c:2422
#6  0xc0177d87 in getdirentries (p=0xf9871be0, uap=0xf9a4af80)
    at vnode_if.h:769
#7  0xc01f3049 in syscall2 (frame={tf_fs = 47, tf_es = 47, tf_ds = 47,
      tf_edi = 0, tf_esi = 134643264, tf_ebp = -1077939716,
      tf_isp = -106647596, tf_ebx = 672906948, tf_edx = 134643264,
      tf_ecx = 672981632, tf_eax = 196, tf_trapno = 7, tf_err = 2,
      tf_eip = 672590908, tf_cs = 31, tf_eflags = 582, tf_esp = -1077939760,
      tf_ss = 47}) at /usr/src/sys/i386/i386/trap.c:1175
#8  0xc01e035b in Xint0x80_syscall ()

#3  0xc01b0ad2 in ffs_read (ap=0xf9a4ae98)
    at /usr/src/sys/ufs/ufs/ufs_readwrite.c:302
302                     KASSERT(bp->b_resid == 0, ("bp->b_resid != 0"));
(kgdb) list
297                      * XXX b_resid is only valid when an actual I/O has occured
298                      * and may be incorrect if the buffer is B_CACHE or if the
299                      * last op on the buffer was a failed write.  This KASSERT
300                      * is a precursor to removing it from the UFS code.
301                      */
302                     KASSERT(bp->b_resid == 0, ("bp->b_resid != 0"));
303                     size -= bp->b_resid;
304                     if (size < xfersize) {
305                             if (size == 0)
306                                     break;



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?20021110010710.R61734-100000>