Page MenuHomeFreeBSD

D35906.id108496.diff
No OneTemporary

D35906.id108496.diff

Index: sys/amd64/vmm/vmm.c
===================================================================
--- sys/amd64/vmm/vmm.c
+++ sys/amd64/vmm/vmm.c
@@ -1038,7 +1038,7 @@
mm = &vm->mem_maps[i];
if (gpa >= mm->gpa && gpa < mm->gpa + mm->len) {
count = vm_fault_quick_hold_pages(&vm->vmspace->vm_map,
- trunc_page(gpa), PAGE_SIZE, reqprot, &m, 1);
+ trunc_page(gpa), PAGE_SIZE, reqprot, &m);
break;
}
}
Index: sys/compat/linuxkpi/common/src/linux_page.c
===================================================================
--- sys/compat/linuxkpi/common/src/linux_page.c
+++ sys/compat/linuxkpi/common/src/linux_page.c
@@ -199,7 +199,7 @@
prot = write ? (VM_PROT_READ | VM_PROT_WRITE) : VM_PROT_READ;
len = ptoa((vm_offset_t)nr_pages);
- count = vm_fault_quick_hold_pages(map, start, len, prot, pages, nr_pages);
+ count = vm_fault_quick_hold_pages(map, start, len, prot, pages);
return (count == -1 ? -EFAULT : nr_pages);
}
Index: sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c
===================================================================
--- sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c
+++ sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c
@@ -463,7 +463,7 @@
actual_pages = vm_fault_quick_hold_pages(&p->p_vmspace->vm_map,
(vm_offset_t)buf, count,
- (type == PAGELIST_READ ? VM_PROT_WRITE : 0 ) | VM_PROT_READ, pages, num_pages);
+ (type == PAGELIST_READ ? VM_PROT_WRITE : 0 ) | VM_PROT_READ, pages);
if (actual_pages != num_pages) {
vm_page_unhold_pages(pages, actual_pages);
Index: sys/dev/cxgbe/tom/t4_cpl_io.c
===================================================================
--- sys/dev/cxgbe/tom/t4_cpl_io.c
+++ sys/dev/cxgbe/tom/t4_cpl_io.c
@@ -2140,7 +2140,7 @@
__func__, (uintmax_t)start, mlen));
npages = vm_fault_quick_hold_pages(map, start, mlen,
- VM_PROT_WRITE, pgs, nitems(pgs));
+ VM_PROT_WRITE, pgs);
if (npages < 0)
break;
Index: sys/dev/cxgbe/tom/t4_ddp.c
===================================================================
--- sys/dev/cxgbe/tom/t4_ddp.c
+++ sys/dev/cxgbe/tom/t4_ddp.c
@@ -1647,7 +1647,7 @@
ps->pages = (vm_page_t *)(ps + 1);
ps->vm_timestamp = map->timestamp;
ps->npages = vm_fault_quick_hold_pages(map, start, end - start,
- VM_PROT_WRITE, ps->pages, n);
+ VM_PROT_WRITE, ps->pages);
DDP_LOCK(toep);
if (ps->npages < 0) {
Index: sys/i386/i386/copyout.c
===================================================================
--- sys/i386/i386/copyout.c
+++ sys/i386/i386/copyout.c
@@ -104,8 +104,7 @@
MPASS(plen <= nitems(m));
error = 0;
i = vm_fault_quick_hold_pages(&curproc->p_vmspace->vm_map, uva, len,
- (write ? VM_PROT_WRITE : VM_PROT_READ) | VM_PROT_QUICK_NOFAULT,
- m, nitems(m));
+ (write ? VM_PROT_WRITE : VM_PROT_READ) | VM_PROT_QUICK_NOFAULT, m);
if (i != plen)
return (EFAULT);
sched_pin();
Index: sys/kern/kern_physio.c
===================================================================
--- sys/kern/kern_physio.c
+++ sys/kern/kern_physio.c
@@ -157,7 +157,7 @@
if ((npages = vm_fault_quick_hold_pages(
&curproc->p_vmspace->vm_map,
(vm_offset_t)base, bp->bio_length,
- prot, pages, maxpages)) < 0) {
+ prot, pages)) < 0) {
error = EFAULT;
goto doerror;
}
Index: sys/kern/sys_pipe.c
===================================================================
--- sys/kern/sys_pipe.c
+++ sys/kern/sys_pipe.c
@@ -912,7 +912,7 @@
PIPE_UNLOCK(wpipe);
i = vm_fault_quick_hold_pages(&curproc->p_vmspace->vm_map,
(vm_offset_t)uio->uio_iov->iov_base, size, VM_PROT_READ,
- wpipe->pipe_pages.ms, PIPENPAGES);
+ wpipe->pipe_pages.ms);
PIPE_LOCK(wpipe);
if (i < 0) {
wpipe->pipe_state &= ~PIPE_DIRECTW;
Index: sys/kern/vfs_aio.c
===================================================================
--- sys/kern/vfs_aio.c
+++ sys/kern/vfs_aio.c
@@ -1319,8 +1319,7 @@
if (opcode == LIO_READ || opcode == LIO_READV)
prot |= VM_PROT_WRITE; /* Less backwards than it looks */
npages = vm_fault_quick_hold_pages(&curproc->p_vmspace->vm_map,
- (vm_offset_t)buf, bp->bio_length, prot, pages,
- atop(maxphys) + 1);
+ (vm_offset_t)buf, bp->bio_length, prot, pages);
if (npages < 0) {
if (pbuf != NULL)
uma_zfree(pbuf_zone, pbuf);
Index: sys/kern/vfs_bio.c
===================================================================
--- sys/kern/vfs_bio.c
+++ sys/kern/vfs_bio.c
@@ -5043,7 +5043,7 @@
if (bp->b_iocmd == BIO_READ)
prot |= VM_PROT_WRITE; /* Less backwards than it looks */
pidx = vm_fault_quick_hold_pages(&curproc->p_vmspace->vm_map,
- (vm_offset_t)uaddr, len, prot, bp->b_pages, PBUF_PAGES);
+ (vm_offset_t)uaddr, len, prot, bp->b_pages);
if (pidx < 0)
return (-1);
bp->b_bufsize = len;
Index: sys/kern/vfs_vnops.c
===================================================================
--- sys/kern/vfs_vnops.c
+++ sys/kern/vfs_vnops.c
@@ -1400,7 +1400,7 @@
* page. +2 accounts for such a situation.
*/
cnt = vm_fault_quick_hold_pages(&td->td_proc->p_vmspace->vm_map,
- addr, len, prot, ma, io_hold_cnt + 2);
+ addr, len, prot, ma);
if (cnt == -1) {
error = EFAULT;
break;
Index: sys/net/bpf_zerocopy.c
===================================================================
--- sys/net/bpf_zerocopy.c
+++ sys/net/bpf_zerocopy.c
@@ -161,7 +161,7 @@
vm_page_t pp;
if (vm_fault_quick_hold_pages(map, uaddr, PAGE_SIZE, VM_PROT_READ |
- VM_PROT_WRITE, &pp, 1) < 0)
+ VM_PROT_WRITE, &pp) < 0)
return (NULL);
sf = sf_buf_alloc(pp, SFB_NOWAIT);
if (sf == NULL) {
Index: sys/netinet/tcp_usrreq.c
===================================================================
--- sys/netinet/tcp_usrreq.c
+++ sys/netinet/tcp_usrreq.c
@@ -2636,8 +2636,7 @@
vm_page_t ma[nheld];
if (vm_fault_quick_hold_pages(
&curproc->p_vmspace->vm_map, (vm_offset_t)sbp,
- outsbsz, VM_PROT_READ | VM_PROT_WRITE, ma,
- nheld) < 0) {
+ outsbsz, VM_PROT_READ | VM_PROT_WRITE, ma) < 0) {
error = EFAULT;
break;
}
Index: sys/vm/vm_extern.h
===================================================================
--- sys/vm/vm_extern.h
+++ sys/vm/vm_extern.h
@@ -94,7 +94,7 @@
int vm_fault_disable_pagefaults(void);
void vm_fault_enable_pagefaults(int save);
int vm_fault_quick_hold_pages(vm_map_t map, vm_offset_t addr, vm_size_t len,
- vm_prot_t prot, vm_page_t *ma, int max_count);
+ vm_prot_t prot, vm_page_t *ma);
int vm_fault_trap(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type,
int fault_flags, int *signo, int *ucode);
int vm_forkproc(struct thread *, struct proc *, struct thread *,
Index: sys/vm/vm_fault.c
===================================================================
--- sys/vm/vm_fault.c
+++ sys/vm/vm_fault.c
@@ -1889,7 +1889,7 @@
*/
int
vm_fault_quick_hold_pages(vm_map_t map, vm_offset_t addr, vm_size_t len,
- vm_prot_t prot, vm_page_t *ma, int max_count)
+ vm_prot_t prot, vm_page_t *ma)
{
vm_offset_t end, va;
vm_page_t *mp;
@@ -1904,8 +1904,6 @@
if (!vm_map_range_valid(map, addr, end))
return (-1);
- if (atop(end - addr) > max_count)
- panic("vm_fault_quick_hold_pages: count > max_count");
count = atop(end - addr);
/*

File Metadata

Mime Type
text/plain
Expires
Sat, Apr 4, 5:29 AM (38 m, 36 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
30801474
Default Alt Text
D35906.id108496.diff (7 KB)

Event Timeline