From b1f04c95e1efebbcfd987c6f45e378048eb2848a Mon Sep 17 00:00:00 2001 From: Mike Smith Date: Sun, 1 Mar 1998 00:51:43 +0000 Subject: [PATCH] Add local stup putpages/getpages routines. Submitted by: Terry Lambert --- sys/gnu/ext2fs/ext2_vnops.c | 33 +++++++++++++++++++++++++++++++++ sys/gnu/fs/ext2fs/ext2_vnops.c | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+) diff --git a/sys/gnu/ext2fs/ext2_vnops.c b/sys/gnu/ext2fs/ext2_vnops.c index 91a89c90388..bff0a8ce8c7 100644 --- a/sys/gnu/ext2fs/ext2_vnops.c +++ b/sys/gnu/ext2fs/ext2_vnops.c @@ -63,6 +63,7 @@ #include #include #include +#include #include #include @@ -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 91a89c90388..bff0a8ce8c7 100644 --- a/sys/gnu/fs/ext2fs/ext2_vnops.c +++ b/sys/gnu/fs/ext2fs/ext2_vnops.c @@ -63,6 +63,7 @@ #include #include #include +#include #include #include @@ -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); +}