diff options
| author | Konstantin Belousov <kib@FreeBSD.org> | 2012-08-14 11:45:47 +0000 |
|---|---|---|
| committer | Konstantin Belousov <kib@FreeBSD.org> | 2012-08-14 11:45:47 +0000 |
| commit | b6c00483e94c0640a6ba4ed49a7399c9ef5d431b (patch) | |
| tree | c57999c31279d4b34edfa4c9044a68251f72d983 /sys/nfsclient | |
| parent | 6e8fcacda452f3f892a86d81bc52bd4673e6eb9e (diff) | |
Notes
Diffstat (limited to 'sys/nfsclient')
| -rw-r--r-- | sys/nfsclient/nfs_bio.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/sys/nfsclient/nfs_bio.c b/sys/nfsclient/nfs_bio.c index ae3533688032..0003974bd68d 100644 --- a/sys/nfsclient/nfs_bio.c +++ b/sys/nfsclient/nfs_bio.c @@ -212,14 +212,18 @@ nfs_getpages(struct vop_getpages_args *ap) ("nfs_getpages: page %p is dirty", m)); } else { /* - * Read operation was short. If no error occured - * we may have hit a zero-fill section. We simply - * leave valid set to 0. + * Read operation was short. If no error + * occured we may have hit a zero-fill + * section. We leave valid set to 0, and page + * is freed by vm_page_readahead_finish() if + * its index is not equal to requested, or + * page is zeroed and set valid by + * vm_pager_get_pages() for requested page. */ ; } if (i != ap->a_reqpage) - vm_page_readahead_finish(m, error); + vm_page_readahead_finish(m); } VM_OBJECT_UNLOCK(object); return (0); |
