summaryrefslogtreecommitdiff
path: root/sys/msdosfs
diff options
context:
space:
mode:
Diffstat (limited to 'sys/msdosfs')
-rw-r--r--sys/msdosfs/denode.h6
-rw-r--r--sys/msdosfs/msdosfs_denode.c15
-rw-r--r--sys/msdosfs/msdosfs_vnops.c5
3 files changed, 21 insertions, 5 deletions
diff --git a/sys/msdosfs/denode.h b/sys/msdosfs/denode.h
index 665c74d2fd3..db945e35bcd 100644
--- a/sys/msdosfs/denode.h
+++ b/sys/msdosfs/denode.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: denode.h,v 1.10 2001/06/23 02:15:24 csapuntz Exp $ */
+/* $OpenBSD: denode.h,v 1.11 2001/12/10 04:45:31 art Exp $ */
/* $NetBSD: denode.h,v 1.24 1997/10/17 11:23:39 ws Exp $ */
/*-
@@ -91,6 +91,8 @@
* things.
*/
+#include <miscfs/genfs/genfs.h>
+
/*
* Internal pseudo-offset for (nonexistent) directory entry for the root
* dir in the root dir
@@ -135,6 +137,7 @@ struct fatcache {
* contained within a vnode.
*/
struct denode {
+ struct genfs_node de_gnode;
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 */
@@ -311,4 +314,5 @@ void reinsert __P((struct denode *));
int removede __P((struct denode *, struct denode *));
int uniqdosname __P((struct denode *, struct componentname *, u_char *));
int findwin95 __P((struct denode *));
+int msdosfs_gop_alloc __P((struct vnode *, off_t, off_t, int, struct ucred *));
#endif /* _KERNEL */
diff --git a/sys/msdosfs/msdosfs_denode.c b/sys/msdosfs/msdosfs_denode.c
index 601ac17df6b..e01491efc85 100644
--- a/sys/msdosfs/msdosfs_denode.c
+++ b/sys/msdosfs/msdosfs_denode.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: msdosfs_denode.c,v 1.21 2001/12/10 02:19:34 art Exp $ */
+/* $OpenBSD: msdosfs_denode.c,v 1.22 2001/12/10 04:45:31 art Exp $ */
/* $NetBSD: msdosfs_denode.c,v 1.23 1997/10/17 11:23:58 ws Exp $ */
/*-
@@ -74,6 +74,11 @@ u_long dehash; /* size of hash table - 1 */
extern int prtactive;
+struct genfs_ops msdosfs_genfsops = {
+ genfs_size,
+ msdosfs_gop_alloc,
+};
+
static struct denode *msdosfs_hashget __P((dev_t, u_long, u_long));
static int msdosfs_hashins __P((struct denode *));
static void msdosfs_hashrem __P((struct denode *));
@@ -332,6 +337,7 @@ retry:
}
} else
nvp->v_type = VREG;
+ genfs_node_init(nvp, &msdosfs_genfsops);
VREF(ldep->de_devvp);
*depp = ldep;
nvp->v_size = ldep->de_FileSize;
@@ -687,3 +693,10 @@ out:
vrecycle(vp, (struct simplelock *)0, p);
return (error);
}
+
+int
+msdosfs_gop_alloc(struct vnode *vp, off_t off, off_t len, int flags,
+ struct ucred *cred)
+{
+ return 0;
+}
diff --git a/sys/msdosfs/msdosfs_vnops.c b/sys/msdosfs/msdosfs_vnops.c
index 91b3196ced1..8d08da9e229 100644
--- a/sys/msdosfs/msdosfs_vnops.c
+++ b/sys/msdosfs/msdosfs_vnops.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: msdosfs_vnops.c,v 1.33 2001/12/10 02:19:34 art Exp $ */
+/* $OpenBSD: msdosfs_vnops.c,v 1.34 2001/12/10 04:45:31 art Exp $ */
/* $NetBSD: msdosfs_vnops.c,v 1.63 1997/10/17 11:24:19 ws Exp $ */
/*-
@@ -1878,8 +1878,7 @@ struct vnodeopv_entry_desc msdosfs_vnodeop_entries[] = {
{ &vop_bwrite_desc, vop_generic_bwrite }, /* bwrite */
{ &vop_getpages_desc, genfs_getpages },
{ &vop_putpages_desc, genfs_putpages },
- { &vop_size_desc, genfs_size },
- { &vop_mmap_desc, genfs_mmap },
+ { &vop_mmap_desc, vop_generic_mmap },
{ NULL, NULL }
};
struct vnodeopv_desc msdosfs_vnodeop_opv_desc =