Lines Matching refs:path
74 long vfs_truncate(const struct path *path, loff_t length) in vfs_truncate() argument
80 inode = path->dentry->d_inode; in vfs_truncate()
81 mnt = path->mnt; in vfs_truncate()
89 error = mnt_want_write(path->mnt); in vfs_truncate()
115 error = security_path_truncate(path); in vfs_truncate()
117 error = do_truncate2(mnt, path->dentry, length, 0, NULL); in vfs_truncate()
122 mnt_drop_write(path->mnt); in vfs_truncate()
131 struct path path; in do_sys_truncate() local
138 error = user_path_at(AT_FDCWD, pathname, lookup_flags, &path); in do_sys_truncate()
140 error = vfs_truncate(&path, length); in do_sys_truncate()
141 path_put(&path); in do_sys_truncate()
150 SYSCALL_DEFINE2(truncate, const char __user *, path, long, length) in SYSCALL_DEFINE2() argument
152 return do_sys_truncate(path, length); in SYSCALL_DEFINE2()
156 COMPAT_SYSCALL_DEFINE2(truncate, const char __user *, path, compat_off_t, length) in COMPAT_SYSCALL_DEFINE2() argument
158 return do_sys_truncate(path, length); in COMPAT_SYSCALL_DEFINE2()
226 SYSCALL_DEFINE2(truncate64, const char __user *, path, loff_t, length) in SYSCALL_DEFINE2() argument
228 return do_sys_truncate(path, length); in SYSCALL_DEFINE2()
361 struct path path; in do_faccessat() local
408 res = user_path_at(dfd, filename, lookup_flags, &path); in do_faccessat()
412 inode = d_backing_inode(path.dentry); in do_faccessat()
413 mnt = path.mnt; in do_faccessat()
421 if (path_noexec(&path)) in do_faccessat()
439 if (__mnt_is_readonly(path.mnt)) in do_faccessat()
443 path_put(&path); in do_faccessat()
466 struct path path; in ksys_chdir() local
470 error = user_path_at(AT_FDCWD, filename, lookup_flags, &path); in ksys_chdir()
474 error = inode_permission2(path.mnt, path.dentry->d_inode, MAY_EXEC | MAY_CHDIR); in ksys_chdir()
478 set_fs_pwd(current->fs, &path); in ksys_chdir()
481 path_put(&path); in ksys_chdir()
520 struct path path; in ksys_chroot() local
524 error = user_path_at(AT_FDCWD, filename, lookup_flags, &path); in ksys_chroot()
528 error = inode_permission2(path.mnt, path.dentry->d_inode, MAY_EXEC | MAY_CHDIR); in ksys_chroot()
535 error = security_path_chroot(&path); in ksys_chroot()
539 set_fs_root(current->fs, &path); in ksys_chroot()
542 path_put(&path); in ksys_chroot()
556 static int chmod_common(const struct path *path, umode_t mode) in chmod_common() argument
558 struct inode *inode = path->dentry->d_inode; in chmod_common()
563 error = mnt_want_write(path->mnt); in chmod_common()
568 error = security_path_chmod(path, mode); in chmod_common()
573 error = notify_change2(path->mnt, path->dentry, &newattrs, &delegated_inode); in chmod_common()
581 mnt_drop_write(path->mnt); in chmod_common()
605 struct path path; in do_fchmodat() local
609 error = user_path_at(dfd, filename, lookup_flags, &path); in do_fchmodat()
611 error = chmod_common(&path, mode); in do_fchmodat()
612 path_put(&path); in do_fchmodat()
632 static int chown_common(const struct path *path, uid_t user, gid_t group) in chown_common() argument
634 struct inode *inode = path->dentry->d_inode; in chown_common()
662 error = security_path_chown(path, uid, gid); in chown_common()
664 error = notify_change2(path->mnt, path->dentry, &newattrs, &delegated_inode); in chown_common()
677 struct path path; in do_fchownat() local
688 error = user_path_at(dfd, filename, lookup_flags, &path); in do_fchownat()
691 error = mnt_want_write(path.mnt); in do_fchownat()
694 error = chown_common(&path, user, group); in do_fchownat()
695 mnt_drop_write(path.mnt); in do_fchownat()
697 path_put(&path); in do_fchownat()
923 int vfs_open(const struct path *path, struct file *file) in vfs_open() argument
925 file->f_path = *path; in vfs_open()
926 return do_dentry_open(file, d_backing_inode(path->dentry), NULL); in vfs_open()
929 struct file *dentry_open(const struct path *path, int flags, in dentry_open() argument
938 BUG_ON(!path->mnt); in dentry_open()
942 error = vfs_open(path, f); in dentry_open()
952 struct file *open_with_fake_path(const struct path *path, int flags, in open_with_fake_path() argument
959 f->f_path = *path; in open_with_fake_path()