diff options
| author | Poul-Henning Kamp <phk@FreeBSD.org> | 2004-11-09 13:43:20 +0000 |
|---|---|---|
| committer | Poul-Henning Kamp <phk@FreeBSD.org> | 2004-11-09 13:43:20 +0000 |
| commit | d20b2f76cc1d1a78ee75aa6955fe52a771379190 (patch) | |
| tree | 87c5a11c3762da87a839838007cb2e8eb692dde9 /sys/vm | |
| parent | 6a33b3c60bcd7df7f78ce527ca91e5605f1c0981 (diff) | |
Notes
Diffstat (limited to 'sys/vm')
| -rw-r--r-- | sys/vm/vm_pager.h | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/sys/vm/vm_pager.h b/sys/vm/vm_pager.h index 6b30f8036b84f..7581692727c80 100644 --- a/sys/vm/vm_pager.h +++ b/sys/vm/vm_pager.h @@ -48,14 +48,22 @@ TAILQ_HEAD(pagerlst, vm_object); struct bio; +typedef void pgo_init_t(void); +typedef vm_object_t pgo_alloc_t(void *, vm_ooffset_t, vm_prot_t, vm_ooffset_t); +typedef void pgo_dealloc_t(vm_object_t); +typedef int pgo_getpages_t(vm_object_t, vm_page_t *, int, int); +typedef void pgo_putpages_t(vm_object_t, vm_page_t *, int, int, int *); +typedef boolean_t pgo_haspage_t(vm_object_t, vm_pindex_t, int *, int *); +typedef void pgo_pageunswapped_t(vm_page_t); + struct pagerops { - void (*pgo_init)(void); /* Initialize pager. */ - vm_object_t (*pgo_alloc)(void *, vm_ooffset_t, vm_prot_t, vm_ooffset_t); /* Allocate pager. */ - void (*pgo_dealloc)(vm_object_t); /* Disassociate. */ - int (*pgo_getpages)(vm_object_t, vm_page_t *, int, int); /* Get (read) page. */ - void (*pgo_putpages)(vm_object_t, vm_page_t *, int, int, int *); /* Put (write) page. */ - boolean_t (*pgo_haspage)(vm_object_t, vm_pindex_t, int *, int *); /* Does pager have page? */ - void (*pgo_pageunswapped)(vm_page_t); + pgo_init_t *pgo_init; /* Initialize pager. */ + pgo_alloc_t *pgo_alloc; /* Allocate pager. */ + pgo_dealloc_t *pgo_dealloc; /* Disassociate. */ + pgo_getpages_t *pgo_getpages; /* Get (read) page. */ + pgo_putpages_t *pgo_putpages; /* Put (write) page. */ + pgo_haspage_t *pgo_haspage; /* Does pager have page? */ + pgo_pageunswapped_t *pgo_pageunswapped; }; extern struct pagerops defaultpagerops; |
