Module Name: src Committed By: rmind Date: Thu May 19 03:44:19 UTC 2011
Modified Files: src/sys/uvm: uvm_bio.c Log Message: ubc_release: use voff_t for offsets, rather than int. Constify. Reviewed by matt@. To generate a diff of this commit: cvs rdiff -u -r1.71 -r1.72 src/sys/uvm/uvm_bio.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/uvm/uvm_bio.c diff -u src/sys/uvm/uvm_bio.c:1.71 src/sys/uvm/uvm_bio.c:1.72 --- src/sys/uvm/uvm_bio.c:1.71 Tue Nov 30 10:55:25 2010 +++ src/sys/uvm/uvm_bio.c Thu May 19 03:44:19 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: uvm_bio.c,v 1.71 2010/11/30 10:55:25 hannken Exp $ */ +/* $NetBSD: uvm_bio.c,v 1.72 2011/05/19 03:44:19 rmind Exp $ */ /* * Copyright (c) 1998 Chuck Silvers. @@ -34,7 +34,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: uvm_bio.c,v 1.71 2010/11/30 10:55:25 hannken Exp $"); +__KERNEL_RCSID(0, "$NetBSD: uvm_bio.c,v 1.72 2011/05/19 03:44:19 rmind Exp $"); #include "opt_uvmhist.h" #include "opt_ubc.h" @@ -630,15 +630,12 @@ KASSERT(uobj != NULL); if (umap->flags & UMAP_PAGES_LOCKED) { - int slot_offset = umap->writeoff; - int endoff = umap->writeoff + umap->writelen; - int zerolen = round_page(endoff) - endoff; - int npages = (int)(round_page(umap->writeoff + umap->writelen) - - trunc_page(umap->writeoff)) >> PAGE_SHIFT; + const voff_t slot_offset = umap->writeoff; + const voff_t endoff = umap->writeoff + umap->writelen; + const voff_t zerolen = round_page(endoff) - endoff; + const u_int npages = (round_page(endoff) - + trunc_page(slot_offset)) >> PAGE_SHIFT; struct vm_page *pgs[npages]; - paddr_t pa; - int i; - bool rv; KASSERT((umap->flags & UMAP_MAPPING_CACHED) == 0); if (zerolen) { @@ -647,7 +644,10 @@ umap->flags &= ~UMAP_PAGES_LOCKED; mutex_enter(&uobj->vmobjlock); mutex_enter(&uvm_pageqlock); - for (i = 0; i < npages; i++) { + for (u_int i = 0; i < npages; i++) { + paddr_t pa; + bool rv; + rv = pmap_extract(pmap_kernel(), umapva + slot_offset + (i << PAGE_SHIFT), &pa); KASSERT(rv); @@ -707,8 +707,8 @@ ubc_uiomove(struct uvm_object *uobj, struct uio *uio, vsize_t todo, int advice, int flags) { - voff_t off; const bool overwrite = (flags & UBC_FAULTBUSY) != 0; + voff_t off; int error; KASSERT(todo <= uio->uio_resid); @@ -745,7 +745,6 @@ return error; } - /* * uvm_vnp_zerorange: set a range of bytes in a file to zero. */