svn commit: r238359 - head/sys/vm
Attilio Rao
attilio at FreeBSD.org
Wed Jul 11 01:05:00 UTC 2012
Author: attilio
Date: Wed Jul 11 01:04:59 2012
New Revision: 238359
URL: http://svn.freebsd.org/changeset/base/238359
Log:
Document the object type movements, related to swp_pager_copy(),
in vm_object_collapse() and vm_object_split().
In collabouration with: alc
MFC after: 3 days
Modified:
head/sys/vm/vm_object.c
Modified: head/sys/vm/vm_object.c
==============================================================================
--- head/sys/vm/vm_object.c Tue Jul 10 23:11:52 2012 (r238358)
+++ head/sys/vm/vm_object.c Wed Jul 11 01:04:59 2012 (r238359)
@@ -1381,6 +1381,12 @@ retry:
/*
* Transfer any cached pages from orig_object to new_object.
+ * If swap_pager_copy() found swapped out pages within the
+ * specified range of orig_object, then it changed
+ * new_object's type to OBJT_SWAP when it transferred those
+ * pages to new_object. Otherwise, new_object's type
+ * should still be OBJT_DEFAULT and orig_object should not
+ * contain any cached pages within the specified range.
*/
if (__predict_false(orig_object->cache != NULL))
vm_page_cache_transfer(orig_object, offidxstart,
@@ -1719,6 +1725,9 @@ vm_object_collapse(vm_object_t object)
* swap_pager_copy() can sleep, in which case
* the backing_object's and object's locks are
* released and reacquired.
+ * Since swap_pager_copy() is being asked to
+ * destroy the source, it will change the
+ * backing_object's type to OBJT_DEFAULT.
*/
swap_pager_copy(
backing_object,
More information about the svn-src-all
mailing list