From owner-freebsd-stable@FreeBSD.ORG Mon Feb 9 13:21:58 2009 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id AF9AF10656C6 for ; Mon, 9 Feb 2009 13:21:58 +0000 (UTC) (envelope-from avg@icyb.net.ua) Received: from citadel.icyb.net.ua (citadel.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id DC0B78FC17 for ; Mon, 9 Feb 2009 13:21:56 +0000 (UTC) (envelope-from avg@icyb.net.ua) Received: from odyssey.starpoint.kiev.ua (alpha-e.starpoint.kiev.ua [212.40.38.101]) by citadel.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id PAA20655; Mon, 09 Feb 2009 15:21:54 +0200 (EET) (envelope-from avg@icyb.net.ua) Message-ID: <49902DF2.8050206@icyb.net.ua> Date: Mon, 09 Feb 2009 15:21:54 +0200 From: Andriy Gapon User-Agent: Thunderbird 2.0.0.19 (X11/20090110) MIME-Version: 1.0 To: FreeBSD Stable , freebsd-fs@freebsd.org References: <498AF8E1.7020206@icyb.net.ua> In-Reply-To: <498AF8E1.7020206@icyb.net.ua> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Cc: Subject: Re: nfs umount soft hang X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Feb 2009 13:21:59 -0000 on 05/02/2009 16:34 Andriy Gapon said the following: > I have an NFS server and NFS client separated by a firewall. Both > servers are FreeBSD 7.1. > > Server configuration: > nfs_server_enable="YES" > nfs_server_flags="-t -n 4" > rpcbind_enable="YES" > mountd_flags="-r -p 737" > mountd_enable="YES" > > The firewall allows tcp and udp to port 111, but only tcp to ports 2049 > and 737 (configured for mountd, see above). > > On the client I use e.g. the following command for mounting: > mount -t nfs -o nfsv3,tcp,intr,rdirplus,-r=32768,-w=32768 > XXXX:/export/usr/obj /usr/obj > > Mounting and subsequent fs operations work flawlessly. > > When I unmount umount command hangs but can be interrupted with ^C. > Everything seems to be clean after that - the filesystem is unmounted, > there are no post-effects on both client and server. I think this is it: 377 /* 378 * Report to mountd-server which nfsname 379 * has been unmounted. 380 */ 381 if (ai != NULL && !(fflag & MNT_FORCE) && do_rpc) { 382 clp = clnt_create(hostp, RPCPROG_MNT, RPCMNT_VER1, "udp"); I wonder if umount could be smarter as to whether use udp or tcp here. -- Andriy Gapon