svn commit: r215867 - stable/8/sys/vm
Konstantin Belousov
kib at FreeBSD.org
Fri Nov 26 15:33:11 UTC 2010
Author: kib
Date: Fri Nov 26 15:33:09 2010
New Revision: 215867
URL: http://svn.freebsd.org/changeset/base/215867
Log:
MFC r215469:
Only increment object generation count when inserting the page into
object page list.
Modified:
stable/8/sys/vm/vm_object.c
stable/8/sys/vm/vm_page.c
Directory Properties:
stable/8/sys/ (props changed)
stable/8/sys/amd64/include/xen/ (props changed)
stable/8/sys/cddl/contrib/opensolaris/ (props changed)
stable/8/sys/contrib/dev/acpica/ (props changed)
stable/8/sys/contrib/pf/ (props changed)
Modified: stable/8/sys/vm/vm_object.c
==============================================================================
--- stable/8/sys/vm/vm_object.c Fri Nov 26 15:30:02 2010 (r215866)
+++ stable/8/sys/vm/vm_object.c Fri Nov 26 15:33:09 2010 (r215867)
@@ -604,7 +604,6 @@ doterm:
VM_OBJECT_LOCK(temp);
LIST_REMOVE(object, shadow_list);
temp->shadow_count--;
- temp->generation++;
VM_OBJECT_UNLOCK(temp);
object->backing_object = NULL;
}
@@ -1156,7 +1155,6 @@ vm_object_shadow(
VM_OBJECT_LOCK(source);
LIST_INSERT_HEAD(&source->shadow_head, result, shadow_list);
source->shadow_count++;
- source->generation++;
#if VM_NRESERVLEVEL > 0
result->flags |= source->flags & OBJ_COLORED;
result->pg_color = (source->pg_color + OFF_TO_IDX(*offset)) &
@@ -1224,7 +1222,6 @@ vm_object_split(vm_map_entry_t entry)
LIST_INSERT_HEAD(&source->shadow_head,
new_object, shadow_list);
source->shadow_count++;
- source->generation++;
vm_object_reference_locked(source); /* for new_object */
vm_object_clear_flag(source, OBJ_ONEMAPPING);
VM_OBJECT_UNLOCK(source);
@@ -1616,7 +1613,6 @@ vm_object_collapse(vm_object_t object)
*/
LIST_REMOVE(object, shadow_list);
backing_object->shadow_count--;
- backing_object->generation++;
if (backing_object->backing_object) {
VM_OBJECT_LOCK(backing_object->backing_object);
LIST_REMOVE(backing_object, shadow_list);
@@ -1626,7 +1622,6 @@ vm_object_collapse(vm_object_t object)
/*
* The shadow_count has not changed.
*/
- backing_object->backing_object->generation++;
VM_OBJECT_UNLOCK(backing_object->backing_object);
}
object->backing_object = backing_object->backing_object;
@@ -1668,7 +1663,6 @@ vm_object_collapse(vm_object_t object)
*/
LIST_REMOVE(object, shadow_list);
backing_object->shadow_count--;
- backing_object->generation++;
new_backing_object = backing_object->backing_object;
if ((object->backing_object = new_backing_object) != NULL) {
@@ -1679,7 +1673,6 @@ vm_object_collapse(vm_object_t object)
shadow_list
);
new_backing_object->shadow_count++;
- new_backing_object->generation++;
vm_object_reference_locked(new_backing_object);
VM_OBJECT_UNLOCK(new_backing_object);
object->backing_object_offset +=
Modified: stable/8/sys/vm/vm_page.c
==============================================================================
--- stable/8/sys/vm/vm_page.c Fri Nov 26 15:30:02 2010 (r215866)
+++ stable/8/sys/vm/vm_page.c Fri Nov 26 15:33:09 2010 (r215867)
@@ -751,7 +751,6 @@ vm_page_remove(vm_page_t m)
* And show that the object has one fewer resident page.
*/
object->resident_page_count--;
- object->generation++;
/*
* The vnode may now be recycled.
*/
@@ -1750,7 +1749,6 @@ vm_page_cache(vm_page_t m)
object->root = root;
TAILQ_REMOVE(&object->memq, m, listq);
object->resident_page_count--;
- object->generation++;
/*
* Restore the default memory attribute to the page.
@@ -2102,7 +2100,6 @@ vm_page_set_invalid(vm_page_t m, int bas
pmap_remove_all(m);
m->valid &= ~bits;
m->dirty &= ~bits;
- m->object->generation++;
}
/*
More information about the svn-src-stable-8
mailing list