Author: kib
Date: Wed May 21 08:19:04 2014
New Revision: 266491
URL: http://svnweb.freebsd.org/changeset/base/266491

Log:
  Remove redundand loop.  The inner goto restarts the whole page
  handling in the situation identical to the loop condition.
  
  Sponsored by: The FreeBSD Foundation
  MFC after:    3 days

Modified:
  head/sys/vm/vm_fault.c

Modified: head/sys/vm/vm_fault.c
==============================================================================
--- head/sys/vm/vm_fault.c      Wed May 21 08:09:44 2014        (r266490)
+++ head/sys/vm/vm_fault.c      Wed May 21 08:19:04 2014        (r266491)
@@ -1351,18 +1351,16 @@ again:
                        /*
                         * Allocate a page in the destination object.
                         */
-                       do {
-                               dst_m = vm_page_alloc(dst_object,
-                                   (src_object == dst_object ? src_pindex :
-                                   0) + dst_pindex, VM_ALLOC_NORMAL);
-                               if (dst_m == NULL) {
-                                       VM_OBJECT_WUNLOCK(dst_object);
-                                       VM_OBJECT_RUNLOCK(object);
-                                       VM_WAIT;
-                                       VM_OBJECT_WLOCK(dst_object);
-                                       goto again;
-                               }
-                       } while (dst_m == NULL);
+                       dst_m = vm_page_alloc(dst_object, (src_object ==
+                           dst_object ? src_pindex : 0) + dst_pindex,
+                           VM_ALLOC_NORMAL);
+                       if (dst_m == NULL) {
+                               VM_OBJECT_WUNLOCK(dst_object);
+                               VM_OBJECT_RUNLOCK(object);
+                               VM_WAIT;
+                               VM_OBJECT_WLOCK(dst_object);
+                               goto again;
+                       }
                        pmap_copy_page(src_m, dst_m);
                        VM_OBJECT_RUNLOCK(object);
                        dst_m->valid = VM_PAGE_BITS_ALL;
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to