summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_page.h
diff options
context:
space:
mode:
authoralc <alc@FreeBSD.org>1999-10-30 07:37:14 +0000
committeralc <alc@FreeBSD.org>1999-10-30 07:37:14 +0000
commita301513e8024c35e825bcf07cf42e7f82eeb2226 (patch)
treeb8d896d556afc51871db14a4580f03ad3c2461ef /sys/vm/vm_page.h
parent5e906c1f10a710b3e76fa761ee5ee3e3686f62ea (diff)
downloadFreeBSD-src-a301513e8024c35e825bcf07cf42e7f82eeb2226.zip
FreeBSD-src-a301513e8024c35e825bcf07cf42e7f82eeb2226.tar.gz
The core of this patch is to vm/vm_page.h. The effects are two-fold: (1) to
eliminate an extra (useless) level of indirection in half of the page queue accesses and (2) to use a single name for each queue throughout, instead of, e.g., "vm_page_queue_active" in some places and "vm_page_queues[PQ_ACTIVE]" in others. Reviewed by: dillon
Diffstat (limited to 'sys/vm/vm_page.h')
-rw-r--r--sys/vm/vm_page.h25
1 files changed, 9 insertions, 16 deletions
diff --git a/sys/vm/vm_page.h b/sys/vm/vm_page.h
index 2d7e740..0cfc618 100644
--- a/sys/vm/vm_page.h
+++ b/sys/vm/vm_page.h
@@ -210,11 +210,13 @@ struct vm_page {
#define PQ_COUNT (2 + 2*PQ_L2_SIZE)
#endif
-extern struct vpgqueues {
- struct pglist *pl;
+struct vpgqueues {
+ struct pglist pl;
int *cnt;
int lcnt;
-} vm_page_queues[PQ_COUNT];
+};
+
+extern struct vpgqueues vm_page_queues[PQ_COUNT];
#endif
@@ -272,15 +274,6 @@ extern struct vpgqueues {
*
*/
-#if !defined(KLD_MODULE)
-
-extern struct pglist vm_page_queue_free[PQ_L2_SIZE];/* memory free queue */
-extern struct pglist vm_page_queue_active; /* active memory queue */
-extern struct pglist vm_page_queue_inactive; /* inactive memory queue */
-extern struct pglist vm_page_queue_cache[PQ_L2_SIZE];/* cache memory queue */
-
-#endif
-
extern int vm_page_zero_count;
extern vm_page_t vm_page_array; /* First resident page in table */
@@ -595,17 +588,17 @@ vm_page_list_find(int basequeue, int index, boolean_t prefer_zero)
#if PQ_L2_SIZE > 1
if (prefer_zero) {
- m = TAILQ_LAST(vm_page_queues[basequeue+index].pl, pglist);
+ m = TAILQ_LAST(&vm_page_queues[basequeue+index].pl, pglist);
} else {
- m = TAILQ_FIRST(vm_page_queues[basequeue+index].pl);
+ m = TAILQ_FIRST(&vm_page_queues[basequeue+index].pl);
}
if (m == NULL)
m = _vm_page_list_find(basequeue, index);
#else
if (prefer_zero) {
- m = TAILQ_LAST(vm_page_queues[basequeue].pl, pglist);
+ m = TAILQ_LAST(&vm_page_queues[basequeue].pl, pglist);
} else {
- m = TAILQ_FIRST(vm_page_queues[basequeue].pl);
+ m = TAILQ_FIRST(&vm_page_queues[basequeue].pl);
}
#endif
return(m);
OpenPOWER on IntegriCloud