kernel - Move a vm_object_pip_wakeup() call
authorMatthew Dillon <dillon@apollo.backplane.com>
Wed, 19 Oct 2011 15:22:26 +0000 (08:22 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Wed, 19 Oct 2011 15:22:26 +0000 (08:22 -0700)
* Move a vm_object_pip_wakeup() call from before the related vm_page has
  been woken up to afterwords.  Since the vm_page was already busied I
  don't think this fixes anything in particular, but it is more correct.

sys/kern/vfs_bio.c

index 7bea33d..2d39a1b 100644 (file)
@@ -4115,10 +4115,10 @@ vfs_unbusy_pages(struct buf *bp)
                                        bp->b_xio.xio_pages, bp->b_xio.xio_npages);
                        }
                        vm_page_busy_wait(m, FALSE, "bpdpgw");
-                       vm_object_pip_wakeup(obj);
                        vm_page_flag_clear(m, PG_ZERO);
                        vm_page_io_finish(m);
                        vm_page_wakeup(m);
+                       vm_object_pip_wakeup(obj);
                }
                bp->b_flags &= ~B_HASBOGUS;
                vm_object_drop(obj);