voff_t
voff_t vsize;
voff_t vsize;
puffs_newinfo_setsize(pni, (voff_t)pn->pn_va.va_size);
puffs_newinfo_setsize(pni, (voff_t)pn_res->pn_va.va_size);
puffs_newinfo_setsize(pni, (voff_t)pn_res->pn_va.va_size);
puffs_newinfo_setsize(struct puffs_newinfo *pni, voff_t size)
pargs->pa_root_vsize = (voff_t)vsize;
void puffs_newinfo_setsize(struct puffs_newinfo *, voff_t);
voff_t *pni_size;
puffs_newinfo_setsize(pni, (voff_t)pn_res->pn_va.va_size);
pmap_direct_process(paddr_t pa, voff_t pgoff, size_t len,
pmap_direct_process(paddr_t pa, voff_t pgoff, size_t len,
pmap_direct_process(paddr_t pa, voff_t pgoff, size_t len,
struct vm_page *pmap_pagealloc(struct uvm_object *, voff_t);
pmap_pagealloc(struct uvm_object *obj, voff_t off)
voff_t off;
voff_t a_offset;
voff_t a_offlo;
voff_t a_offhi;
uvm_vnp_setwritesize(DETOV(dep), (voff_t)dep->de_FileSize);
uvm_vnp_setsize(DETOV(dep), (voff_t)dep->de_FileSize);
voff_t pvnr_size; /* IN */
voff_t pvfsr_size; /* IN */
voff_t offlo, offhi;
voff_t pa_root_vsize;
voff_t pvfsr_size; /* IN */
voff_t pvnr_size; /* IN */
voff_t vsize, dev_t rdev, struct vnode **vpp)
puffs_updatenode(struct puffs_node *pn, int flags, voff_t size)
voff_t vsize, dev_t rdev, bool may_exist, struct vnode **vpp)
voff_t pn_serversize;
voff_t, dev_t, struct vnode **);
void puffs_updatenode(struct puffs_node *, int, voff_t);
zerofill_lastpage(struct vnode *vp, voff_t off)
voff_t off_lo = trunc_page(origoff);
voff_t off_hi = round_page(uio->uio_offset);
voff_t a_offset;
voff_t a_offset;
const voff_t offset = ap->a_offset;
voff_t a_offlo;
voff_t a_offhi;
const voff_t offlo = ap->a_offlo;
const voff_t offhi = ap->a_offhi;
voff_t uppersz, lowersz;
voff_t a_offset;
voff_t a_offlo;
voff_t a_offhi;
voff_t a_offlo;
voff_t a_offhi;
voff_t a_offset;
voff_t
voff_t offset;
voff_t start, end;
voff_t off;
off = round_page((voff_t)lbn << vp->v_mount->mnt_fs_bshift);
voff_t offset,
voff_t offlo,
voff_t offhi,
voff_t a_offset;
voff_t a_offlo;
voff_t a_offhi;
voff_t a_offset;
const voff_t origvsize = vp->v_size;
voff_t a_offlo;
voff_t a_offhi;
voff_t a_offset;
voff_t a_offlo;
voff_t a_offhi;
voff_t a_offset;
voff_t a_offlo;
voff_t a_offhi;
voff_t a_offset;
voff_t a_offset;
uvm_vnp_setsize(vp, (voff_t)sz);
voff_t a_offset;
voff_t oldoff, origoff;
voff_t pgoff = trunc_page(off);
voff_t off;
uvm_pagealloc_strat(struct uvm_object *uobj, voff_t off, struct vm_anon *anon,
udv_attach(dev_t device, vm_prot_t accessprot, voff_t off, vsize_t size)
uvm_pagelookup(struct uvm_object *uobj, voff_t off)
uvm_loanuobjpages(struct uvm_object *uobj, voff_t pgoff, int orignpages,
struct uvm_object *uobj, voff_t uoffset, vsize_t align,
voff_t *vsize, dev_t *vdev)
voff_t pax_aslr_rtld_offset(struct exec_package *, vaddr_t, int);
static inline voff_t
voff_t v_size; /* i+u size of file */
voff_t v_writesize; /* i+u new size after write */
#define VSIZENOTSET ((voff_t)-1)
voff_t a_offset;
int VOP_GETPAGES(struct vnode *, voff_t, struct vm_page **, int *, int,
voff_t a_offlo;
voff_t a_offhi;
int VOP_PUTPAGES(struct vnode *, voff_t, voff_t, int);
ffs_lblktosize(fs, (voff_t)lbn) < round_page(vp->v_size) &&
voff_t off = trunc_page(ffs_lblktosize(fs, lbn));
voff_t endoff = round_page(ffs_lblktosize(fs, lbn) + size);
voff_t off = trunc_page(ffs_lblktosize(fs, lbprev));
voff_t endoff = round_page(ffs_lblktosize(fs, lbprev) + osize);
voff_t eoz;
voff_t eoz;
voff_t off;
off = round_page((voff_t)lbn << vp->v_mount->mnt_fs_bshift);
voff_t a_offset;
voff_t off;
voff_t a_offlo;
voff_t a_offhi;
voff_t a_offlo;
voff_t a_offhi;
pmap_direct_process(paddr_t pa, voff_t pgoff, size_t len,
struct pglist *pglist, voff_t off)
voff_t tag; /* our 'tag' */
rv = uao_get(uobj, (voff_t)pageidx << PAGE_SHIFT, &pg, &npages,
uao_dropswap_range(struct uvm_object *uobj, voff_t start, voff_t end)
voff_t taghi;
voff_t taglo;
static int uao_get(struct uvm_object *, voff_t, struct vm_page **,
static int uao_put(struct uvm_object *, voff_t, voff_t, int);
static struct vm_page *uao_pagealloc(struct uvm_object *, voff_t, int);
voff_t page_tag;
uao_create(voff_t size, int flags)
uao_pagealloc(struct uvm_object *uobj, voff_t offset, int flags)
uao_put(struct uvm_object *uobj, voff_t start, voff_t stop, int flags)
voff_t curoff;
uao_get(struct uvm_object *uobj, voff_t offset, struct vm_page **pps,
voff_t current_offset;
void uao_dropswap_range(struct uvm_object *, voff_t, voff_t);
voff_t endoff;
ubc_find_mapping(struct uvm_object *uobj, voff_t offset)
ubc_alloc(struct uvm_object *uobj, voff_t offset, vsize_t *lenp, int advice,
voff_t umap_offset;
umap_offset = (offset & ~((voff_t)ubc_winsize - 1));
slot_offset = (vaddr_t)(offset & ((voff_t)ubc_winsize - 1));
static struct ubc_map *ubc_find_mapping(struct uvm_object *, voff_t);
const voff_t endoff = umap->writeoff + umap->writelen;
const voff_t zerolen = round_page(endoff) - endoff;
voff_t off;
ubc_alloc_direct(struct uvm_object *uobj, voff_t offset, vsize_t *lenp,
voff_t pgoff;
voff_t offset; /* offset into uobj */
voff_t writeoff; /* write offset */
voff_t off;
voff_t off, /* used only for access check */
if (size > __type_max(voff_t))
if (off > __type_max(voff_t) - size)
KASSERT(off <= __type_max(voff_t) - PAGE_SIZE ||
if (__predict_false(off > __type_max(voff_t) - PAGE_SIZE)) {
off -= __type_max(voff_t);
off -= __type_max(voff_t);
struct uvm_object *udv_attach(dev_t, vm_prot_t, voff_t, vsize_t);
#define UVM_UNKNOWN_OFFSET ((voff_t) -1)
voff_t offset;
struct uvm_object *uao_create(voff_t, int);
struct uvm_object *, voff_t, vsize_t,
voff_t, struct vm_anon *, int, int, int);
struct uvm_object *, voff_t);
void uvm_vnp_setsize(struct vnode *, voff_t);
void uvm_vnp_setwritesize(struct vnode *, voff_t);
int uvn_findpages(struct uvm_object *, voff_t,
const voff_t eoff = flt->startva - ufi->entry->start;
voff_t uoff;
voff_t uoff;
const voff_t start = startva - vm_map_min(kernel_map);
const voff_t end = endva - vm_map_min(kernel_map);
voff_t curoff, nextoff;
ulz_put(struct uvm_object *uobj, voff_t start, voff_t stop, int flags)
uvm_loanuobjchunk(struct uvm_object *uobj, voff_t pgoff, int orignpages,
uvm_loanuobjpages(struct uvm_object *uobj, voff_t pgoff, int npages,
int uvm_loanuobjpages(struct uvm_object *, voff_t, int,
struct uvm_object *uobj, voff_t uoffset, vsize_t align, uvm_flag_t flags)
struct uvm_object *uobj, voff_t uoffset, vsize_t align, uvm_flag_t flags,
voff_t uoffset = args->uma_uoffset;
uvm_map_space_avail(vaddr_t *start, vsize_t length, voff_t uoffset,
struct uvm_object *uobj, voff_t uoffset, vsize_t align, int flags,
vaddr_t *result /* OUT */, struct uvm_object *uobj, voff_t uoffset,
static int uvm_map_space_avail(vaddr_t *, vsize_t, voff_t, vsize_t, int,
voff_t uoff;
voff_t offset; /* offset into object */
voff_t uma_uoffset;
vaddr_t *, struct uvm_object *, voff_t, vsize_t, int);
struct uvm_object *, voff_t, vsize_t, uvm_flag_t,
int, int, struct uvm_object *, voff_t, vsize_t);
voff_t foff, vsize_t locklimit)
voff_t offset = entry->offset;
voff_t newoffset;
voff_t off;
uvm_pagealloc_strat(struct uvm_object *obj, voff_t off, struct vm_anon *anon,
uvm_pagerealloc(struct vm_page *pg, struct uvm_object *newobj, voff_t newoff)
uvm_pagelookup(struct uvm_object *obj, voff_t off)
uvm_direct_process(struct vm_page **pgs, u_int npages, voff_t off, vsize_t len,
voff_t pgoff = (off & PAGE_MASK);
voff_t offset; /* o: offset into object */
struct vm_page *uvm_pagelookup(struct uvm_object *, voff_t);
int uvm_direct_process(struct vm_page **, u_int, voff_t, vsize_t,
uvm_page_array_fill(struct uvm_page_array *ar, voff_t off, unsigned int nwant)
uvm_page_array_fill_and_peek(struct uvm_page_array *ar, voff_t off,
voff_t ar_lastoff;
int uvm_page_array_fill(struct uvm_page_array *, voff_t, unsigned int);
voff_t, unsigned int);
int (*pgo_get)(struct uvm_object *, voff_t, struct vm_page **,
int (*pgo_put)(struct uvm_object *, voff_t, voff_t, int);
typedef voff_t pgoff_t; /* XXX: number of pages within a uvm object */
int pmap_direct_process(paddr_t, voff_t, size_t,
uvn_put(struct uvm_object *uobj, voff_t offlo, voff_t offhi, int flags)
uvn_get(struct uvm_object *uobj, voff_t offset,
uvn_findpages(struct uvm_object *uobj, voff_t offset, unsigned int *npagesp,
uvn_findpage(struct uvm_object *uobj, voff_t offset, struct vm_page **pgp,
uvm_vnp_setsize(struct vnode *vp, voff_t newsize)
voff_t pgend = round_page(newsize);
voff_t oldsize;
uvm_vnp_setwritesize(struct vnode *vp, voff_t newsize)
static int uvn_get(struct uvm_object *, voff_t, struct vm_page **, int *,
static int uvn_put(struct uvm_object *, voff_t, voff_t, int);
static int uvn_findpage(struct uvm_object *, voff_t, struct vm_page **,