From owner-freebsd-fs@FreeBSD.ORG Sun Nov 6 13:31:04 2011 Return-Path: Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 056BE106564A; Sun, 6 Nov 2011 13:31:04 +0000 (UTC) (envelope-from ronald-freebsd8@klop.yi.org) Received: from smtp-out3.tiscali.nl (smtp-out3.tiscali.nl [195.241.79.178]) by mx1.freebsd.org (Postfix) with ESMTP id B92A98FC08; Sun, 6 Nov 2011 13:31:03 +0000 (UTC) Received: from [212.182.167.131] (helo=sjakie.klop.ws) by smtp-out3.tiscali.nl with esmtp (Exim) (envelope-from ) id 1RN2Vn-0001eP-CR; Sun, 06 Nov 2011 14:11:47 +0100 Received: from 212-182-167-131.ip.telfort.nl (localhost [127.0.0.1]) by sjakie.klop.ws (Postfix) with ESMTP id 9ABD84097; Sun, 6 Nov 2011 14:11:33 +0100 (CET) Content-Type: text/plain; charset=us-ascii; format=flowed; delsp=yes To: freebsd-fs@freebsd.org, "Rick Macklem" References: <1558351773.1229453.1320542285788.JavaMail.root@erie.cs.uoguelph.ca> Date: Sun, 06 Nov 2011 14:11:33 +0100 MIME-Version: 1.0 From: "Ronald Klop" Message-ID: In-Reply-To: <1558351773.1229453.1320542285788.JavaMail.root@erie.cs.uoguelph.ca> User-Agent: Opera Mail/11.52 (FreeBSD) Content-Transfer-Encoding: quoted-printable Cc: Josh Paetzel , zkirsch@freebsd.org Subject: Re: [RFC] Should vfs.nfsrv.async be implemented for new NFS server? X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Nov 2011 13:31:04 -0000 On Sun, 06 Nov 2011 02:18:05 +0100, Rick Macklem =20 wrote: > Hi, > > Josh Paetzel pointed out that vfs.nfsrv.async doesn't exist > for the new NFS server. > > I don't think I had spotted this before, but when I looked I > saw that, when vfs.nfsrv.async is set non-zero in the old server, > it returns FILESYNC (which means the write has been committed to > non-volatile storage) even when it hasn't actually done that. > > This can improve performance, but has some negative implications: > - If the server crashes before the write is committed to > non-volatile storage, the file modification will be lost. > (When a server replies UNSTABLE to a write, the client holds > onto the data in its cache and does the write again if the > server crashes/reboots before the client does a Commit RPC > for the file. However, a reply of FILESYNC tells the client > it can forget about the write, because it is done.) > - Because of the above, replying FILESYNC when the data is not > yet committed to non-volatile (also referred to as stable) > storage, this is a violation of RFC1813. Just out of curiosity. Why would lying about FILESYNC improve performance= =20 over UNSTABLE? The server does the same work. Only the client holds data = =20 longer in memory. I only see impact if the client has just a little bit o= f =20 memory. Ronald.