From owner-freebsd-net@FreeBSD.ORG Wed Jun 23 04:38:55 2004 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0119016A4CE; Wed, 23 Jun 2004 04:38:55 +0000 (GMT) Received: from arginine.spc.org (arginine.spc.org [195.206.69.236]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3651F43D49; Wed, 23 Jun 2004 04:38:54 +0000 (GMT) (envelope-from bms@spc.org) Received: from localhost (localhost [127.0.0.1]) by arginine.spc.org (Postfix) with ESMTP id 4A776651EE; Wed, 23 Jun 2004 05:38:52 +0100 (BST) Received: from arginine.spc.org ([127.0.0.1]) by localhost (arginine.spc.org [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 76340-05-3; Wed, 23 Jun 2004 05:38:51 +0100 (BST) Received: from empiric.dek.spc.org (82-147-17-88.dsl.uk.rapidplay.com [82.147.17.88]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by arginine.spc.org (Postfix) with ESMTP id 3BB86651EB; Wed, 23 Jun 2004 05:38:51 +0100 (BST) Received: by empiric.dek.spc.org (Postfix, from userid 1001) id 59C4E614B; Wed, 23 Jun 2004 05:38:50 +0100 (BST) Date: Wed, 23 Jun 2004 05:38:50 +0100 From: Bruce M Simpson To: Barney Wolff Message-ID: <20040623043850.GA3838@empiric.dek.spc.org> Mail-Followup-To: Barney Wolff , Alfred Perlstein , Jonathan Lennox , freebsd-net@freebsd.org References: <20040618114929.GE58783@empiric.dek.spc.org> <20040618175121.GZ61448@elvis.mu.org> <20040618210840.GA53218@pit.databus.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20040618210840.GA53218@pit.databus.com> cc: Jonathan Lennox cc: freebsd-net@freebsd.org cc: Alfred Perlstein Subject: Re: kern/56461: FreeBSD client rpc.lockd incompatible with Linux server rpc.lockd X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Jun 2004 04:38:55 -0000 On Fri, Jun 18, 2004 at 05:08:40PM -0400, Barney Wolff wrote: > Pardon an ignorant question, but what happens to unfortunate people who > have to talk to both Linux and non-quirky servers at the same time? Is > there a way to detect what flavor of server you're talking to and adjust > accordingly? That would be far better than a sysctl. I've been researching this. This is actually far, far more involved. The problem is that rpc.lockd sits in userland, and has no easy idea of getting NFS-specific mount options back from the kernel for a current NFS client mountpoint. The reason for this is to do with the way the old mount(2) API works. nmount(2) helps to address some of the problem, by providing for an iovec to be passed in instead; vfs_getopt() is used by nmount() clients to obtain the options passed in to userland for the mount. None of the nfs code uses nmount() yet. Also, there is no system call yet which could be used to retrieve the options with which a filesystem has been mounted, but this is still a step in the right direction. So the short answer is, we can't do a mount option right now, but a sysctl is easily implemented. In any event, the bug is now fixed in the Linux kernel, those unfortunate souls out there who have the luck to work with Linux in this way will have to wait for the userland binaries to catch up in all the distro. Regards, BMS