aboutsummaryrefslogtreecommitdiff
path: root/sys/nfsclient/nfs_bio.c
diff options
context:
space:
mode:
authorAttilio Rao <attilio@FreeBSD.org>2007-06-04 21:45:18 +0000
committerAttilio Rao <attilio@FreeBSD.org>2007-06-04 21:45:18 +0000
commitb4b70819619b531a5683c678974a7b18e8b09937 (patch)
tree9c942b3b9815da8b9fd9ecd5f775fdc264e8e2dc /sys/nfsclient/nfs_bio.c
parent6759608248f30eb575170c0700cc99140e0bdc35 (diff)
downloadsrc-b4b70819619b531a5683c678974a7b18e8b09937.tar.gz
src-b4b70819619b531a5683c678974a7b18e8b09937.zip
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)
Notes
Notes: svn path=/head/; revision=170292
Diffstat (limited to 'sys/nfsclient/nfs_bio.c')
-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 e42a35653116..147f1905e222 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;