From owner-freebsd-fs@FreeBSD.ORG Mon Oct 29 12:00:02 2012 Return-Path: Delivered-To: freebsd-fs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 36E9F2C2 for ; Mon, 29 Oct 2012 12:00:02 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 1D17E8FC16 for ; Mon, 29 Oct 2012 12:00:02 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q9TC01jO035949 for ; Mon, 29 Oct 2012 12:00:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q9TC01Ku035948; Mon, 29 Oct 2012 12:00:01 GMT (envelope-from gnats) Date: Mon, 29 Oct 2012 12:00:01 GMT Message-Id: <201210291200.q9TC01Ku035948@freefall.freebsd.org> To: freebsd-fs@FreeBSD.org Cc: From: Andrey Simonenko Subject: Re: kern/136865: [nfs] [patch] NFS exports atomic and on-the-fly atomic updates X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: Andrey Simonenko List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Oct 2012 12:00:02 -0000 The following reply was made to PR kern/136865; it has been noted by GNATS. From: Andrey Simonenko To: Martin Birgmeier Cc: bug-followup@FreeBSD.org Subject: Re: kern/136865: [nfs] [patch] NFS exports atomic and on-the-fly atomic updates Date: Mon, 29 Oct 2012 13:55:42 +0200 Hello, On Fri, Oct 26, 2012 at 03:15:56PM +0200, Martin Birgmeier wrote: > Hi Andrey, > > Today I started applying your changes and did the following: > > 1. downloaded nfse-20121025.tar.bz2 from sourceforge > 2. read INSTALL-all > 3. checked out release/8.2.0 from FreeBSD SVN > 4. applied src/cddl.diff > ==> this failed The cddl.diff file cannot be applied to cddl/ from 8.2, since cddl/ source was updated several times in next FreeBSD versions. These changes are not strictly necessary (see below). > 5. checked out head from FreeBSD SVN > 6. applied src/cddl diff > ==> this failed as well Check again, I can apply cddl.diff to just csup'ed 10-CURRENT. > > I have imported all nfse patch files from sourceforge in a local > mercurial repo to be able to easier follow what is changing. There I see > that cddl.diff was updated for the last time on May 17. > > Could you help me with the following questions: > - Is INSTALL-all still relevant, and if yes, for which cases? This file describes how to apply all NFSE changes to the FreeBSD source code to make complete integration. > - What for is cddl.diff? > - I am heavily using zfs. Which patches from your patchset do I need to > get nfse to fully support zfs? This file contains integration of NFSE with the zfs program. When one calls 'zfs sharenfs/unshare ...', then NFS exports settings are updated using SIGHUP or dynamic NFSE commands (depends on presence of the /etc/nfs.exports file). If you do not use NFSE dynamic commands (eg. "nfse -c 'flush/clear/add/update/delete/set/unset ...'"), then cddl.diff is not needed, just create symlink to mountd.pid by setting the nfse_mountd_pid rc variable to "YES" and 'zfs share/unshare ...' will send SIGHUP to nfse. There is one question about NFSE and ZFS, this is support of ZFS snapshots. NFSE was implemented as part of NFS server, not the part of VFS framework. As a result right now it is impossible to automatically (unconditionally, as it is done in all FreeBSD versions) export ZFS snapshots by NFSE. > > Lastly, I believe it might be more helpful to combine INSTALL-all and > INSTALL-kern into a single file INSTALL and in that file clearly point > out the differences between the two methods (what does one method give > you, what the other, what do I need to do for the first method, what for > the other). You are right, I've just updated these two files with descriptions. I suggest to apply changes to sys/ (I sent to you before) and etc/ (necessary to correct two rejected updates). Then build and install the kernel and try to run nfse with simple configuration (/etc/exports or /etc/nfs.exports).