summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authordg <dg@FreeBSD.org>1995-10-07 19:02:56 +0000
committerdg <dg@FreeBSD.org>1995-10-07 19:02:56 +0000
commitbf6129211c1a1ff5fbcd16d2b72f52804fd85498 (patch)
tree25fe1e7d143794d5fda8ce24efd92b1497ba0779 /sys
parent6265a3bb38f222a8b8d7a444d36e9d6d56ef2126 (diff)
downloadFreeBSD-src-bf6129211c1a1ff5fbcd16d2b72f52804fd85498.zip
FreeBSD-src-bf6129211c1a1ff5fbcd16d2b72f52804fd85498.tar.gz
Fix argument passing to the "freeer" routine. Added some prototypes. (bde)
Moved extern declaration of swap_pager_full into swap_pager.h and out of the various files that reference it. (davidg) Submitted by: bde & davidg
Diffstat (limited to 'sys')
-rw-r--r--sys/vm/swap_pager.h3
-rw-r--r--sys/vm/vm_fault.c4
-rw-r--r--sys/vm/vm_pageout.c23
-rw-r--r--sys/vm/vm_unix.c5
4 files changed, 20 insertions, 15 deletions
diff --git a/sys/vm/swap_pager.h b/sys/vm/swap_pager.h
index 14e2875..e8f0d5c 100644
--- a/sys/vm/swap_pager.h
+++ b/sys/vm/swap_pager.h
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* from: @(#)swap_pager.h 7.1 (Berkeley) 12/5/90
- * $Id: swap_pager.h,v 1.8 1995/07/16 13:28:35 davidg Exp $
+ * $Id: swap_pager.h,v 1.9 1995/08/16 16:14:25 bde Exp $
*/
/*
@@ -65,6 +65,7 @@ typedef struct swblock *sw_blk_t;
#ifdef KERNEL
extern struct pagerlst swap_pager_un_object_list;
+extern int swap_pager_full;
void swap_pager_init __P((void));
vm_object_t swap_pager_alloc __P((void *, vm_size_t, vm_prot_t, vm_offset_t));
diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c
index cd63be2..23e0961 100644
--- a/sys/vm/vm_fault.c
+++ b/sys/vm/vm_fault.c
@@ -66,7 +66,7 @@
* any improvements or extensions that they make and grant Carnegie the
* rights to redistribute these changes.
*
- * $Id: vm_fault.c,v 1.31 1995/09/14 13:42:52 dyson Exp $
+ * $Id: vm_fault.c,v 1.32 1995/09/24 19:47:58 dyson Exp $
*/
/*
@@ -87,13 +87,13 @@
#include <vm/vm_kern.h>
#include <vm/vm_pager.h>
#include <vm/vnode_pager.h>
+#include <vm/swap_pager.h>
int vm_fault_additional_pages __P((vm_page_t, int, int, vm_page_t *, int *));
#define VM_FAULT_READ_AHEAD 4
#define VM_FAULT_READ_BEHIND 3
#define VM_FAULT_READ (VM_FAULT_READ_AHEAD+VM_FAULT_READ_BEHIND+1)
-extern int swap_pager_full;
/*
* vm_fault:
diff --git a/sys/vm/vm_pageout.c b/sys/vm/vm_pageout.c
index 1683385..1199c56 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.55 1995/09/09 18:10:37 davidg Exp $
+ * $Id: vm_pageout.c,v 1.56 1995/10/06 09:42:11 phk Exp $
*/
/*
@@ -124,7 +124,6 @@ extern int npendingio;
int vm_pageout_req_swapout; /* XXX */
int vm_daemon_needed;
extern int nswiodone;
-extern int swap_pager_full;
extern int vm_swap_size;
extern int vfs_update_wakeup;
@@ -137,6 +136,12 @@ int vm_pageout_page_count = VM_PAGEOUT_PAGE_COUNT;
int vm_page_max_wired; /* XXX max # of wired pages system-wide */
+typedef int freeer_fcn_t __P((vm_map_t, vm_object_t, int, int));
+static void vm_pageout_map_deactivate_pages __P((vm_map_t, vm_map_entry_t,
+ int *, freeer_fcn_t *));
+static freeer_fcn_t vm_pageout_object_deactivate_pages;
+static void vm_req_vmdaemon __P((void));
+
/*
* vm_pageout_clean:
*
@@ -358,7 +363,7 @@ do_backward:
*
* The object and map must be locked.
*/
-int
+static int
vm_pageout_object_deactivate_pages(map, object, count, map_remove_only)
vm_map_t map;
vm_object_t object;
@@ -466,12 +471,12 @@ vm_pageout_object_deactivate_pages(map, object, count, map_remove_only)
* that is really hard to do.
*/
-void
+static void
vm_pageout_map_deactivate_pages(map, entry, count, freeer)
vm_map_t map;
vm_map_entry_t entry;
int *count;
- int (*freeer) (vm_map_t, vm_object_t, int);
+ freeer_fcn_t *freeer;
{
vm_map_t tmpm;
vm_map_entry_t tmpe;
@@ -487,25 +492,25 @@ vm_pageout_map_deactivate_pages(map, entry, count, freeer)
if (entry == 0) {
tmpe = map->header.next;
while (tmpe != &map->header && *count > 0) {
- vm_pageout_map_deactivate_pages(map, tmpe, count, freeer, 0);
+ vm_pageout_map_deactivate_pages(map, tmpe, count, freeer);
tmpe = tmpe->next;
};
} else if (entry->is_sub_map || entry->is_a_map) {
tmpm = entry->object.share_map;
tmpe = tmpm->header.next;
while (tmpe != &tmpm->header && *count > 0) {
- vm_pageout_map_deactivate_pages(tmpm, tmpe, count, freeer, 0);
+ vm_pageout_map_deactivate_pages(tmpm, tmpe, count, freeer);
tmpe = tmpe->next;
};
} else if ((obj = entry->object.vm_object) != 0) {
- *count -= (*freeer) (map, obj, *count);
+ *count -= (*freeer) (map, obj, *count, TRUE);
}
lock_read_done(&map->lock);
vm_map_deallocate(map);
return;
}
-void
+static void
vm_req_vmdaemon()
{
static int lastrun = 0;
diff --git a/sys/vm/vm_unix.c b/sys/vm/vm_unix.c
index 51f5061..a7c922d 100644
--- a/sys/vm/vm_unix.c
+++ b/sys/vm/vm_unix.c
@@ -38,7 +38,7 @@
* from: Utah $Hdr: vm_unix.c 1.1 89/11/07$
*
* @(#)vm_unix.c 8.1 (Berkeley) 6/11/93
- * $Id: vm_unix.c,v 1.4 1995/01/09 16:05:59 davidg Exp $
+ * $Id: vm_unix.c,v 1.5 1995/02/20 17:36:36 davidg Exp $
*/
/*
@@ -50,8 +50,7 @@
#include <sys/resourcevar.h>
#include <vm/vm.h>
-
-extern int swap_pager_full;
+#include <vm/swap_pager.h>
struct obreak_args {
char *nsiz;
OpenPOWER on IntegriCloud