From owner-freebsd-bugs Sat Dec 23 18:40: 6 2000 From owner-freebsd-bugs@FreeBSD.ORG Sat Dec 23 18:40:02 2000 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 403F437B404 for ; Sat, 23 Dec 2000 18:40:02 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.11.1/8.11.1) id eBO2e2m35709; Sat, 23 Dec 2000 18:40:02 -0800 (PST) (envelope-from gnats) Date: Sat, 23 Dec 2000 18:40:02 -0800 (PST) Message-Id: <200012240240.eBO2e2m35709@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org Cc: From: Ian Dowse Subject: Re: kern/23794: reboot after panic: backgroundwritedone: lost buffer Reply-To: Ian Dowse Sender: gnats@FreeBSD.org Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org The following reply was made to PR kern/23794; it has been noted by GNATS. From: Ian Dowse To: Andre Albsmeier Cc: FreeBSD-gnats-submit@FreeBSD.org, iedowse@maths.tcd.ie, dillon@FreeBSD.org, mckusick@mckusick.com Subject: Re: kern/23794: reboot after panic: backgroundwritedone: lost buffer Date: Sun, 24 Dec 2000 02:33:47 +0000 In message <200012231336.eBNDaMp03117@curry.mchp.siemens.de>, Andre Albsmeier w rites: >>Synopsis: reboot after panic: backgroundwritedone: lost buffer This is interesting, since it relates to the discussions which preceded revision 1.267 of vfs_bio.c. There was a piece of code in brelse() that was supposed to ensure that buffers with associated background writes would remain until the background write completed. However the logic of this code had always been wrong so it never functioned, and Matt removed it in vfs_bio.c revision 1.267 (and in 4.x revision 1.242.2.3). This panic may indicate that this check really does need to be added (correctly this time). What is the version number of /usr/src/sys/kern/vfs_bio.c that you are using? I think to re-introduce the test for background writes we need something like the patch below, though I haven't looked too carefully. Ian Index: vfs_bio.c =================================================================== RCS file: /home/iedowse/CVS/src/sys/kern/vfs_bio.c,v retrieving revision 1.268 diff -u -r1.268 vfs_bio.c --- vfs_bio.c 2000/12/15 20:08:19 1.268 +++ vfs_bio.c 2000/12/23 14:54:44 @@ -1009,6 +1009,7 @@ * background write. */ if ((bp->b_flags & B_VMIO) + && !(bp->b_xflags & BX_BKGRDINPROG) && !(bp->b_vp->v_tag == VT_NFS && !vn_isdisk(bp->b_vp, NULL) && (bp->b_flags & B_DELWRI)) To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message