Home
last modified time | relevance | path

Searched refs:workdir (Results 1 – 11 of 11) sorted by relevance

/Linux-v6.6/fs/overlayfs/
Ddir.c45 struct dentry *ovl_lookup_temp(struct ovl_fs *ofs, struct dentry *workdir) in ovl_lookup_temp() argument
54 temp = ovl_lookup_upper(ofs, name, workdir, strlen(name)); in ovl_lookup_temp()
69 struct dentry *workdir = ofs->workdir; in ovl_whiteout() local
70 struct inode *wdir = workdir->d_inode; in ovl_whiteout()
73 whiteout = ovl_lookup_temp(ofs, workdir); in ovl_whiteout()
87 whiteout = ovl_lookup_temp(ofs, workdir); in ovl_whiteout()
112 struct inode *wdir = ofs->workdir->d_inode; in ovl_cleanup_and_whiteout()
227 struct dentry *ovl_create_temp(struct ovl_fs *ofs, struct dentry *workdir, in ovl_create_temp() argument
230 return ovl_create_real(ofs, d_inode(workdir), in ovl_create_temp()
231 ovl_lookup_temp(ofs, workdir), attr); in ovl_create_temp()
[all …]
Dsuper.c366 ofs->config.workdir, name, -err); in ovl_workdir_create()
429 static bool ovl_workdir_ok(struct dentry *workdir, struct dentry *upperdir) in ovl_workdir_ok() argument
433 if (workdir != upperdir) { in ovl_workdir_ok()
434 ok = (lock_rename(workdir, upperdir) == NULL); in ovl_workdir_ok()
435 unlock_rename(workdir, upperdir); in ovl_workdir_ok()
606 struct dentry *workdir = ofs->workdir; in ovl_check_rename_whiteout() local
607 struct inode *dir = d_inode(workdir); in ovl_check_rename_whiteout()
616 temp = ovl_create_temp(ofs, workdir, OVL_CATTR(S_IFREG | 0)); in ovl_check_rename_whiteout()
621 dest = ovl_lookup_temp(ofs, workdir); in ovl_check_rename_whiteout()
637 whiteout = ovl_lookup_upper(ofs, name.name.name, workdir, name.name.len); in ovl_check_rename_whiteout()
[all …]
Dparams.c292 bool workdir) in ovl_parse_param_upperdir() argument
321 if (workdir) { in ovl_parse_param_upperdir()
322 kfree(config->workdir); in ovl_parse_param_upperdir()
323 config->workdir = dup; in ovl_parse_param_upperdir()
732 dput(ofs->workdir); in ovl_free_fs()
754 kfree(ofs->config.workdir); in ovl_free_fs()
772 if (config->workdir) { in ovl_fs_params_verify()
774 config->workdir); in ovl_fs_params_verify()
775 kfree(config->workdir); in ovl_fs_params_verify()
776 config->workdir = NULL; in ovl_fs_params_verify()
[all …]
Dovl_entry.h10 char *workdir; member
67 struct dentry *workdir; member
Dcopy_up.c543 struct dentry *workdir; member
710 struct inode *udir = d_inode(c->destdir), *wdir = d_inode(c->workdir); in ovl_copy_up_workdir()
724 if (lock_rename(c->workdir, c->destdir) != NULL) in ovl_copy_up_workdir()
731 temp = ovl_create_temp(ofs, c->workdir, &cattr); in ovl_copy_up_workdir()
781 unlock_rename(c->workdir, c->destdir); in ovl_copy_up_workdir()
805 tmpfile = ovl_do_tmpfile(ofs, c->workdir, c->stat.mode); in ovl_copy_up_tmpfile()
875 c->workdir = ovl_indexdir(c->dentry->d_sb); in ovl_do_copy_up()
1044 .workdir = ovl_workdir(dentry), in ovl_copy_up_one()
1047 if (WARN_ON(!ctx.workdir)) in ovl_copy_up_one()
Dutil.c35 return ofs->workdir; in ovl_workdir()
1100 int ovl_lock_rename_workdir(struct dentry *workdir, struct dentry *upperdir) in ovl_lock_rename_workdir() argument
1103 if (workdir == upperdir) in ovl_lock_rename_workdir()
1107 if (lock_rename(workdir, upperdir) != NULL) in ovl_lock_rename_workdir()
1113 unlock_rename(workdir, upperdir); in ovl_lock_rename_workdir()
Doverlayfs.h493 int ovl_lock_rename_workdir(struct dentry *workdir, struct dentry *upperdir);
796 struct dentry *ovl_lookup_temp(struct ovl_fs *ofs, struct dentry *workdir);
797 struct dentry *ovl_create_temp(struct ovl_fs *ofs, struct dentry *workdir,
831 return (!ovl_upper_mnt(ofs) || !ofs->workdir); in ovl_force_readonly()
Dinode.c666 struct dentry *workdir = ovl_workdir(dentry); in ovl_set_acl() local
669 if (!IS_POSIXACL(d_inode(workdir))) in ovl_set_acl()
/Linux-v6.6/tools/testing/selftests/hid/
Dhid_bpf.c320 static bool match_sysfs_device(int dev_id, const char *workdir, struct dirent *dir) in match_sysfs_device() argument
333 sprintf(uevent, "%s/%s/uevent", workdir, dir->d_name); in match_sysfs_device()
352 const char *workdir = "/sys/devices/virtual/misc/uhid"; in get_hid_id() local
362 d = opendir(workdir); in get_hid_id()
365 if (!match_sysfs_device(dev_id, workdir, dir)) in get_hid_id()
384 const char *workdir = "/sys/devices/virtual/misc/uhid"; in get_hidraw() local
393 d = opendir(workdir); in get_hidraw()
399 if (!match_sysfs_device(dev_id, workdir, dir)) in get_hidraw()
402 sprintf(sysfs, "%s/%s/hidraw", workdir, dir->d_name); in get_hidraw()
Dvmtest.sh128 --workdir ${OUTPUT_DIR} \
/Linux-v6.6/Documentation/filesystems/
Doverlayfs.rst124 workdir=/work /merged
126 The "workdir" needs to be an empty directory on the same filesystem
335 As the example shows, "upperdir=" and "workdir=" may be omitted. In
475 Using an upper layer path and/or a workdir path that are already used by
479 upper layer and/or workdir path the behavior of the overlay is undefined,
717 "$workdir/work/incompat/volatile" is created. During next mount, overlay