aboutsummaryrefslogtreecommitdiff
path: root/sys/gnu
diff options
context:
space:
mode:
authorMike Smith <msmith@FreeBSD.org>1998-03-01 00:51:43 +0000
committerMike Smith <msmith@FreeBSD.org>1998-03-01 00:51:43 +0000
commitb1f04c95e1efebbcfd987c6f45e378048eb2848a (patch)
treefd9a93dc9af486bf080f2cdf68dc72c0fb04ee10 /sys/gnu
parent098fd386f650e72bed28297833f80da390e8496a (diff)
Notes
Diffstat (limited to 'sys/gnu')
-rw-r--r--sys/gnu/ext2fs/ext2_vnops.c33
-rw-r--r--sys/gnu/fs/ext2fs/ext2_vnops.c33
2 files changed, 66 insertions, 0 deletions
diff --git a/sys/gnu/ext2fs/ext2_vnops.c b/sys/gnu/ext2fs/ext2_vnops.c
index 91a89c903885b..bff0a8ce8c7f4 100644
--- a/sys/gnu/ext2fs/ext2_vnops.c
+++ b/sys/gnu/ext2fs/ext2_vnops.c
@@ -63,6 +63,7 @@
#include <vm/vm.h>
#include <vm/vm_extern.h>
#include <vm/vm_zone.h>
+#include <vm/vnode_pager.h>
#include <sys/signalvar.h>
#include <ufs/ufs/dir.h>
@@ -88,6 +89,8 @@ static int ext2_rmdir __P((struct vop_rmdir_args *));
static int ext2_create __P((struct vop_create_args *));
static int ext2_mknod __P((struct vop_mknod_args *));
static int ext2_symlink __P((struct vop_symlink_args *));
+static int ext2_getpages __P((struct vop_getpages_args *));
+static int ext2_putpages __P((struct vop_putpages_args *));
/* Global vfs data structures for ufs. */
vop_t **ext2_vnodeop_p;
@@ -109,6 +112,8 @@ static struct vnodeopv_entry_desc ext2_vnodeop_entries[] = {
{ &vop_create_desc, (vop_t *) ext2_create },
{ &vop_mknod_desc, (vop_t *) ext2_mknod },
{ &vop_symlink_desc, (vop_t *) ext2_symlink },
+ { &vop_getpages_desc, (vop_t *) ext2_getpages },
+ { &vop_putpages_desc, (vop_t *) ext2_putpages },
{ NULL, NULL }
};
static struct vnodeopv_desc ext2fs_vnodeop_opv_desc =
@@ -1199,3 +1204,31 @@ bad:
vput(tvp);
return (error);
}
+
+/*
+ * get page routine
+ *
+ * XXX By default, wimp out... note that a_offset is ignored (and always
+ * XXX has been).
+ */
+int
+ext2_getpages(ap)
+ struct vop_getpages_args *ap;
+{
+ return vnode_pager_generic_getpages(ap->a_vp, ap->a_m, ap->a_count,
+ ap->a_reqpage);
+}
+
+/*
+ * put page routine
+ *
+ * XXX By default, wimp out... note that a_offset is ignored (and always
+ * XXX has been).
+ */
+int
+ext2_putpages(ap)
+ struct vop_putpages_args *ap;
+{
+ return vnode_pager_generic_putpages(ap->a_vp, ap->a_m, ap->a_count,
+ ap->a_sync, ap->a_rtvals);
+}
diff --git a/sys/gnu/fs/ext2fs/ext2_vnops.c b/sys/gnu/fs/ext2fs/ext2_vnops.c
index 91a89c903885b..bff0a8ce8c7f4 100644
--- a/sys/gnu/fs/ext2fs/ext2_vnops.c
+++ b/sys/gnu/fs/ext2fs/ext2_vnops.c
@@ -63,6 +63,7 @@
#include <vm/vm.h>
#include <vm/vm_extern.h>
#include <vm/vm_zone.h>
+#include <vm/vnode_pager.h>
#include <sys/signalvar.h>
#include <ufs/ufs/dir.h>
@@ -88,6 +89,8 @@ static int ext2_rmdir __P((struct vop_rmdir_args *));
static int ext2_create __P((struct vop_create_args *));
static int ext2_mknod __P((struct vop_mknod_args *));
static int ext2_symlink __P((struct vop_symlink_args *));
+static int ext2_getpages __P((struct vop_getpages_args *));
+static int ext2_putpages __P((struct vop_putpages_args *));
/* Global vfs data structures for ufs. */
vop_t **ext2_vnodeop_p;
@@ -109,6 +112,8 @@ static struct vnodeopv_entry_desc ext2_vnodeop_entries[] = {
{ &vop_create_desc, (vop_t *) ext2_create },
{ &vop_mknod_desc, (vop_t *) ext2_mknod },
{ &vop_symlink_desc, (vop_t *) ext2_symlink },
+ { &vop_getpages_desc, (vop_t *) ext2_getpages },
+ { &vop_putpages_desc, (vop_t *) ext2_putpages },
{ NULL, NULL }
};
static struct vnodeopv_desc ext2fs_vnodeop_opv_desc =
@@ -1199,3 +1204,31 @@ bad:
vput(tvp);
return (error);
}
+
+/*
+ * get page routine
+ *
+ * XXX By default, wimp out... note that a_offset is ignored (and always
+ * XXX has been).
+ */
+int
+ext2_getpages(ap)
+ struct vop_getpages_args *ap;
+{
+ return vnode_pager_generic_getpages(ap->a_vp, ap->a_m, ap->a_count,
+ ap->a_reqpage);
+}
+
+/*
+ * put page routine
+ *
+ * XXX By default, wimp out... note that a_offset is ignored (and always
+ * XXX has been).
+ */
+int
+ext2_putpages(ap)
+ struct vop_putpages_args *ap;
+{
+ return vnode_pager_generic_putpages(ap->a_vp, ap->a_m, ap->a_count,
+ ap->a_sync, ap->a_rtvals);
+}