Lines Matching refs:srfmp
2219 struct _sr_file_mappings *srfmp; in shared_region_map_and_slide_setup() local
2251 srfmp = &(*sr_file_mappings)[i]; in shared_region_map_and_slide_setup()
2252 srfmp->fd = files[i].sf_fd; in shared_region_map_and_slide_setup()
2253 srfmp->mappings_count = files[i].sf_mappings_count; in shared_region_map_and_slide_setup()
2254 srfmp->mappings = &mappings[mappings_next]; in shared_region_map_and_slide_setup()
2255 mappings_next += srfmp->mappings_count; in shared_region_map_and_slide_setup()
2260 srfmp->slide = files[i].sf_slide; in shared_region_map_and_slide_setup()
2292 for (srfmp = &(*sr_file_mappings)[0]; in shared_region_map_and_slide_setup()
2293 srfmp < &(*sr_file_mappings)[files_count]; in shared_region_map_and_slide_setup()
2294 srfmp++) { in shared_region_map_and_slide_setup()
2295 if (srfmp->mappings_count == 0) { in shared_region_map_and_slide_setup()
2305 if (srfmp->fd == -1) { in shared_region_map_and_slide_setup()
2307 if (srfmp->mappings_count > 1) { in shared_region_map_and_slide_setup()
2319 struct shared_file_mapping_slide_np *mapping = &srfmp->mappings[0]; in shared_region_map_and_slide_setup()
2342 error = fp_get_ftype(p, srfmp->fd, DTYPE_VNODE, EINVAL, &srfmp->fp); in shared_region_map_and_slide_setup()
2348 proc_getpid(p), p->p_comm, srfmp->fd, error)); in shared_region_map_and_slide_setup()
2353 if (!(srfmp->fp->fp_glob->fg_flag & FREAD)) { in shared_region_map_and_slide_setup()
2358 proc_getpid(p), p->p_comm, srfmp->fd)); in shared_region_map_and_slide_setup()
2364 error = vnode_getwithref((vnode_t)fp_get_data(srfmp->fp)); in shared_region_map_and_slide_setup()
2370 proc_getpid(p), p->p_comm, srfmp->fd, error)); in shared_region_map_and_slide_setup()
2373 srfmp->vp = (struct vnode *)fp_get_data(srfmp->fp); in shared_region_map_and_slide_setup()
2376 if (srfmp->vp->v_type != VREG) { in shared_region_map_and_slide_setup()
2382 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2383 srfmp->vp->v_name, srfmp->vp->v_type)); in shared_region_map_and_slide_setup()
2392 srfmp->fp->fp_glob, VM_PROT_ALL, MAP_FILE | MAP_PRIVATE | MAP_FIXED, 0, &maxprot); in shared_region_map_and_slide_setup()
2412 struct cs_blob *blob = csvnode_get_blob(srfmp->vp, 0); in shared_region_map_and_slide_setup()
2419 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2420 srfmp->vp->v_name)); in shared_region_map_and_slide_setup()
2430 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2431 srfmp->vp->v_name)); in shared_region_map_and_slide_setup()
2451 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2452 srfmp->vp->v_name)); in shared_region_map_and_slide_setup()
2462 error = vnode_getattr(srfmp->vp, &va, vfs_context_current()); in shared_region_map_and_slide_setup()
2469 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2470 srfmp->vp->v_name, in shared_region_map_and_slide_setup()
2471 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2481 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2482 srfmp->vp->v_name, va.va_uid)); in shared_region_map_and_slide_setup()
2495 error = vnode_getattr(srfmp->vp, &va, vfs_context_current()); in shared_region_map_and_slide_setup()
2502 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2503 srfmp->vp->v_name, in shared_region_map_and_slide_setup()
2504 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2520 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2521 srfmp->vp->v_name)); in shared_region_map_and_slide_setup()
2533 if (srfmp->vp->v_mount != rdir_vp->v_mount) { in shared_region_map_and_slide_setup()
2541 if (error || srfmp->vp->v_mount != preboot_vp->v_mount) { in shared_region_map_and_slide_setup()
2547 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2548 srfmp->vp->v_name)); in shared_region_map_and_slide_setup()
2580 if (vnode_parent(srfmp->vp) == scdir_vp) { in shared_region_map_and_slide_setup()
2594 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2595 srfmp->vp->v_name)); in shared_region_map_and_slide_setup()
2602 error = vnode_size(srfmp->vp, &fs, vfs_context_current()); in shared_region_map_and_slide_setup()
2609 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2610 srfmp->vp->v_name, in shared_region_map_and_slide_setup()
2611 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), error)); in shared_region_map_and_slide_setup()
2614 srfmp->file_size = fs; in shared_region_map_and_slide_setup()
2617 srfmp->file_control = ubc_getobject(srfmp->vp, UBC_HOLDOBJECT); in shared_region_map_and_slide_setup()
2618 if (srfmp->file_control == MEMORY_OBJECT_CONTROL_NULL) { in shared_region_map_and_slide_setup()
2624 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2625 srfmp->vp->v_name)); in shared_region_map_and_slide_setup()
2634 for (i = 0; i < srfmp->mappings_count; i++) { in shared_region_map_and_slide_setup()
2635 if (srfmp->mappings[i].sms_init_prot & VM_PROT_ZF) { in shared_region_map_and_slide_setup()
2639 if (ubc_cs_is_range_codesigned(srfmp->vp, in shared_region_map_and_slide_setup()
2640 srfmp->mappings[i].sms_file_offset, in shared_region_map_and_slide_setup()
2641 srfmp->mappings[i].sms_size)) { in shared_region_map_and_slide_setup()
2651 (void *)VM_KERNEL_ADDRPERM(srfmp->vp), in shared_region_map_and_slide_setup()
2652 srfmp->vp->v_name, in shared_region_map_and_slide_setup()
2653 i, srfmp->mappings_count, in shared_region_map_and_slide_setup()
2654 srfmp->mappings[i].sms_address, in shared_region_map_and_slide_setup()
2655 srfmp->mappings[i].sms_size, in shared_region_map_and_slide_setup()
2656 srfmp->mappings[i].sms_file_offset, in shared_region_map_and_slide_setup()
2657 srfmp->mappings[i].sms_max_prot, in shared_region_map_and_slide_setup()
2658 srfmp->mappings[i].sms_init_prot)); in shared_region_map_and_slide_setup()
2782 struct _sr_file_mappings *srfmp; in shared_region_map_and_slide_cleanup() local
2786 for (srfmp = &sr_file_mappings[0]; srfmp < &sr_file_mappings[files_count]; srfmp++) { in shared_region_map_and_slide_cleanup()
2787 if (srfmp->vp != NULL) { in shared_region_map_and_slide_cleanup()
2788 vnode_lock_spin(srfmp->vp); in shared_region_map_and_slide_cleanup()
2789 srfmp->vp->v_flag |= VSHARED_DYLD; in shared_region_map_and_slide_cleanup()
2790 vnode_unlock(srfmp->vp); in shared_region_map_and_slide_cleanup()
2793 if (!(vnode_vfsvisflags(srfmp->vp) & MNT_NOATIME)) { in shared_region_map_and_slide_cleanup()
2797 vnode_setattr(srfmp->vp, &va, vfs_context_current()); in shared_region_map_and_slide_cleanup()
2807 if (vnode_hasnamedstreams(srfmp->vp)) { in shared_region_map_and_slide_cleanup()
2809 if (vnode_getnamedstream(srfmp->vp, &svp, XATTR_RESOURCEFORK_NAME, in shared_region_map_and_slide_cleanup()
2822 (void) vnode_put(srfmp->vp); in shared_region_map_and_slide_cleanup()
2823 srfmp->vp = NULL; in shared_region_map_and_slide_cleanup()
2825 if (srfmp->fp != NULL) { in shared_region_map_and_slide_cleanup()
2827 fp_drop(p, srfmp->fd, srfmp->fp, 0); in shared_region_map_and_slide_cleanup()
2828 srfmp->fp = NULL; in shared_region_map_and_slide_cleanup()