mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-17 05:43:59 +00:00
Relax one of the conditions for mapping a page on the fast path.
Reviewed by: kib X-MFC with: r270011 Sponsored by: EMC / Isilon Storage Division
This commit is contained in:
parent
090234abd3
commit
b9ce8cc2d7
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=270387
|
@ -306,8 +306,9 @@ RetryFault:;
|
|||
(fs.first_object->flags & OBJ_MIGHTBEDIRTY) == 0)
|
||||
goto fast_failed;
|
||||
m = vm_page_lookup(fs.first_object, fs.first_pindex);
|
||||
if (m == NULL || vm_page_busied(m) ||
|
||||
m->valid != VM_PAGE_BITS_ALL)
|
||||
/* A busy page can be mapped for read|execute access. */
|
||||
if (m == NULL || ((prot & VM_PROT_WRITE) != 0 &&
|
||||
vm_page_busied(m)) || m->valid != VM_PAGE_BITS_ALL)
|
||||
goto fast_failed;
|
||||
result = pmap_enter(fs.map->pmap, vaddr, m, prot,
|
||||
fault_type | PMAP_ENTER_NOSLEEP | (wired ? PMAP_ENTER_WIRED :
|
||||
|
|
Loading…
Reference in a new issue