From owner-svn-src-all@FreeBSD.ORG Tue Jun 19 07:59:36 2012 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 85BF8106564A; Tue, 19 Jun 2012 07:59:36 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from mail.zoral.com.ua (mx0.zoral.com.ua [91.193.166.200]) by mx1.freebsd.org (Postfix) with ESMTP id F1EFD8FC14; Tue, 19 Jun 2012 07:59:34 +0000 (UTC) Received: from skuns.kiev.zoral.com.ua (localhost [127.0.0.1]) by mail.zoral.com.ua (8.14.2/8.14.2) with ESMTP id q5J7xSA2057662; Tue, 19 Jun 2012 10:59:28 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: from deviant.kiev.zoral.com.ua (kostik@localhost [127.0.0.1]) by deviant.kiev.zoral.com.ua (8.14.5/8.14.5) with ESMTP id q5J7xRd4086124; Tue, 19 Jun 2012 10:59:27 +0300 (EEST) (envelope-from kostikbel@gmail.com) Received: (from kostik@localhost) by deviant.kiev.zoral.com.ua (8.14.5/8.14.5/Submit) id q5J7xRnF086123; Tue, 19 Jun 2012 10:59:27 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: deviant.kiev.zoral.com.ua: kostik set sender to kostikbel@gmail.com using -f Date: Tue, 19 Jun 2012 10:59:27 +0300 From: Konstantin Belousov To: Benjamin Kaduk Message-ID: <20120619075927.GO2337@deviant.kiev.zoral.com.ua> References: <201206182217.q5IMHTJE003928@svn.freebsd.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="JLgb/x5pnTX2rSUi" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.2.3i X-Virus-Scanned: clamav-milter 0.95.2 at skuns.kiev.zoral.com.ua X-Virus-Status: Clean X-Spam-Status: No, score=-4.0 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on skuns.kiev.zoral.com.ua Cc: svn-src-head@freebsd.org, Rick Macklem , svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r237244 - head/sys/fs/nfsclient X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 19 Jun 2012 07:59:36 -0000 --JLgb/x5pnTX2rSUi Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Jun 19, 2012 at 03:06:09AM +0000, Benjamin Kaduk wrote: > On Mon, 18 Jun 2012, Rick Macklem wrote: >=20 > >Author: rmacklem > >Date: Mon Jun 18 22:17:28 2012 > >New Revision: 237244 > >URL: http://svn.freebsd.org/changeset/base/237244 > > > >Log: > > Fix the NFSv4 client for the case where mmap'd files are > > written, but not msync'd by a process. A VOP_PUTPAGES() > > called when VOP_RECLAIM() happens will usually fail, since > > the NFSv4 Open has already been closed by VOP_INACTIVE(). > > Add a vm_object_page_clean() call to the NFSv4 client's > > VOP_INACTIVE(), so that the write happens before the NFSv4 > > Open is closed. kib@ suggested using vgone() instead and > > I will explore this, but this patch fixes things in the >=20 > Hi Rick, >=20 > OpenAFS is currently using vgone() in the vnode cleanup path (though it i= s=20 > actually in RECLAIM not INACTIVE because of how AFS has traditionally=20 > separated the two). Calling vgone() from VOP_RECLAIM is exactly NOP. > However, it seems that the other *BSD implementations do not call vgone()= =20 > in the same place, instead the corresponding flush functions call=20 > cache_purge() and sometimes other things. My colleague is trying to get= =20 > our FreeBSD implementation to match, so I would be interested in your tes= t=20 > case to confirm that we do not rely on the full vgone() there. >=20 > Thanks, >=20 > Ben >=20 > > meantime. For some reason, the VOP_PUTPAGES() is still > > attaempted in VOP_RECLAIM(), but having this fail doesn't > > cause any problems except a "stateid0 in write" being logged. --JLgb/x5pnTX2rSUi Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (FreeBSD) iEYEARECAAYFAk/gMV8ACgkQC3+MBN1Mb4h74wCdGoaluRfwe75F83VID8Go5NfN KcgAn1Tsa1z7ipDa49FSUex0k8wjSKZ1 =RcIY -----END PGP SIGNATURE----- --JLgb/x5pnTX2rSUi--