summaryrefslogtreecommitdiffstats
path: root/sys/vm/vnode_pager.c
diff options
context:
space:
mode:
authormsmith <msmith@FreeBSD.org>1998-03-09 08:58:53 +0000
committermsmith <msmith@FreeBSD.org>1998-03-09 08:58:53 +0000
commitd1a1b4e9a98b1bdf8f3da216a2d7a3a32c754afb (patch)
treec5a863d92c17696b0be18236615e704701de8919 /sys/vm/vnode_pager.c
parentaa24d4726b1504397b0054f8574795ead71e9be6 (diff)
downloadFreeBSD-src-d1a1b4e9a98b1bdf8f3da216a2d7a3a32c754afb.zip
FreeBSD-src-d1a1b4e9a98b1bdf8f3da216a2d7a3a32c754afb.tar.gz
Complement diagnostic messages about missing per-FS VOP page operations,
but don't make their absence fatal. Submitted by: terry
Diffstat (limited to 'sys/vm/vnode_pager.c')
-rw-r--r--sys/vm/vnode_pager.c19
1 files changed, 14 insertions, 5 deletions
diff --git a/sys/vm/vnode_pager.c b/sys/vm/vnode_pager.c
index bedffdc..720db22 100644
--- a/sys/vm/vnode_pager.c
+++ b/sys/vm/vnode_pager.c
@@ -38,7 +38,7 @@
* SUCH DAMAGE.
*
* from: @(#)vnode_pager.c 7.5 (Berkeley) 4/20/91
- * $Id: vnode_pager.c,v 1.88 1998/03/01 04:18:31 dyson Exp $
+ * $Id: vnode_pager.c,v 1.89 1998/03/07 21:37:31 dyson Exp $
*/
/*
@@ -531,15 +531,18 @@ vnode_pager_getpages(object, m, count, reqpage)
{
int rtval;
struct vnode *vp;
+ int bytes = count * PAGE_SIZE;
vp = object->handle;
/*
* XXX temporary diagnostic message to help track stale FS code,
* Returning EOPNOTSUPP from here may make things unhappy.
*/
- rtval = VOP_GETPAGES(vp, m, count*PAGE_SIZE, reqpage, 0);
- if (rtval == EOPNOTSUPP)
- printf("vnode_pager: *** WARNING *** stale FS code in system.\n");
+ rtval = VOP_GETPAGES(vp, m, bytes, reqpage, 0);
+ if (rtval == EOPNOTSUPP) {
+ printf("vnode_pager: *** WARNING *** stale FS getpages\n");
+ rtval = vnode_pager_generic_getpages( vp, m, bytes, reqpage);
+ }
return rtval;
}
@@ -814,9 +817,15 @@ vnode_pager_putpages(object, m, count, sync, rtvals)
{
int rtval;
struct vnode *vp;
+ int bytes = count * PAGE_SIZE;
vp = object->handle;
- return VOP_PUTPAGES(vp, m, count*PAGE_SIZE, sync, rtvals, 0);
+ rtval = VOP_PUTPAGES(vp, m, bytes, sync, rtvals, 0);
+ if (rtval == EOPNOTSUPP) {
+ printf("vnode_pager: *** WARNING *** stale FS putpages\n");
+ rtval = vnode_pager_generic_putpages( vp, m, bytes, sync, rtvals);
+ }
+ return rtval;
}
OpenPOWER on IntegriCloud