The documentation of vm_page_insert says that the object must be locked.
Moreover, the unlock call is here but no call was present.
---
 vm/vm_page.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/vm/vm_page.c b/vm/vm_page.c
index 707be4bb..50916b74 100644
--- a/vm/vm_page.c
+++ b/vm/vm_page.c
@@ -1034,6 +1034,7 @@ vm_page_seg_balance_page(struct vm_page_seg *seg,
     simple_unlock(&seg->lock);
     simple_unlock(&vm_page_queue_free_lock);
 
+    vm_object_lock(object);
     vm_page_insert(dest, object, offset);
     vm_object_unlock(object);
 
-- 
2.39.1


Reply via email to