Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Jan 1999 01:23:05 -0800 (PST)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Bjoern Fischer <bfischer@Techfak.Uni-Bielefeld.DE>
Cc:        freebsd-stable@FreeBSD.ORG, freebsd-current@FreeBSD.ORG
Subject:   Re: nuts'n'bolts in vfs_bio
Message-ID:  <199901290923.BAA75985@apollo.backplane.com>
References:   <19990129094616.A555@frolic.no-support.loc>

next in thread | previous in thread | raw e-mail | index | archive | help
:Hello,
:
:as Matthew said in freebsd-current@ vfs_bio:getblk() still
:needs work (B_CACHE/B_DELWRI stuff).
:
:Running 3.0-stable (Jan 26) it still happens that some NFS
:writes seem to remain uncommited on the server.
:
:Is there a chance to get it into -stable before releasing
:in mid February?
:
:  Thanks,
:
:  Bjoern


    Please try this diff ( against RELENG_3 kern/vfs_bio.c ) and 
    tell me if it works.

    This is for STABLE only.  Current already has this patch.

					-Matt
					Matthew Dillon 
					<dillon@backplane.com>


Index: sys/kern/vfs_bio.c
===================================================================
RCS file: /home/ncvs/src/sys/kern/vfs_bio.c,v
retrieving revision 1.193.2.2
diff -u -r1.193.2.2 vfs_bio.c
--- vfs_bio.c	1999/01/25 01:59:26	1.193.2.2
+++ vfs_bio.c	1999/01/29 09:22:32
@@ -1466,7 +1466,10 @@
 		 * contain fully valid pages.  Normal (old-style) buffers
 		 * should be fully valid.
 		 */
-		if (bp->b_flags & B_VMIO) {
+		if (
+		    (bp->b_flags & (B_VMIO|B_CACHE)) == (B_VMIO|B_CACHE) &&
+		    (bp->b_vp->v_tag != VT_NFS || bp->b_validend <= 0)
+		) {
 			int checksize = bp->b_bufsize;
 			int poffset = bp->b_offset & PAGE_MASK;
 			int resid;

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?199901290923.BAA75985>