git: 0f9b73ffa50d - main - vm_fault: reset iterator after vm_fault_populate()
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 24 Apr 2025 22:23:44 UTC
The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=0f9b73ffa50d359aedf8afdbb76e2795dbb9906d commit 0f9b73ffa50d359aedf8afdbb76e2795dbb9906d Author: Doug Moore <dougm@FreeBSD.org> AuthorDate: 2025-04-24 22:18:12 +0000 Commit: Doug Moore <dougm@FreeBSD.org> CommitDate: 2025-04-24 22:23:26 +0000 vm_fault: reset iterator after vm_fault_populate() Add a call to pctrie_iter_reset after vm_fault_allocate returns to vm_fault_allocate, since the iterator may be corrupted. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D49957 --- sys/vm/vm_fault.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 5d21ad58f780..c096bfaffe73 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -1258,6 +1258,7 @@ vm_fault_allocate(struct faultstate *fs, struct pctrie_iter *pages) vm_fault_unlock_and_deallocate(fs); return (res); case FAULT_CONTINUE: + pctrie_iter_reset(pages); /* * Pager's populate() method * returned VM_PAGER_BAD.