Changeset View
Changeset View
Standalone View
Standalone View
sys/vm/sg_pager.c
Show All 34 Lines | |||||
* a scatter/gather list of physical address ranges. | * a scatter/gather list of physical address ranges. | ||||
*/ | */ | ||||
#include <sys/param.h> | #include <sys/param.h> | ||||
#include <sys/lock.h> | #include <sys/lock.h> | ||||
#include <sys/mutex.h> | #include <sys/mutex.h> | ||||
#include <sys/rwlock.h> | #include <sys/rwlock.h> | ||||
#include <sys/sglist.h> | #include <sys/sglist.h> | ||||
#include <sys/user.h> | |||||
#include <sys/vmmeter.h> | #include <sys/vmmeter.h> | ||||
#include <vm/vm.h> | #include <vm/vm.h> | ||||
#include <vm/vm_param.h> | #include <vm/vm_param.h> | ||||
#include <vm/vm_object.h> | #include <vm/vm_object.h> | ||||
#include <vm/vm_page.h> | #include <vm/vm_page.h> | ||||
#include <vm/vm_pager.h> | #include <vm/vm_pager.h> | ||||
#include <vm/vm_phys.h> | #include <vm/vm_phys.h> | ||||
#include <vm/uma.h> | #include <vm/uma.h> | ||||
static vm_object_t sg_pager_alloc(void *, vm_ooffset_t, vm_prot_t, | static vm_object_t sg_pager_alloc(void *, vm_ooffset_t, vm_prot_t, | ||||
vm_ooffset_t, struct ucred *); | vm_ooffset_t, struct ucred *); | ||||
static void sg_pager_dealloc(vm_object_t); | static void sg_pager_dealloc(vm_object_t); | ||||
static int sg_pager_getpages(vm_object_t, vm_page_t *, int, int *, int *); | static int sg_pager_getpages(vm_object_t, vm_page_t *, int, int *, int *); | ||||
static void sg_pager_putpages(vm_object_t, vm_page_t *, int, | static void sg_pager_putpages(vm_object_t, vm_page_t *, int, | ||||
boolean_t, int *); | boolean_t, int *); | ||||
static boolean_t sg_pager_haspage(vm_object_t, vm_pindex_t, int *, | static boolean_t sg_pager_haspage(vm_object_t, vm_pindex_t, int *, | ||||
int *); | int *); | ||||
const struct pagerops sgpagerops = { | const struct pagerops sgpagerops = { | ||||
.pgo_kvme_type = KVME_TYPE_SG, | |||||
.pgo_alloc = sg_pager_alloc, | .pgo_alloc = sg_pager_alloc, | ||||
.pgo_dealloc = sg_pager_dealloc, | .pgo_dealloc = sg_pager_dealloc, | ||||
.pgo_getpages = sg_pager_getpages, | .pgo_getpages = sg_pager_getpages, | ||||
.pgo_putpages = sg_pager_putpages, | .pgo_putpages = sg_pager_putpages, | ||||
.pgo_haspage = sg_pager_haspage, | .pgo_haspage = sg_pager_haspage, | ||||
}; | }; | ||||
static vm_object_t | static vm_object_t | ||||
▲ Show 20 Lines • Show All 158 Lines • Show Last 20 Lines |