[TESTERS] msdosfs patch
Poul-Henning Kamp
phk at phk.freebsd.dk
Tue Nov 30 23:50:07 PST 2004
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 at 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.
More information about the freebsd-current
mailing list