summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_object.c
diff options
context:
space:
mode:
authordg <dg@FreeBSD.org>1995-07-16 13:28:37 +0000
committerdg <dg@FreeBSD.org>1995-07-16 13:28:37 +0000
commit1c7ffd3f4cb317766a80d091f6b49e404e2fbbeb (patch)
tree98fdf6464b2df94c941c0328925cae0173c858ed /sys/vm/vm_object.c
parentb70af09ef3794cc0f483c9ae9a064ee34cb7dc7a (diff)
downloadFreeBSD-src-1c7ffd3f4cb317766a80d091f6b49e404e2fbbeb.zip
FreeBSD-src-1c7ffd3f4cb317766a80d091f6b49e404e2fbbeb.tar.gz
1) Merged swpager structure into vm_object.
2) Changed swap_pager internal interfaces to cope w/#1. 3) Eliminated object->copy as we no longer have copy objects. 4) Minor stylistic changes.
Diffstat (limited to 'sys/vm/vm_object.c')
-rw-r--r--sys/vm/vm_object.c21
1 files changed, 13 insertions, 8 deletions
diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c
index 834f28c..13c7b22 100644
--- a/sys/vm/vm_object.c
+++ b/sys/vm/vm_object.c
@@ -61,7 +61,7 @@
* any improvements or extensions that they make and grant Carnegie the
* rights to redistribute these changes.
*
- * $Id: vm_object.c,v 1.48 1995/06/11 19:31:53 rgrimes Exp $
+ * $Id: vm_object.c,v 1.49 1995/07/13 08:48:34 davidg Exp $
*/
/*
@@ -136,7 +136,6 @@ _vm_object_allocate(type, size, object)
object->flags = 0;
object->paging_in_progress = 0;
object->resident_page_count = 0;
- object->pg_data = NULL;
object->handle = NULL;
object->paging_offset = 0;
object->backing_object = NULL;
@@ -978,7 +977,14 @@ vm_object_collapse(object)
* "object" and convert "object" type to OBJT_SWAP.
*/
object->type = OBJT_SWAP;
- object->pg_data = backing_object->pg_data;
+ object->un_pager.swp.swp_nblocks =
+ backing_object->un_pager.swp.swp_nblocks;
+ object->un_pager.swp.swp_allocsize =
+ backing_object->un_pager.swp.swp_allocsize;
+ object->un_pager.swp.swp_blocks =
+ backing_object->un_pager.swp.swp_blocks;
+ object->un_pager.swp.swp_poip = /* XXX */
+ backing_object->un_pager.swp.swp_poip;
object->paging_offset = backing_object->paging_offset + backing_offset;
TAILQ_INSERT_TAIL(&swap_pager_un_object_list, object, pager_object_list);
@@ -988,7 +994,6 @@ vm_object_collapse(object)
* actually necessary.
*/
backing_object->type = OBJT_DEFAULT;
- backing_object->pg_data = NULL;
TAILQ_REMOVE(&swap_pager_un_object_list, backing_object, pager_object_list);
/*
* free unnecessary blocks
@@ -1389,8 +1394,8 @@ vm_object_check() {
object->size);
}
if (!vm_object_in_map(object)) {
- printf("vmochk: internal obj is not in a map: ref: %d, size: %d, pg_data: 0x%x, backing_object: 0x%x\n",
- object->ref_count, object->size, object->pg_data, object->backing_object);
+ printf("vmochk: internal obj is not in a map: ref: %d, size: %d: 0x%x, backing_object: 0x%x\n",
+ object->ref_count, object->size, object->backing_object);
}
}
}
@@ -1414,8 +1419,8 @@ vm_object_print(object, full)
iprintf("Object 0x%x: size=0x%x, res=%d, ref=%d, ",
(int) object, (int) object->size,
object->resident_page_count, object->ref_count);
- printf("pg_data=0x%x+0x%x, backing_object=(0x%x)+0x%x\n",
- (int) object->pg_data, (int) object->paging_offset,
+ printf("offset=0x%x, backing_object=(0x%x)+0x%x\n",
+ (int) object->paging_offset,
(int) object->backing_object, (int) object->backing_object_offset);
printf("cache: next=%p, prev=%p\n",
object->cached_list.tqe_next, object->cached_list.tqe_prev);
OpenPOWER on IntegriCloud