The branch main has been updated by dougm:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=2d6185cf87e815d4951a9ddcf5c535ebd07a8815

commit 2d6185cf87e815d4951a9ddcf5c535ebd07a8815
Author:     Doug Moore <do...@freebsd.org>
AuthorDate: 2025-07-06 20:46:00 +0000
Commit:     Doug Moore <do...@freebsd.org>
CommitDate: 2025-07-06 20:46:00 +0000

    vm_fault: drop never-true busy_sleep test
    
    vm_fault_busy_sleep() tests to see whether the page fs->m matches the
    value looked up at fs->pindex. At that point, a lock is held on
    fs->object, and it has been held since before vm_fault_object() also
    looked up fs->pindex in fs->object and stored the result in fs->m. So
    the values must match, and the test is not necessary. Drop it.
    
    Reviewed by:    alc, markj
    Differential Revision:  https://reviews.freebsd.org/D51179
---
 sys/vm/vm_fault.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c
index 21584abacfa3..3e57e8d4f1d0 100644
--- a/sys/vm/vm_fault.c
+++ b/sys/vm/vm_fault.c
@@ -1441,8 +1441,7 @@ vm_fault_busy_sleep(struct faultstate *fs)
        }
        vm_object_pip_wakeup(fs->object);
        vm_fault_unlock_map(fs);
-       if (fs->m != vm_page_lookup(fs->object, fs->pindex) ||
-           !vm_page_busy_sleep(fs->m, "vmpfw", 0))
+       if (!vm_page_busy_sleep(fs->m, "vmpfw", 0))
                VM_OBJECT_UNLOCK(fs->object);
        VM_CNT_INC(v_intrans);
        vm_object_deallocate(fs->first_object);

Reply via email to