diff options
author | dg <dg@FreeBSD.org> | 1994-10-18 14:59:20 +0000 |
---|---|---|
committer | dg <dg@FreeBSD.org> | 1994-10-18 14:59:20 +0000 |
commit | 2d52a86c44bc18e64b58029f29efce43b416f504 (patch) | |
tree | a17148e7feb973d0f4d32bea7fb2e8e0fa28757a /sys | |
parent | 5ea26df221e830e7cdcc3687bd4c6616975df1ff (diff) | |
download | FreeBSD-src-2d52a86c44bc18e64b58029f29efce43b416f504.zip FreeBSD-src-2d52a86c44bc18e64b58029f29efce43b416f504.tar.gz |
Fix the remaining vmmeter counters. They all now work correctly.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/sys/vmmeter.h | 7 | ||||
-rw-r--r-- | sys/vm/vm_page.c | 3 | ||||
-rw-r--r-- | sys/vm/vm_pageout.c | 7 |
3 files changed, 11 insertions, 6 deletions
diff --git a/sys/sys/vmmeter.h b/sys/sys/vmmeter.h index 2795097..d70c6b3 100644 --- a/sys/sys/vmmeter.h +++ b/sys/sys/vmmeter.h @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)vmmeter.h 8.1 (Berkeley) 6/2/93 - * $Id: vmmeter.h,v 1.4 1994/08/21 04:42:14 paul Exp $ + * $Id: vmmeter.h,v 1.5 1994/10/15 13:33:02 davidg Exp $ */ #ifndef _SYS_VMMETER_H_ @@ -66,10 +66,11 @@ struct vmmeter { unsigned v_vnodepgsout; /* vnode pager pages paged out */ unsigned v_intrans; /* intransit blocking page faults */ unsigned v_reactivated; /* number of pages reactivated from free list */ - unsigned v_rev; /* revolutions of the hand */ - unsigned v_scan; /* scans in page out daemon */ + unsigned v_pdwakeups; /* number of times daemon has awaken from sleep */ + unsigned v_pdpages; /* number of pages analyzed by daemon */ unsigned v_dfree; /* pages freed by daemon */ unsigned v_pfree; /* pages freed by exiting processes */ + unsigned v_tfree; /* total pages freed */ unsigned v_zfod; /* pages zero filled on demand */ unsigned v_nzfod; /* number of zfod's created */ /* diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index b800dae..bbd6b73 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)vm_page.c 7.4 (Berkeley) 5/7/91 - * $Id: vm_page.c,v 1.9 1994/09/27 20:49:02 davidg Exp $ + * $Id: vm_page.c,v 1.10 1994/10/09 01:52:13 phk Exp $ */ /* @@ -726,6 +726,7 @@ void vm_page_free(mem) splx(s); } wakeup((caddr_t) mem); + cnt.v_tfree++; } diff --git a/sys/vm/vm_pageout.c b/sys/vm/vm_pageout.c index 31fba30..69dc2ec 100644 --- a/sys/vm/vm_pageout.c +++ b/sys/vm/vm_pageout.c @@ -65,7 +65,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $Id: vm_pageout.c,v 1.17 1994/10/13 21:01:39 davidg Exp $ + * $Id: vm_pageout.c,v 1.18 1994/10/15 13:33:08 davidg Exp $ */ /* @@ -361,6 +361,7 @@ vm_pageout_object_deactivate_pages(map, object, count) p = object->memq.tqh_first; while (p && (rcount-- > 0)) { next = p->listq.tqe_next; + cnt.v_pdpages++; vm_page_lock_queues(); /* * if a page is active, not wired and is in the processes pmap, @@ -614,6 +615,7 @@ rescan1: (cnt.v_free_count < desired_free) ) { vm_page_t next; + cnt.v_pdpages++; next = m->pageq.tqe_next; if( (m->flags & PG_INACTIVE) == 0) { @@ -727,6 +729,7 @@ rescan1: m = vm_page_queue_active.tqh_first; while (m && maxscan-- && (page_shortage > 0)) { + cnt.v_pdpages++; next = m->pageq.tqe_next; /* @@ -836,6 +839,7 @@ vm_pageout() */ tsleep((caddr_t) &vm_pages_needed, PVM, "psleep", 0); + cnt.v_pdwakeups++; vm_pager_sync(); /* @@ -848,7 +852,6 @@ vm_pageout() vm_pager_sync(); if( force_wakeup) wakeup( (caddr_t) &cnt.v_free_count); - cnt.v_scan++; wakeup((caddr_t) kmem_map); } } |