From owner-freebsd-current Mon Jun 2 04:49:54 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id EAA14965 for current-outgoing; Mon, 2 Jun 1997 04:49:54 -0700 (PDT) Received: from nlsystems.com (nlsys.demon.co.uk [158.152.125.33]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id EAA14957 for ; Mon, 2 Jun 1997 04:49:50 -0700 (PDT) Received: from herring.nlsystems.com (herring.nlsystems.com [10.0.0.2]) by nlsystems.com (8.8.5/8.8.5) with SMTP id MAA01927; Mon, 2 Jun 1997 12:49:37 +0100 (BST) Date: Mon, 2 Jun 1997 12:49:37 +0100 (BST) From: Doug Rabson To: Bruce Evans cc: current@freebsd.org Subject: Re: processes hanging in getblk for shutdown on nfs client In-Reply-To: <199706020356.NAA08264@godzilla.zeta.org.au> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-current@freebsd.org X-Loop: FreeBSD.org Precedence: bulk On Mon, 2 Jun 1997, Bruce Evans wrote: > On my nfs client system with /usr nfs-mounted, a plain reboot command > now always leaves sendmail and/or xntpd hanging on getblk. The sync > then fails because of dirty blocks. There was no problem until a > week or two ago. There is no problem with the same kernel and similar > utilities on my nfs server system. Can you try this patch and see if it helps: Index: vfs_bio.c =================================================================== RCS file: /home/ncvs/src/sys/kern/vfs_bio.c,v retrieving revision 1.117 diff -u -r1.117 vfs_bio.c --- vfs_bio.c 1997/05/30 22:25:35 1.117 +++ vfs_bio.c 1997/06/02 10:38:23 @@ -514,11 +514,11 @@ * This can avoid unnecessary re-reads of the buffer. */ if ((bp->b_flags & B_VMIO) - && (bp->b_vp->v_tag != VT_NFS + /* && (bp->b_vp->v_tag != VT_NFS || (bp->b_flags & (B_NOCACHE | B_INVAL | B_ERROR)) || bp->b_validend == 0 || (bp->b_validoff == 0 - && bp->b_validend == bp->b_bufsize))) { + && bp->b_validend == bp->b_bufsize)) */) { vm_ooffset_t foff; vm_object_t obj; int i, resid; -- Doug Rabson Mail: dfr@nlsystems.com Nonlinear Systems Ltd. Phone: +44 181 951 1891 Fax: +44 181 381 1039