diff options
| author | Jeff Roberson <jeff@FreeBSD.org> | 2019-12-22 06:56:44 +0000 |
|---|---|---|
| committer | Jeff Roberson <jeff@FreeBSD.org> | 2019-12-22 06:56:44 +0000 |
| commit | 3cf3b4e6419d14ed25c0b67b84763b3be937c8b5 (patch) | |
| tree | 2e580af663c9ad79e336380280fddd5e5ad0219b /sys/dev/netmap | |
| parent | ffac39deae0a2e50aa8d1197d15b8d0bb7e778fd (diff) | |
Notes
Diffstat (limited to 'sys/dev/netmap')
| -rw-r--r-- | sys/dev/netmap/netmap_freebsd.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/sys/dev/netmap/netmap_freebsd.c b/sys/dev/netmap/netmap_freebsd.c index 2580144ab7fe4..e37815dc88d52 100644 --- a/sys/dev/netmap/netmap_freebsd.c +++ b/sys/dev/netmap/netmap_freebsd.c @@ -1022,12 +1022,10 @@ netmap_dev_pager_fault(vm_object_t object, vm_ooffset_t offset, vm_paddr_t paddr; vm_page_t page; vm_memattr_t memattr; - vm_pindex_t pidx; nm_prdis("object %p offset %jd prot %d mres %p", object, (intmax_t)offset, prot, mres); memattr = object->memattr; - pidx = OFF_TO_IDX(offset); paddr = netmap_mem_ofstophys(na->nm_mem, offset); if (paddr == 0) return VM_PAGER_FAIL; @@ -1052,9 +1050,8 @@ netmap_dev_pager_fault(vm_object_t object, vm_ooffset_t offset, VM_OBJECT_WUNLOCK(object); page = vm_page_getfake(paddr, memattr); VM_OBJECT_WLOCK(object); - vm_page_free(*mres); + vm_page_replace(page, object, (*mres)->pindex, *mres); *mres = page; - vm_page_insert(page, object, pidx); } vm_page_valid(page); return (VM_PAGER_OK); |
