diff options
| author | Alan Cox <alc@FreeBSD.org> | 2009-06-18 05:56:24 +0000 |
|---|---|---|
| committer | Alan Cox <alc@FreeBSD.org> | 2009-06-18 05:56:24 +0000 |
| commit | 57a7e7326106961ee00a8d87e10e4cd0d42ad216 (patch) | |
| tree | a4b9bdbde4715a42ca46219ba9aff29e55744737 /sys/nfsclient | |
| parent | 76b30a0cd4aa339554153f95f3a2c6307569bbfc (diff) | |
Notes
Diffstat (limited to 'sys/nfsclient')
| -rw-r--r-- | sys/nfsclient/nfs_bio.c | 31 |
1 files changed, 13 insertions, 18 deletions
diff --git a/sys/nfsclient/nfs_bio.c b/sys/nfsclient/nfs_bio.c index 4b6096a00030..22e2a7905195 100644 --- a/sys/nfsclient/nfs_bio.c +++ b/sys/nfsclient/nfs_bio.c @@ -101,7 +101,7 @@ nfs_getpages(struct vop_getpages_args *ap) if ((object = vp->v_object) == NULL) { nfs_printf("nfs_getpages: called with non-merged cache vnode??\n"); - return VM_PAGER_ERROR; + return (VM_PAGER_ERROR); } if (nfs_directio_enable && !nfs_directio_allow_mmap) { @@ -109,7 +109,7 @@ nfs_getpages(struct vop_getpages_args *ap) if ((np->n_flag & NNONCACHE) && (vp->v_type == VREG)) { mtx_unlock(&np->n_mtx); nfs_printf("nfs_getpages: called on non-cacheable vnode??\n"); - return VM_PAGER_ERROR; + return (VM_PAGER_ERROR); } else mtx_unlock(&np->n_mtx); } @@ -130,23 +130,18 @@ nfs_getpages(struct vop_getpages_args *ap) * allow the pager to zero-out the blanks. Partially valid pages * can only occur at the file EOF. */ - - { - vm_page_t m = pages[ap->a_reqpage]; - - VM_OBJECT_LOCK(object); - if (m->valid != 0) { - vm_page_lock_queues(); - for (i = 0; i < npages; ++i) { - if (i != ap->a_reqpage) - vm_page_free(pages[i]); - } - vm_page_unlock_queues(); - VM_OBJECT_UNLOCK(object); - return(0); + VM_OBJECT_LOCK(object); + if (pages[ap->a_reqpage]->valid != 0) { + vm_page_lock_queues(); + for (i = 0; i < npages; ++i) { + if (i != ap->a_reqpage) + vm_page_free(pages[i]); } + vm_page_unlock_queues(); VM_OBJECT_UNLOCK(object); + return (0); } + VM_OBJECT_UNLOCK(object); /* * We use only the kva address for the buffer, but this is extremely @@ -184,7 +179,7 @@ nfs_getpages(struct vop_getpages_args *ap) } vm_page_unlock_queues(); VM_OBJECT_UNLOCK(object); - return VM_PAGER_ERROR; + return (VM_PAGER_ERROR); } /* @@ -250,7 +245,7 @@ nfs_getpages(struct vop_getpages_args *ap) } vm_page_unlock_queues(); VM_OBJECT_UNLOCK(object); - return 0; + return (0); } /* |
