diff options
author | Attilio Rao <attilio@FreeBSD.org> | 2007-06-04 21:45:18 +0000 |
---|---|---|
committer | Attilio Rao <attilio@FreeBSD.org> | 2007-06-04 21:45:18 +0000 |
commit | b4b70819619b531a5683c678974a7b18e8b09937 (patch) | |
tree | 9c942b3b9815da8b9fd9ecd5f775fdc264e8e2dc /sys/nfsclient | |
parent | 6759608248f30eb575170c0700cc99140e0bdc35 (diff) | |
download | src-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')
-rw-r--r-- | sys/nfsclient/nfs_bio.c | 8 |
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; |