summaryrefslogtreecommitdiffstats
path: root/sys/nfsclient
diff options
context:
space:
mode:
authorattilio <attilio@FreeBSD.org>2007-06-04 21:45:18 +0000
committerattilio <attilio@FreeBSD.org>2007-06-04 21:45:18 +0000
commit9bd4fdf7ce811d83f0305cacc5990ec339df9f13 (patch)
tree9c942b3b9815da8b9fd9ecd5f775fdc264e8e2dc /sys/nfsclient
parente333d0ff0eb23a5f94f36fd95b4bbcfda3ccbc8f (diff)
downloadFreeBSD-src-9bd4fdf7ce811d83f0305cacc5990ec339df9f13.zip
FreeBSD-src-9bd4fdf7ce811d83f0305cacc5990ec339df9f13.tar.gz
Do proper "locking" for missing vmmeters part.
Now, we assume no more sched_lock protection for some of them and use the distribuited loads method for vmmeter (distribuited through CPUs). Reviewed by: alc, bde Approved by: jeff (mentor)
Diffstat (limited to 'sys/nfsclient')
-rw-r--r--sys/nfsclient/nfs_bio.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/nfsclient/nfs_bio.c b/sys/nfsclient/nfs_bio.c
index e42a356..147f190 100644
--- a/sys/nfsclient/nfs_bio.c
+++ b/sys/nfsclient/nfs_bio.c
@@ -159,8 +159,8 @@ nfs_getpages(struct vop_getpages_args *ap)
kva = (vm_offset_t) bp->b_data;
pmap_qenter(kva, pages, npages);
- cnt.v_vnodein++;
- cnt.v_vnodepgsin += npages;
+ PCPU_INC(cnt.v_vnodein);
+ PCPU_ADD(cnt.v_vnodepgsin, npages);
iov.iov_base = (caddr_t) kva;
iov.iov_len = count;
@@ -323,8 +323,8 @@ nfs_putpages(struct vop_putpages_args *ap)
kva = (vm_offset_t) bp->b_data;
pmap_qenter(kva, pages, npages);
- cnt.v_vnodeout++;
- cnt.v_vnodepgsout += count;
+ PCPU_INC(cnt.v_vnodeout);
+ PCPU_ADD(cnt.v_vnodepgsout, count);
iov.iov_base = (caddr_t) kva;
iov.iov_len = count;
OpenPOWER on IntegriCloud