From owner-freebsd-fs@FreeBSD.ORG Tue Jul 10 18:43:10 2007 Return-Path: X-Original-To: freebsd-fs@freebsd.org Delivered-To: freebsd-fs@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 33EE416A41F for ; Tue, 10 Jul 2007 18:43:10 +0000 (UTC) (envelope-from jaharkes@cs.cmu.edu) Received: from delft.aura.cs.cmu.edu (DELFT.AURA.CS.CMU.EDU [128.2.206.88]) by mx1.freebsd.org (Postfix) with ESMTP id 12BEF13C447 for ; Tue, 10 Jul 2007 18:43:10 +0000 (UTC) (envelope-from jaharkes@cs.cmu.edu) Received: from jaharkes by delft.aura.cs.cmu.edu with local (Exim 4.67) (envelope-from ) id 1I8K2D-0007M2-Gv for freebsd-fs@freebsd.org; Tue, 10 Jul 2007 14:02:01 -0400 From: Jan Harkes To: freebsd-fs@freebsd.org Date: Tue, 10 Jul 2007 14:01:56 -0400 Message-Id: <1184090521301-git-send-email-jaharkes@cs.cmu.edu> X-Mailer: git-send-email 1.5.2.1 In-Reply-To: <2c84c1de0707060800t21f3f993mfb53f7975a881ed4@mail.gmail.com> References: <2c84c1de0707060800t21f3f993mfb53f7975a881ed4@mail.gmail.com> Subject: [PATCH Coda 0/5] 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: Tue, 10 Jul 2007 18:43:10 -0000 Here is my current patch series. The first three were originally developed to fix several issues in a fbsd-current checkout of Nov 7th 2006. The last two patches were added when I updated and retested against a checkout of -current, May 8th, 2007. Yesterday I updated my test system with cvsup and rebased the patches (only one minor conflict). I am still in the middle of make buildworld and that will probably take a while, but the change was pretty trivial so I expect it will work as well as when I tested on May 8th. And on the bright side, it can't do much worse compared to right now, which is to crash or panic the kernel as soon as either /dev/cfs0 is opened or the Coda filesystem is mounted. Short summary, [1/5] Avoid crash when opening Coda's control device. [2/5] mount coda failed because we failed to match on the device operations. [3/5] When opening a file in /coda ask userspace to pass an opened file descriptor instead of device/inode number pair. [4/5] insmntque panics the kernel when passed a NULL mount, so we should not pass that. [5/5] ioctls on a character device fails before it gets passed on to the file system. Change the type of the control object to a regular file. The diffs are taken from a repository that only tracks /usr/src/sys/coda, they should apply cleanly with the following command, patch -d /usr/src/sys/coda -p1 < patchN Jan