diff options
| author | Matthew Dillon <dillon@FreeBSD.org> | 1999-02-08 02:42:13 +0000 |
|---|---|---|
| committer | Matthew Dillon <dillon@FreeBSD.org> | 1999-02-08 02:42:13 +0000 |
| commit | dd2f9956e20ec47c98f5ba8822f2fe4eeb590bf3 (patch) | |
| tree | f2e8198f4669b4b0f9251f178e65135e9ec15843 /sys/powerpc | |
| parent | 2d7142ca1a0cbd5ed692a361385be2733670fffb (diff) | |
Notes
Diffstat (limited to 'sys/powerpc')
| -rw-r--r-- | sys/powerpc/aim/vm_machdep.c | 12 | ||||
| -rw-r--r-- | sys/powerpc/powerpc/vm_machdep.c | 12 |
2 files changed, 16 insertions, 8 deletions
diff --git a/sys/powerpc/aim/vm_machdep.c b/sys/powerpc/aim/vm_machdep.c index 9881c5fa1c11..658f730197d4 100644 --- a/sys/powerpc/aim/vm_machdep.c +++ b/sys/powerpc/aim/vm_machdep.c @@ -38,7 +38,7 @@ * * from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91 * Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$ - * $Id: vm_machdep.c,v 1.9 1999/02/08 00:37:35 dillon Exp $ + * $Id: vm_machdep.c,v 1.10 1999/02/08 00:47:32 dillon Exp $ */ /* * Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University. @@ -443,6 +443,10 @@ SYSCTL_INT(_machdep, OID_AUTO, cnt_prezero, CTLFLAG_RD, &cnt_prezero, 0, ""); * Implement the pre-zeroed page mechanism. * This routine is called from the idle loop. */ + +#define ZIDLE_LO(v) ((v) * 2 / 3) +#define ZIDLE_HI(v) ((v) * 4 / 5) + int vm_page_zero_idle() { @@ -460,9 +464,9 @@ vm_page_zero_idle() * pages because doing so may flush our L1 and L2 caches too much. */ - if (zero_state && vm_page_zero_count >= cnt.v_free_count / 3) + if (zero_state && vm_page_zero_count >= ZIDLE_LO(cnt.v_free_count)) return(0); - if (vm_page_zero_count >= cnt.v_free_count / 2) + if (vm_page_zero_count >= ZIDLE_HI(cnt.v_free_count)) return(0); #ifdef SMP @@ -491,7 +495,7 @@ vm_page_zero_idle() pageq); ++vm_page_zero_count; ++cnt_prezero; - if (vm_page_zero_count >= cnt.v_free_count / 2) + if (vm_page_zero_count >= ZIDLE_HI(cnt.v_free_count)) zero_state = 1; } free_rover = (free_rover + PQ_PRIME3) & PQ_L2_MASK; diff --git a/sys/powerpc/powerpc/vm_machdep.c b/sys/powerpc/powerpc/vm_machdep.c index 9881c5fa1c11..658f730197d4 100644 --- a/sys/powerpc/powerpc/vm_machdep.c +++ b/sys/powerpc/powerpc/vm_machdep.c @@ -38,7 +38,7 @@ * * from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91 * Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$ - * $Id: vm_machdep.c,v 1.9 1999/02/08 00:37:35 dillon Exp $ + * $Id: vm_machdep.c,v 1.10 1999/02/08 00:47:32 dillon Exp $ */ /* * Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University. @@ -443,6 +443,10 @@ SYSCTL_INT(_machdep, OID_AUTO, cnt_prezero, CTLFLAG_RD, &cnt_prezero, 0, ""); * Implement the pre-zeroed page mechanism. * This routine is called from the idle loop. */ + +#define ZIDLE_LO(v) ((v) * 2 / 3) +#define ZIDLE_HI(v) ((v) * 4 / 5) + int vm_page_zero_idle() { @@ -460,9 +464,9 @@ vm_page_zero_idle() * pages because doing so may flush our L1 and L2 caches too much. */ - if (zero_state && vm_page_zero_count >= cnt.v_free_count / 3) + if (zero_state && vm_page_zero_count >= ZIDLE_LO(cnt.v_free_count)) return(0); - if (vm_page_zero_count >= cnt.v_free_count / 2) + if (vm_page_zero_count >= ZIDLE_HI(cnt.v_free_count)) return(0); #ifdef SMP @@ -491,7 +495,7 @@ vm_page_zero_idle() pageq); ++vm_page_zero_count; ++cnt_prezero; - if (vm_page_zero_count >= cnt.v_free_count / 2) + if (vm_page_zero_count >= ZIDLE_HI(cnt.v_free_count)) zero_state = 1; } free_rover = (free_rover + PQ_PRIME3) & PQ_L2_MASK; |
