vm_pager.h (9b4fcf851a73554063d4a2de9a4f10cd23a0a4f6) vm_pager.h (286790a7dd8c070e725e542e4cb0aa7d1f6bb5d0)
1/*-
2 * Copyright (c) 1990 University of Utah.
3 * Copyright (c) 1991, 1993
4 * The Regents of the University of California. All rights reserved.
5 *
6 * This code is derived from software contributed to Berkeley by
7 * the Systems Programming Group of the University of Utah Computer
8 * Science Department.

--- 178 unchanged lines hidden (view full) ---

187vm_pager_page_unswapped(vm_page_t m)
188{
189
190 VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED);
191 if (pagertab[m->object->type]->pgo_pageunswapped)
192 (*pagertab[m->object->type]->pgo_pageunswapped)(m);
193}
194
1/*-
2 * Copyright (c) 1990 University of Utah.
3 * Copyright (c) 1991, 1993
4 * The Regents of the University of California. All rights reserved.
5 *
6 * This code is derived from software contributed to Berkeley by
7 * the Systems Programming Group of the University of Utah Computer
8 * Science Department.

--- 178 unchanged lines hidden (view full) ---

187vm_pager_page_unswapped(vm_page_t m)
188{
189
190 VM_OBJECT_LOCK_ASSERT(m->object, MA_OWNED);
191 if (pagertab[m->object->type]->pgo_pageunswapped)
192 (*pagertab[m->object->type]->pgo_pageunswapped)(m);
193}
194
195struct cdev_pager_ops {
196 int (*cdev_pg_fault)(vm_object_t vm_obj, vm_ooffset_t offset,
197 int prot, vm_page_t *mres);
198 int (*cdev_pg_ctor)(void *handle, vm_ooffset_t size, vm_prot_t prot,
199 vm_ooffset_t foff, struct ucred *cred, u_short *color);
200 void (*cdev_pg_dtor)(void *handle);
201};
202
203vm_object_t cdev_pager_allocate(void *handle, enum obj_type tp,
204 struct cdev_pager_ops *ops, vm_ooffset_t size, vm_prot_t prot,
205 vm_ooffset_t foff, struct ucred *cred);
206vm_object_t cdev_pager_lookup(void *handle);
207void cdev_pager_free_page(vm_object_t object, vm_page_t m);
208
195#endif /* _KERNEL */
196#endif /* _VM_PAGER_ */
209#endif /* _KERNEL */
210#endif /* _VM_PAGER_ */