From owner-freebsd-current@FreeBSD.ORG Wed Dec 1 07:50:07 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 87F2516A4CE for ; Wed, 1 Dec 2004 07:50:07 +0000 (GMT) Received: from critter.freebsd.dk (critter.freebsd.dk [212.242.86.163]) by mx1.FreeBSD.org (Postfix) with ESMTP id C2B6D43D1D for ; Wed, 1 Dec 2004 07:50:06 +0000 (GMT) (envelope-from phk@critter.freebsd.dk) Received: from critter.freebsd.dk (localhost [127.0.0.1]) by critter.freebsd.dk (8.13.1/8.13.1) with ESMTP id iB17o5XB066198 for ; Wed, 1 Dec 2004 08:50:05 +0100 (CET) (envelope-from phk@critter.freebsd.dk) To: current@freebsd.org From: Poul-Henning Kamp Date: Wed, 01 Dec 2004 08:50:05 +0100 Message-ID: <66197.1101887405@critter.freebsd.dk> Sender: phk@critter.freebsd.dk Subject: [TESTERS] msdosfs patch X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Dec 2004 07:50:07 -0000 Can some of the people who use msdosfs please test this patch for me ? Poul-Henning Index: fs/msdosfs/denode.h =================================================================== RCS file: /home/ncvs/src/sys/fs/msdosfs/denode.h,v retrieving revision 1.28 diff -u -r1.28 denode.h --- fs/msdosfs/denode.h 8 Sep 2004 13:03:19 -0000 1.28 +++ fs/msdosfs/denode.h 1 Dec 2004 07:48:25 -0000 @@ -138,7 +138,6 @@ struct denode *de_next; /* Hash chain forward */ struct denode **de_prev; /* Hash chain back */ struct vnode *de_vnode; /* addr of vnode we are part of */ - struct vnode *de_devvp; /* vnode of blk dev we live on */ u_long de_flag; /* flag bits */ struct cdev *de_dev; /* device where direntry lives */ u_long de_dirclust; /* cluster of the directory file containing this entry */ Index: fs/msdosfs/msdosfs_denode.c =================================================================== RCS file: /home/ncvs/src/sys/fs/msdosfs/msdosfs_denode.c,v retrieving revision 1.75 diff -u -r1.75 msdosfs_denode.c --- fs/msdosfs/msdosfs_denode.c 29 Oct 2004 10:40:14 -0000 1.75 +++ fs/msdosfs/msdosfs_denode.c 1 Dec 2004 07:48:25 -0000 @@ -258,7 +258,6 @@ nvp->v_data = ldep; ldep->de_vnode = nvp; ldep->de_flag = 0; - ldep->de_devvp = 0; ldep->de_dev = dev; ldep->de_dirclust = dirclust; ldep->de_diroffset = diroffset; @@ -372,8 +371,6 @@ } else nvp->v_type = VREG; ldep->de_modrev = init_va_filerev(); - ldep->de_devvp = pmp->pm_devvp; - VREF(ldep->de_devvp); *depp = ldep; return (0); } @@ -646,10 +643,6 @@ /* * Purge old data structures associated with the denode. */ - if (dep->de_devvp) { - vrele(dep->de_devvp); - dep->de_devvp = 0; - } #if 0 /* XXX */ dep->de_flag = 0; #endif Index: fs/msdosfs/msdosfs_vnops.c =================================================================== RCS file: /home/ncvs/src/sys/fs/msdosfs/msdosfs_vnops.c,v retrieving revision 1.152 diff -u -r1.152 msdosfs_vnops.c --- fs/msdosfs/msdosfs_vnops.c 15 Nov 2004 09:18:26 -0000 1.152 +++ fs/msdosfs/msdosfs_vnops.c 1 Dec 2004 07:48:25 -0000 @@ -182,7 +182,6 @@ ndirent.de_StartCluster = 0; ndirent.de_FileSize = 0; ndirent.de_dev = pdep->de_dev; - ndirent.de_devvp = pdep->de_devvp; ndirent.de_pmp = pdep->de_pmp; ndirent.de_flag = DE_ACCESS | DE_CREATE | DE_UPDATE; getnanotime(&ts); @@ -1356,7 +1355,6 @@ ndirent.de_StartCluster = newcluster; ndirent.de_FileSize = 0; ndirent.de_dev = pdep->de_dev; - ndirent.de_devvp = pdep->de_devvp; error = createde(&ndirent, pdep, &dep, cnp); if (error) goto bad; @@ -1747,7 +1745,7 @@ int error; if (ap->a_bop != NULL) - *ap->a_bop = &dep->de_devvp->v_bufobj; + *ap->a_bop = &dep->de_pmp->pm_devvp->v_bufobj; if (ap->a_bnp == NULL) return (0); if (ap->a_runp) { -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence.