| /linux/tools/testing/selftests/fchmodat2/ |
| H A D | fchmodat2_test.c | 12 int sys_fchmodat2(int dfd, const char *filename, mode_t mode, int flags) in sys_fchmodat2() argument 14 int ret = syscall(__NR_fchmodat2, dfd, filename, mode, flags); in sys_fchmodat2() 21 int dfd, ret; in setup_testdir() local 28 dfd = open(dirname, O_PATH | O_DIRECTORY); in setup_testdir() 29 if (dfd < 0) in setup_testdir() 32 ret = openat(dfd, "regfile", O_CREAT | O_WRONLY | O_TRUNC, 0644); in setup_testdir() 38 ret = symlinkat("regfile", dfd, "symlink"); in setup_testdir() 43 return dfd; in setup_testdir() 46 int expect_mode(int dfd, const char *filename, mode_t expect_mode) in expect_mode() argument 49 int ret = fstatat(dfd, filename, &st, AT_SYMLINK_NOFOLLOW); in expect_mode() [all …]
|
| /linux/fs/ |
| H A D | utimes.c | 80 static int do_utimes_path(int dfd, const char __user *filename, in do_utimes_path() argument 95 error = user_path_at(dfd, filename, lookup_flags, &path); in do_utimes_path() 122 * @dfd: open file descriptor, -1 or AT_FDCWD 127 * If filename is NULL and dfd refers to an open file, then operate on 128 * the file. Otherwise look up filename, possibly using dfd as a 135 long do_utimes(int dfd, const char __user *filename, struct timespec64 *times, in do_utimes() argument 138 if (filename == NULL && dfd != AT_FDCWD) in do_utimes() 139 return do_utimes_fd(dfd, times, flags); in do_utimes() 140 return do_utimes_path(dfd, filename, times, flags); in do_utimes() 143 SYSCALL_DEFINE4(utimensat, int, dfd, const char __user *, filename, in SYSCALL_DEFINE4() argument [all …]
|
| H A D | stat.c | 328 * @dfd: A file descriptor representing the base dir for a relative filename 341 static int vfs_statx(int dfd, struct filename *filename, int flags, in vfs_statx() argument 353 error = filename_lookup(dfd, filename, lookup_flags, &path, NULL); in vfs_statx() 365 int vfs_fstatat(int dfd, const char __user *filename, in vfs_fstatat() argument 372 if (!name && dfd >= 0) in vfs_fstatat() 373 return vfs_fstat(dfd, stat); in vfs_fstatat() 375 ret = vfs_statx(dfd, name, statx_flags, stat, STATX_BASIC_STATS); in vfs_fstatat() 536 SYSCALL_DEFINE4(newfstatat, int, dfd, const char __user *, filename, in SYSCALL_DEFINE4() argument 542 error = vfs_fstatat(dfd, filename, &stat, flag); in SYSCALL_DEFINE4() 563 static int do_readlinkat(int dfd, const char __user *pathname, in do_readlinkat() argument [all …]
|
| H A D | xattr.c | 653 int filename_setxattr(int dfd, struct filename *filename, in filename_setxattr() argument 660 error = filename_lookup(dfd, filename, lookup_flags, &path, NULL); in filename_setxattr() 679 static int path_setxattrat(int dfd, const char __user *pathname, in path_setxattrat() argument 706 if (!filename && dfd >= 0) { in path_setxattrat() 707 CLASS(fd, f)(dfd); in path_setxattrat() 713 error = filename_setxattr(dfd, filename, lookup_flags, &ctx); in path_setxattrat() 719 SYSCALL_DEFINE6(setxattrat, int, dfd, const char __user *, pathname, unsigned int, at_flags, in SYSCALL_DEFINE6() argument 738 return path_setxattrat(dfd, pathname, at_flags, name, in SYSCALL_DEFINE6() 808 ssize_t filename_getxattr(int dfd, struct filename *filename, in filename_getxattr() argument 814 error = filename_lookup(dfd, filename, lookup_flags, &path, NULL); in filename_getxattr() [all …]
|
| H A D | internal.h | 55 extern int filename_lookup(int dfd, struct filename *name, unsigned flags, 57 int do_rmdir(int dfd, struct filename *name); 58 int do_unlinkat(int dfd, struct filename *name); 62 int do_mkdirat(int dfd, struct filename *name, umode_t mode); 187 extern struct file *do_filp_open(int dfd, struct filename *pathname, 198 int do_fchownat(int dfd, const char __user *filename, uid_t user, gid_t group, 253 int do_statx(int dfd, struct filename *filename, unsigned int flags, 287 ssize_t filename_getxattr(int dfd, struct filename *filename, 290 int filename_setxattr(int dfd, struct filename *filename,
|
| H A D | open.c | 467 static int do_faccessat(int dfd, const char __user *filename, int mode, int flags) in do_faccessat() argument 493 res = user_path_at(dfd, filename, lookup_flags, &path); in do_faccessat() 539 SYSCALL_DEFINE3(faccessat, int, dfd, const char __user *, filename, int, mode) in SYSCALL_DEFINE3() argument 541 return do_faccessat(dfd, filename, mode, 0); in SYSCALL_DEFINE3() 544 SYSCALL_DEFINE4(faccessat2, int, dfd, const char __user *, filename, int, mode, in SYSCALL_DEFINE4() argument 547 return do_faccessat(dfd, filename, mode, flags); in SYSCALL_DEFINE4() 680 static int do_fchmodat(int dfd, const char __user *filename, umode_t mode, in do_fchmodat() argument 695 error = user_path_at(dfd, filename, lookup_flags, &path); in do_fchmodat() 707 SYSCALL_DEFINE4(fchmodat2, int, dfd, const char __user *, filename, in SYSCALL_DEFINE4() argument 710 return do_fchmodat(dfd, filename, mode, flags); in SYSCALL_DEFINE4() [all …]
|
| H A D | file_attr.c | 374 SYSCALL_DEFINE5(file_getattr, int, dfd, const char __user *, filename, in SYSCALL_DEFINE5() argument 404 if (!name && dfd >= 0) { in SYSCALL_DEFINE5() 405 CLASS(fd, f)(dfd); in SYSCALL_DEFINE5() 412 error = filename_lookup(dfd, name, lookup_flags, &filepath, in SYSCALL_DEFINE5() 431 SYSCALL_DEFINE5(file_setattr, int, dfd, const char __user *, filename, in SYSCALL_DEFINE5() argument 470 if (!name && dfd >= 0) { in SYSCALL_DEFINE5() 471 CLASS(fd, f)(dfd); in SYSCALL_DEFINE5() 478 error = filename_lookup(dfd, name, lookup_flags, &filepath, in SYSCALL_DEFINE5()
|
| H A D | namei.c | 652 int dfd; member 661 static void __set_nameidata(struct nameidata *p, int dfd, struct filename *name) in __set_nameidata() argument 666 p->dfd = dfd; in __set_nameidata() 676 static inline void set_nameidata(struct nameidata *p, int dfd, struct filename *name, in set_nameidata() argument 679 __set_nameidata(p, dfd, name); in set_nameidata() 2581 /* Absolute pathname -- fetch the root (LOOKUP_IN_ROOT uses nd->dfd). */ in path_init() 2590 if (nd->dfd == AT_FDCWD) { in path_init() 2607 CLASS(fd_raw, f)(nd->dfd); in path_init() 2697 int filename_lookup(int dfd, struct filename *name, unsigned flags, in filename_lookup() argument 2704 set_nameidata(&nd, dfd, name, root); in filename_lookup() [all …]
|
| H A D | fhandle.c | 117 * @dfd: directory relative to which name is interpreted if not absolute 130 SYSCALL_DEFINE5(name_to_handle_at, int, dfd, const char __user *, name, in SYSCALL_DEFINE5() argument 147 * AT_EMPTY_PATH could be used along with a dfd that refers to a in SYSCALL_DEFINE5() 162 err = user_path_at(dfd, name, lookup_flags, &path); in SYSCALL_DEFINE5()
|
| /linux/tools/testing/selftests/openat2/ |
| H A D | helpers.c | 22 int raw_openat2(int dfd, const char *path, void *how, size_t size) in raw_openat2() argument 24 int ret = syscall(__NR_openat2, dfd, path, how, size); in raw_openat2() 28 int sys_openat2(int dfd, const char *path, struct open_how *how) in sys_openat2() argument 30 return raw_openat2(dfd, path, how, sizeof(*how)); in sys_openat2() 33 int sys_openat(int dfd, const char *path, struct open_how *how) in sys_openat() argument 35 int ret = openat(dfd, path, how->flags, how->mode); in sys_openat() 47 int touchat(int dfd, const char *path) in touchat() argument 49 int fd = openat(dfd, path, O_CREAT, 0700); in touchat() 71 bool fdequal(int fd, int dfd, const char *path) in fdequal() argument 77 dfdpath = fdreadlink(dfd); in fdequal()
|
| H A D | resolve_test.c | 49 int dfd, tmpfd; in setup_testdir() local 59 dfd = open(dirname, O_PATH | O_DIRECTORY); in setup_testdir() 60 if (dfd < 0) in setup_testdir() 64 E_mkdirat(dfd, "root", 0755); in setup_testdir() 65 tmpfd = openat(dfd, "root", O_PATH | O_DIRECTORY); in setup_testdir() 68 close(dfd); in setup_testdir() 69 dfd = tmpfd; in setup_testdir() 71 E_symlinkat("/proc/self/exe", dfd, "procexe"); in setup_testdir() 72 E_symlinkat("/proc/self/root", dfd, "procroot"); in setup_testdir() 73 E_mkdirat(dfd, "root", 0755); in setup_testdir() [all …]
|
| H A D | rename_attack_test.c | 37 int dfd; in setup_testdir() local 43 dfd = open(dirname, O_PATH | O_DIRECTORY); in setup_testdir() 44 if (dfd < 0) in setup_testdir() 47 E_mkdirat(dfd, "a", 0755); in setup_testdir() 48 E_mkdirat(dfd, "b", 0755); in setup_testdir() 49 E_mkdirat(dfd, "a/c", 0755); in setup_testdir() 51 return dfd; in setup_testdir() 86 int dfd, afd; in test_rename_attack() local 101 dfd = setup_testdir(); in test_rename_attack() 102 afd = openat(dfd, "a", O_PATH); in test_rename_attack() [all …]
|
| H A D | helpers.h | 96 int raw_openat2(int dfd, const char *path, void *how, size_t size); 97 int sys_openat2(int dfd, const char *path, struct open_how *how); 98 int sys_openat(int dfd, const char *path, struct open_how *how); 102 int touchat(int dfd, const char *path); 104 bool fdequal(int fd, int dfd, const char *path);
|
| /linux/include/linux/ |
| H A D | syscalls.h | 343 asmlinkage long sys_setxattrat(int dfd, const char __user *path, unsigned int at_flags, 352 asmlinkage long sys_getxattrat(int dfd, const char __user *path, unsigned int at_flags, 361 asmlinkage long sys_listxattrat(int dfd, const char __user *path, 369 asmlinkage long sys_removexattrat(int dfd, const char __user *path, 375 asmlinkage long sys_file_getattr(int dfd, const char __user *filename, 378 asmlinkage long sys_file_setattr(int dfd, const char __user *filename, 411 asmlinkage long sys_mknodat(int dfd, const char __user * filename, umode_t mode, 413 asmlinkage long sys_mkdirat(int dfd, const char __user * pathname, umode_t mode); 414 asmlinkage long sys_unlinkat(int dfd, const char __user * pathname, int flag); 447 asmlinkage long sys_faccessat(int dfd, const char __user *filename, int mode); [all …]
|
| /linux/io_uring/ |
| H A D | fs.c | 29 int dfd; member 36 int dfd; member 114 un->dfd = READ_ONCE(sqe->fd); in io_unlinkat_prep() 138 ret = do_rmdir(un->dfd, un->filename); in io_unlinkat() 140 ret = do_unlinkat(un->dfd, un->filename); in io_unlinkat() 164 mkd->dfd = READ_ONCE(sqe->fd); in io_mkdirat_prep() 184 ret = do_mkdirat(mkd->dfd, mkd->filename, mkd->mode); in io_mkdirat()
|
| H A D | openclose.c | 24 int dfd; 68 open->dfd = READ_ONCE(sqe->fd); in __io_openat_prep() 143 file = do_filp_open(open->dfd, open->filename, &op); in io_openat2() 23 int dfd; global() member
|
| /linux/Documentation/trace/ |
| H A D | kprobetrace.rst | 189 p:myprobe do_sys_open dfd=%ax filename=%dx flags=%cx mode=+4($stack) 193 p:myprobe,do_sys_open,dfd=%ax,filename=%dx,flags=%cx,mode=+4($stack) 201 …echo 'p:myprobe do_sys_open dfd=%ax filename=%dx flags=%cx mode=+4($stack)' > /sys/kernel/tracing/… 230 field:unsigned long dfd; offset:20; size:4; signed:0; 236 print fmt: "(%lx) dfd=%lx filename=%lx flags=%lx mode=%lx", REC->__probe_ip, 237 REC->dfd, REC->filename, REC->flags, REC->mode 275 …<...>-1447 [001] 1038282.286875: myprobe: (do_sys_open+0x0/0xd6) dfd=3 filename=7fffd1ec4440 flag… 277 …<...>-1447 [001] 1038282.286885: myprobe: (do_sys_open+0x0/0xd6) dfd=ffffff9c filename=40413c fla… 279 …<...>-1447 [001] 1038282.286969: myprobe: (do_sys_open+0x0/0xd6) dfd=ffffff9c filename=4041c6 fla…
|
| /linux/Documentation/devicetree/bindings/pinctrl/ |
| H A D | mediatek,mt7981-pinctrl.yaml | 88 "dfd" "dfd" 0, 1, 4, 5 101 "dfd_ntrst" "dfd" 8 161 enum: [wa_aice, dfd, jtag, pta, pcm, udi, usb, ant, eth, i2c, led, 183 const: dfd 187 enum: [dfd, dfd_ntrst]
|
| /linux/kernel/trace/ |
| H A D | kprobe_event_gen_test.c | 42 #define KPROBE_GEN_TEST_ARG0 "dfd=%ax" 49 #define KPROBE_GEN_TEST_ARG0 "dfd=%x0" 56 #define KPROBE_GEN_TEST_ARG0 "dfd=%r0" 63 #define KPROBE_GEN_TEST_ARG0 "dfd=%a0"
|
| /linux/arch/sparc/kernel/ |
| H A D | systbls.h | 65 asmlinkage long compat_sys_fstatat64(unsigned int dfd, 98 asmlinkage long compat_sys_fstatat64(unsigned int dfd,
|
| /linux/tools/testing/selftests/exec/ |
| H A D | execveat.c | 304 /* dfd + path */ in run_tests() 310 /* absolute path with nonsense dfd */ in run_tests() 337 /* dfd + path */ in run_tests() 348 /* dfd + path */ in run_tests() 362 /* dfd + path */ in run_tests()
|
| /linux/fs/notify/fanotify/ |
| H A D | fanotify_user.c | 1192 static int fanotify_find_path(int dfd, const char __user *filename, in fanotify_find_path() argument 1198 pr_debug("%s: dfd=%d filename=%p flags=%x\n", __func__, in fanotify_find_path() 1199 dfd, filename, flags); in fanotify_find_path() 1202 CLASS(fd, f)(dfd); in fanotify_find_path() 1221 ret = user_path_at(dfd, filename, lookup_flags, path); in fanotify_find_path() 1905 int dfd, const char __user *pathname) in do_fanotify_mark() argument 1922 pr_debug("%s: fanotify_fd=%d flags=%x dfd=%d pathname=%p mask=%llx\n", in do_fanotify_mark() 1923 __func__, fanotify_fd, flags, dfd, pathname, mask); in do_fanotify_mark() 2065 ret = fanotify_find_path(dfd, pathname, &path, flags, in do_fanotify_mark() 2172 __u64, mask, int, dfd, in SYSCALL_DEFINE5() argument [all …]
|
| /linux/tools/perf/Documentation/ |
| H A D | perf-trace.txt | 299 2272.992 ( 0.037 ms): gnome-shell/1370 openat(dfd: CWD, filename: /proc/self/stat) = 31 300 2277.481 ( 0.139 ms): gnome-shell/3039 openat(dfd: CWD, filename: /proc/self/stat) = 65 301 3026.398 ( 0.076 ms): gnome-shell/3039 openat(dfd: CWD, filename: /proc/self/stat) = 65 302 4294.665 ( 0.015 ms): sed/15879 openat(dfd: CWD, filename: /etc/ld.so.cache, flags: CLOEXEC) = 3
|
| /linux/tools/testing/selftests/pidfd/ |
| H A D | pidfd_bind_mount.c | 87 sys_open_tree(int dfd,const char * filename,unsigned int flags) sys_open_tree() argument
|
| /linux/tools/testing/selftests/ftrace/test.d/dynevent/ |
| H A D | eprobes_syntax_errors.tc | 22 check_error 'e:foo/bar syscalls/sys_enter_openat arg=^dfd' # BAD_FETCH_ARG
|