• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.10/xnu-2782.1.97/bsd/kern/

Lines Matching defs:vp

106 static int ubc_info_init_internal(struct vnode *vp, int withfsize, off_t filesize);
735 * Parameters: vp Pointer to the vnode
743 ubc_info_init(struct vnode *vp)
745 return(ubc_info_init_internal(vp, 0, 0));
754 * Parameters: vp Pointer to the vnode
762 ubc_info_init_withsize(struct vnode *vp, off_t filesize)
764 return(ubc_info_init_internal(vp, 1, filesize));
773 * Parameters: vp Pointer to the vnode
797 ubc_info_init_internal(vnode_t vp, int withfsize, off_t filesize)
805 uip = vp->v_ubcinfo;
816 uip->ui_vnode = vp;
821 assert(uip->ui_vnode == vp);
824 vp->v_ubcinfo = uip;
833 pager = (void *)vnode_pager_setup(vp, uip->ui_pager);
871 error = vnode_size(vp, &uip->ui_size, vfs_context_current());
877 vp->v_lflag |= VNAMED_UBC; /* vnode has a named ubc reference */
1019 * Parameters: vp The vp whose backing file size is
1040 errno_t ubc_setsize_ex(struct vnode *vp, off_t nsize, ubc_setsize_opts_t opts)
1051 if (!UBCINFOEXISTS(vp))
1054 uip = vp->v_ubcinfo;
1067 lock_vnode_and_post(vp, NOTE_EXTEND);
1094 kret = ubc_create_upl(vp, lastpg, PAGE_SIZE, &upl, &pl, UPL_SET_LITE);
1128 int ubc_setsize(vnode_t vp, off_t nsize)
1130 return ubc_setsize_ex(vp, nsize, 0) == 0;
1138 * Parameters: vp The vnode whose size is of interest
1152 ubc_getsize(struct vnode *vp)
1157 if (!UBCINFOEXISTS(vp))
1159 return (vp->v_ubcinfo->ui_size);
1166 * Call ubc_msync(vp, 0, EOF, NULL, UBC_PUSHALL) on all the vnodes for this
1201 ubc_umcallback(vnode_t vp, __unused void * args)
1204 if (UBCINFOEXISTS(vp)) {
1206 (void) ubc_msync(vp, (off_t)0, ubc_getsize(vp), NULL, UBC_PUSHALL);
1218 * Parameters: vp The vnode whose ubc_info credentials
1228 ubc_getcred(struct vnode *vp)
1230 if (UBCINFOEXISTS(vp))
1231 return (vp->v_ubcinfo->ui_ucred);
1244 * Parameters: vp The vnode whose ubc_info creds are to
1293 ubc_setthreadcred(struct vnode *vp, proc_t p, thread_t thread)
1299 if (!UBCINFOEXISTS(vp))
1302 vnode_lock(vp);
1304 uip = vp->v_ubcinfo;
1316 vnode_unlock(vp);
1329 * Parameters: vp The vnode whose ubc_info creds are to
1350 ubc_setcred(struct vnode *vp, proc_t p)
1356 if ( !UBCINFOEXISTS(vp))
1363 vnode_lock(vp);
1364 uip = vp->v_ubcinfo;
1369 vnode_unlock(vp);
1379 * Parameters: vp The vnode to obtain the pager from
1390 ubc_getpager(struct vnode *vp)
1392 if (UBCINFOEXISTS(vp))
1393 return (vp->v_ubcinfo->ui_pager);
1405 * Parameters: vp The vnode to obtain the memory object
1423 ubc_getobject(struct vnode *vp, __unused int flags)
1425 if (UBCINFOEXISTS(vp))
1426 return((vp->v_ubcinfo->ui_control));
1432 ubc_strict_uncached_IO(struct vnode *vp)
1436 if (UBCINFOEXISTS(vp)) {
1437 result = memory_object_is_slid(vp->v_ubcinfo->ui_control);
1448 * Parameters: vp The vnode in which the block is located
1468 ubc_blktooff(vnode_t vp, daddr64_t blkno)
1473 if (UBCINFOEXISTS(vp)) {
1474 error = VNOP_BLKTOOFF(vp, blkno, &file_offset);
1489 * Parameters: vp The vnode in which the offset is
1511 ubc_offtoblk(vnode_t vp, off_t offset)
1516 if (UBCINFOEXISTS(vp)) {
1517 error = VNOP_OFFTOBLK(vp, offset, &blkno);
1532 * Parameters: vp The vnode we want to know about
1538 ubc_pages_resident(vnode_t vp)
1543 if (!UBCINFOEXISTS(vp))
1552 kret = memory_object_pages_resident(vp->v_ubcinfo->ui_control, &has_pages_resident);
1568 * Parameters: vp The vnode whose associated ubc_info's
1597 ubc_msync(vnode_t vp, off_t beg_off, off_t end_off, off_t *resid_off, int flags)
1605 retval = ubc_msync_internal(vp, beg_off, end_off, resid_off, flags, &io_errno);
1618 * Parameters: vp The vnode whose associated ubc_info's
1677 ubc_msync_internal(vnode_t vp, off_t beg_off, off_t end_off, off_t *resid_off, int flags, int *io_errno)
1684 if ( !UBCINFOEXISTS(vp))
1721 kret = memory_object_lock_request(vp->v_ubcinfo->ui_control,
1739 * Parameters: vp The vnode to map
1782 ubc_map(vnode_t vp, int flags)
1789 if (UBCINFOEXISTS(vp)) {
1791 vnode_lock(vp);
1792 uip = vp->v_ubcinfo;
1796 (void) msleep(&uip->ui_flags, &vp->v_lock,
1800 vnode_unlock(vp);
1802 error = VNOP_MMAP(vp, flags, vfs_context_current());
1807 vnode_lock_spin(vp);
1823 vnode_unlock(vp);
1829 vnode_ref(vp);
1842 * Parameters: vp The designated vnode
1860 ubc_destroy_named(vnode_t vp)
1866 if (UBCINFOEXISTS(vp)) {
1867 uip = vp->v_ubcinfo;
1870 control = ubc_getobject(vp, UBC_HOLDOBJECT);
1886 * Parameters: vp The vnode to check
1905 ubc_isinuse(struct vnode *vp, int busycount)
1907 if ( !UBCINFOEXISTS(vp))
1909 return(ubc_isinuse_locked(vp, busycount, 0));
1919 * Parameters: vp The vnode to check
1942 ubc_isinuse_locked(struct vnode *vp, int busycount, int locked)
1948 vnode_lock_spin(vp);
1950 if ((vp->v_usecount - vp->v_kusecount) > busycount)
1954 vnode_unlock(vp);
1964 * Parameters: vp vnode to unmap from ubc
1979 ubc_unmap(struct vnode *vp)
1985 if (vnode_getwithref(vp))
1988 if (UBCINFOEXISTS(vp)) {
1991 vnode_lock(vp);
1992 uip = vp->v_ubcinfo;
1996 (void) msleep(&uip->ui_flags, &vp->v_lock,
2013 vnode_unlock(vp);
2018 (void)VNOP_MNOMAP(vp, ctx);
2033 if (want_fsevent && need_fsevent(FSE_CONTENT_MODIFIED, vp)) {
2035 FSE_ARG_VNODE, vp,
2040 vnode_rele(vp);
2043 vnode_lock_spin(vp);
2054 vnode_unlock(vp);
2063 vnode_put(vp);
2073 * Parameters: vp The vnode backing the page
2144 struct vnode *vp,
2152 control = ubc_getobject(vp, UBC_FLAGS_NONE);
2173 * Parameters: vp The vnode backing the page
2224 struct vnode *vp,
2232 control = ubc_getobject(vp, UBC_FLAGS_NONE);
2251 * Parameters: vp The vnode from which to create the upl
2284 struct vnode *vp,
2345 control = ubc_getobject(vp, UBC_FLAGS_NONE);
2686 UBCINFOEXISTS(const struct vnode * vp)
2688 return((vp) && ((vp)->v_type == VREG) && ((vp)->v_ubcinfo != UBC_INFO_NULL));
2701 boolean_t ubc_is_mapped(const struct vnode *vp, boolean_t *writable)
2703 if (!UBCINFOEXISTS(vp) || !ISSET(vp->v_ubcinfo->ui_flags, UI_ISMAPPED))
2706 *writable = ISSET(vp->v_ubcinfo->ui_flags, UI_MAPPEDWRITE);
2710 boolean_t ubc_is_mapped_writable(const struct vnode *vp)
2713 return ubc_is_mapped(vp, &writable) && writable;
2774 struct vnode *vp,
2785 control = ubc_getobject(vp, UBC_FLAGS_NONE);
2834 vnode_lock(vp);
2835 if (! UBCINFOEXISTS(vp)) {
2836 vnode_unlock(vp);
2842 uip = vp->v_ubcinfo;
2848 vnode_unlock(vp);
2862 vnode_unlock(vp);
2869 vnode_unlock(vp);
2888 struct vnode *vp,
2993 error = mac_vnode_check_signature(vp, base_offset, blob->csb_sha1, (const void*)cd, size, &is_platform_binary);
3030 vnode_lock(vp);
3031 if (! UBCINFOEXISTS(vp)) {
3032 vnode_unlock(vp);
3036 uip = vp->v_ubcinfo;
3047 vnode_unlock(vp);
3055 vnode_unlock(vp);
3062 vnode_unlock(vp);
3101 vnode_unlock(vp);
3106 vnode_unlock(vp);
3118 vnode_unlock(vp);
3155 const char *name = vnode_getname_printable(vp);
3169 vnode_unlock(vp);
3172 vnode_mtime(vp, &uip->cs_mtime, vfs_context_current());
3211 struct vnode *vp,
3219 vnode_lock_spin(vp);
3221 if (! UBCINFOEXISTS(vp)) {
3226 uip = vp->v_ubcinfo;
3248 vnode_unlock(vp);
3289 struct vnode *vp)
3293 vnode_lock_spin(vp);
3295 if (UBCINFOEXISTS(vp) && vp->v_ubcinfo->cs_add_gen == cs_blob_generation_count) {
3299 vnode_unlock(vp);
3305 struct vnode *vp,
3315 assert(vp != NULL);
3328 error = mac_vnode_check_signature(vp, blob->csb_base_offset, blob->csb_sha1, (const void*)cd, blob->csb_cpu_type, &is_platform_binary);
3335 vnode_lock_spin(vp);
3336 if (UBCINFOEXISTS(vp)) {
3338 vp->v_ubcinfo->cs_add_gen = cs_blob_generation_count;
3340 vp->v_ubcinfo->cs_add_gen = 0;
3343 vnode_unlock(vp);
3359 struct vnode *vp)
3379 if (! UBCINFOEXISTS(vp)) {
3384 uip = vp->v_ubcinfo;
3393 struct vnode *vp,
3398 if (! UBCINFOEXISTS(vp)) {
3404 uip = vp->v_ubcinfo;
3592 vnode_t vp,
3600 vnode_lock(vp);
3602 blobs = ubc_get_cs_blobs(vp);
3624 vnode_unlock(vp);
3640 #define USE_CODE_SIGN_BITMAP(vp) ( (vp != NULL) && (vp->v_mount != NULL) && (vp->v_mount->mnt_flag & MNT_ROOTFS) && !root_fs_upgrade_try)
3643 vnode_t vp)
3650 if ( ! USE_CODE_SIGN_BITMAP(vp) || (! UBCINFOEXISTS(vp))) {
3653 uip = vp->v_ubcinfo;
3675 vnode_t vp,
3681 if ( ! USE_CODE_SIGN_BITMAP(vp) || ! UBCINFOEXISTS(vp)) {
3684 struct ubc_info *uip = vp->v_ubcinfo;
3719 vnode_t vp)
3725 if ( UBCINFOEXISTS(vp)) {
3726 uip = vp->v_ubcinfo;
3736 kern_return_t ubc_cs_validation_bitmap_allocate(__unused vnode_t vp){
3741 __unused struct vnode *vp,
3748 void ubc_cs_validation_bitmap_deallocate(__unused vnode_t vp){