Changeset View
Changeset View
Standalone View
Standalone View
head/sys/kern/vfs_bio.c
Show First 20 Lines • Show All 2,740 Lines • ▼ Show 20 Lines | if (bp->b_npages < desiredpages) { | ||||
* here could interfere with paging I/O, no | * here could interfere with paging I/O, no | ||||
* matter which process we are. | * matter which process we are. | ||||
* | * | ||||
* Only exclusive busy can be tested here. | * Only exclusive busy can be tested here. | ||||
* Blocking on shared busy might lead to | * Blocking on shared busy might lead to | ||||
* deadlocks once allocbuf() is called after | * deadlocks once allocbuf() is called after | ||||
* pages are vfs_busy_pages(). | * pages are vfs_busy_pages(). | ||||
*/ | */ | ||||
vm_page_grab_pages(obj, | (void)vm_page_grab_pages(obj, | ||||
OFF_TO_IDX(bp->b_offset) + bp->b_npages, | OFF_TO_IDX(bp->b_offset) + bp->b_npages, | ||||
VM_ALLOC_SYSTEM | VM_ALLOC_IGN_SBUSY | | VM_ALLOC_SYSTEM | VM_ALLOC_IGN_SBUSY | | ||||
VM_ALLOC_NOBUSY | VM_ALLOC_WIRED, | VM_ALLOC_NOBUSY | VM_ALLOC_WIRED, | ||||
&bp->b_pages[bp->b_npages], desiredpages - bp->b_npages); | &bp->b_pages[bp->b_npages], desiredpages - bp->b_npages); | ||||
bp->b_npages = desiredpages; | bp->b_npages = desiredpages; | ||||
} | } | ||||
/* | /* | ||||
▲ Show 20 Lines • Show All 2,271 Lines • Show Last 20 Lines |