/src/sys/kern/ |
vfs_cwd.c | 51 struct cwdinfo *cwdi; local in function:cwdinit 54 cwdi = kmem_alloc(sizeof(*cwdi), KM_SLEEP); 55 KASSERT(ALIGNED_POINTER(cwdi, COHERENCY_UNIT)); 56 rw_init(&cwdi->cwdi_lock); 60 cwdi->cwdi_cdir = copy->cwdi_cdir; 61 if (cwdi->cwdi_cdir) 62 vref(cwdi->cwdi_cdir); 63 cwdi->cwdi_rdir = copy->cwdi_rdir; 64 if (cwdi->cwdi_rdir 83 struct cwdinfo *cwdi; local in function:cwdshare 98 struct cwdinfo *cwdi = p->p_cwdi; local in function:cwdunshare [all...] |
vfs_getcwd.c | 277 struct cwdinfo *cwdi = l->l_proc->p_cwdi; local in function:getcwd_common 286 rvp = cwdi->cwdi_rdir; 488 struct cwdinfo *cwdi; local in function:sys___getcwd 505 cwdi = l->l_proc->p_cwdi; 506 rw_enter(&cwdi->cwdi_lock, RW_READER); 507 error = getcwd_common(cwdi->cwdi_cdir, NULL, &bp, path, 509 rw_exit(&cwdi->cwdi_lock);
|
sys_mqueue.c | 417 struct cwdinfo *cwdi = p->p_cwdi; local in function:mqueue_create 465 mq->mq_mode = ((mode & ~cwdi->cwdi_cmask) & ALLPERMS) & ~S_ISTXT;
|
vfs_lookup.c | 532 struct cwdinfo *cwdi; /* pointer to cwd state */ local in function:namei_getstartdir 544 cwdi = self->l_proc->p_cwdi; 545 rw_enter(&cwdi->cwdi_lock, RW_READER); 548 if (cwdi->cwdi_rdir == NULL || (cnp->cn_flags & NOCHROOT)) { 551 rootdir = cwdi->cwdi_rdir; 566 erootdir = cwdi->cwdi_edir; 570 curdir = cwdi->cwdi_cdir; 590 * Get a reference to the start dir so we can safely unlock cwdi. 603 rw_exit(&cwdi->cwdi_lock);
|
vfs_mount.c | 725 struct cwdinfo *cwdi; local in function:mount_checkdirs 739 if ((cwdi = p->p_cwdi) == NULL) 746 if (cwdi->cwdi_cdir != olddp && 747 cwdi->cwdi_rdir != olddp) 752 atomic_inc_uint(&cwdi->cwdi_refcnt); 754 rw_enter(&cwdi->cwdi_lock, RW_WRITER); 755 if (cwdi->cwdi_cdir == olddp) { 756 rele1 = cwdi->cwdi_cdir; 758 cwdi->cwdi_cdir = newdp; 760 if (cwdi->cwdi_rdir == olddp) [all...] |
vfs_subr.c | 1310 struct cwdinfo *cwdi = l->l_proc->p_cwdi; local in function:set_statvfs_info 1312 if (cwdi->cwdi_rdir != NULL) { 1319 rw_enter(&cwdi->cwdi_lock, RW_READER); 1320 error = getcwd_common(cwdi->cwdi_rdir, rootvnode, &bp, 1322 rw_exit(&cwdi->cwdi_lock);
|
kern_proc.c | 3010 struct cwdinfo *cwdi; local in function:fill_cwd 3025 cwdi = p->p_cwdi; 3026 rw_enter(&cwdi->cwdi_lock, RW_READER); 3027 vp = cwdi->cwdi_cdir; 3029 rw_exit(&cwdi->cwdi_lock);
|
kern_exec.c | 686 struct cwdinfo *cwdi; local in function:exec_makepathbuf 712 cwdi = l->l_proc->p_cwdi; 713 rw_enter(&cwdi->cwdi_lock, RW_READER); 714 error = getcwd_common(cwdi->cwdi_cdir, NULL, &bp, path, MAXPATHLEN / 2, 716 rw_exit(&cwdi->cwdi_lock);
|
vfs_syscalls.c | 1270 struct cwdinfo *cwdi = l->l_proc->p_cwdi; local in function:dostatvfs 1281 chrooted = (atomic_load_relaxed(&cwdi->cwdi_rdir) != NULL); 1308 rw_enter(&cwdi->cwdi_lock, RW_READER); 1309 error = getcwd_common(cwdi->cwdi_rdir, rootvnode, &bp, path, 1311 rw_exit(&cwdi->cwdi_lock); 1505 struct cwdinfo *cwdi; local in function:do_sys_fchdir 1543 cwdi = p->p_cwdi; 1544 rw_enter(&cwdi->cwdi_lock, RW_WRITER); 1545 if (cwdi->cwdi_rdir && !vn_isunder(vp, NULL, l)) { 1549 vrele(cwdi->cwdi_cdir) 1617 struct cwdinfo * cwdi; local in function:do_sys_chdir 1679 struct cwdinfo *cwdi = p->p_cwdi; local in function:change_root 1759 struct cwdinfo *cwdi = p->p_cwdi; local in function:do_open [all...] |
/src/sys/fs/ptyfs/ |
ptyfs_vfsops.c | 98 struct cwdinfo *cwdi = l->l_proc->p_cwdi; local in function:ptyfs__getmp 104 if (cwdi->cwdi_rdir == NULL) 107 if (vn_isunder(mp->mnt_vnodecovered, cwdi->cwdi_rdir, l)) 121 struct cwdinfo *cwdi = l->l_proc->p_cwdi; local in function:ptyfs__getpath 129 if (cwdi->cwdi_rdir == NULL) 135 error = getcwd_common(mp->mnt_vnodecovered, cwdi->cwdi_rdir, &bp,
|
/src/sys/miscfs/procfs/ |
procfs_linux.c | 642 struct cwdinfo *cwdi = curl->l_proc->p_cwdi; local in function:procfs_domounts 661 if (!root && cwdi->cwdi_rdir) 663 &cwdi->cwdi_rdir->v_mount->mnt_stat, curl, 1);
|
procfs_vnops.c | 578 struct cwdinfo *cwdi; local in function:procfs_dir 583 * Lock target cwdi and take a reference to the vnode 603 cwdi = caller->l_proc->p_cwdi; 604 rw_enter(&cwdi->cwdi_lock, RW_READER); 606 rvp = cwdi->cwdi_rdir; 619 rw_exit(&cwdi->cwdi_lock); 638 rw_exit(&cwdi->cwdi_lock);
|
/src/sys/compat/netbsd32/ |
netbsd32_fs.c | 740 struct cwdinfo *cwdi; local in function:netbsd32___getcwd 758 cwdi = p->p_cwdi; 759 rw_enter(&cwdi->cwdi_lock, RW_READER); 760 error = getcwd_common (cwdi->cwdi_cdir, NULL, &bp, path, len/2, 762 rw_exit(&cwdi->cwdi_lock);
|
/src/usr.bin/fstat/ |
fstat.c | 445 struct cwdinfo cwdi; local in function:dofiles 461 if (!KVM_READ(p->p_cwdi, &cwdi, sizeof(cwdi))) { 479 if (cwdi.cwdi_rdir) 480 vtrans(NULL, cwdi.cwdi_rdir, RDIR, FREAD, (long)cwdi.cwdi_rdir); 484 vtrans(NULL, cwdi.cwdi_cdir, CDIR, FREAD, (long)cwdi.cwdi_cdir);
|