Home
last modified time | relevance | path

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

/linux-6.12.1/fs/overlayfs/
Dsuper.c360 ofs->config.workdir, name, -err); in ovl_workdir_create()
423 static bool ovl_workdir_ok(struct dentry *workdir, struct dentry *upperdir) in ovl_workdir_ok() argument
427 if (workdir != upperdir) { in ovl_workdir_ok()
428 struct dentry *trap = lock_rename(workdir, upperdir); in ovl_workdir_ok()
430 unlock_rename(workdir, upperdir); in ovl_workdir_ok()
540 struct dentry *workdir = ofs->workdir; in ovl_check_rename_whiteout() local
541 struct inode *dir = d_inode(workdir); in ovl_check_rename_whiteout()
550 temp = ovl_create_temp(ofs, workdir, OVL_CATTR(S_IFREG | 0)); in ovl_check_rename_whiteout()
555 dest = ovl_lookup_temp(ofs, workdir); in ovl_check_rename_whiteout()
571 whiteout = ovl_lookup_upper(ofs, name.name.name, workdir, name.name.len); in ovl_check_rename_whiteout()
[all …]
Ddir.c46 struct dentry *ovl_lookup_temp(struct ovl_fs *ofs, struct dentry *workdir) in ovl_lookup_temp() argument
55 temp = ovl_lookup_upper(ofs, name, workdir, strlen(name)); in ovl_lookup_temp()
70 struct dentry *workdir = ofs->workdir; in ovl_whiteout() local
71 struct inode *wdir = workdir->d_inode; in ovl_whiteout()
74 whiteout = ovl_lookup_temp(ofs, workdir); in ovl_whiteout()
88 whiteout = ovl_lookup_temp(ofs, workdir); in ovl_whiteout()
113 struct inode *wdir = ofs->workdir->d_inode; in ovl_cleanup_and_whiteout()
228 struct dentry *ovl_create_temp(struct ovl_fs *ofs, struct dentry *workdir, in ovl_create_temp() argument
231 return ovl_create_real(ofs, d_inode(workdir), in ovl_create_temp()
232 ovl_lookup_temp(ofs, workdir), attr); in ovl_create_temp()
[all …]
Dparams.c346 swap(config->workdir, *pname); in ovl_add_layer()
725 dput(ofs->workdir); in ovl_free_fs()
747 kfree(ofs->config.workdir); in ovl_free_fs()
760 if (config->workdir) { in ovl_fs_params_verify()
762 config->workdir); in ovl_fs_params_verify()
763 kfree(config->workdir); in ovl_fs_params_verify()
764 config->workdir = NULL; in ovl_fs_params_verify()
982 seq_show_option(m, "workdir", ofs->config.workdir); in ovl_show_options()
Dovl_entry.h10 char *workdir; member
69 struct dentry *workdir; member
Dcopy_up.c588 struct dentry *workdir; member
766 struct inode *udir = d_inode(c->destdir), *wdir = d_inode(c->workdir); in ovl_copy_up_workdir()
784 temp = ovl_create_temp(ofs, c->workdir, &cattr); in ovl_copy_up_workdir()
805 trap = lock_rename(c->workdir, c->destdir); in ovl_copy_up_workdir()
806 if (trap || temp->d_parent != c->workdir) { in ovl_copy_up_workdir()
851 unlock_rename(c->workdir, c->destdir); in ovl_copy_up_workdir()
878 tmpfile = ovl_do_tmpfile(ofs, c->workdir, c->stat.mode); in ovl_copy_up_tmpfile()
955 c->workdir = ovl_indexdir(c->dentry->d_sb); in ovl_do_copy_up()
1146 .workdir = ovl_workdir(dentry), in ovl_copy_up_one()
1149 if (WARN_ON(!ctx.workdir)) in ovl_copy_up_one()
Dutil.c61 return ofs->workdir; in ovl_workdir()
94 return ofs->config.index ? ofs->workdir : NULL; in ovl_indexdir()
1212 int ovl_lock_rename_workdir(struct dentry *workdir, struct dentry *upperdir) in ovl_lock_rename_workdir() argument
1217 if (workdir == upperdir) in ovl_lock_rename_workdir()
1221 trap = lock_rename(workdir, upperdir); in ovl_lock_rename_workdir()
1230 unlock_rename(workdir, upperdir); in ovl_lock_rename_workdir()
Doverlayfs.h542 int ovl_lock_rename_workdir(struct dentry *workdir, struct dentry *upperdir);
854 struct dentry *ovl_lookup_temp(struct ovl_fs *ofs, struct dentry *workdir);
855 struct dentry *ovl_create_temp(struct ovl_fs *ofs, struct dentry *workdir,
888 return (!ovl_upper_mnt(ofs) || !ofs->workdir); in ovl_force_readonly()
Dinode.c540 struct dentry *workdir = ovl_workdir(dentry); in ovl_set_acl() local
543 if (!IS_POSIXACL(d_inode(workdir))) in ovl_set_acl()
Dnamei.c762 index = lookup_positive_unlocked(name.name, ofs->workdir, name.len); in ovl_get_index_fh()
795 ofs->workdir, name.len); in ovl_lookup_index()
Dreaddir.c1173 struct dentry *indexdir = ofs->workdir; in ovl_indexdir_cleanup()
/linux-6.12.1/tools/testing/selftests/hid/
Dhid_common.h318 static bool match_sysfs_device(int dev_id, const char *workdir, struct dirent *dir) in match_sysfs_device() argument
331 sprintf(uevent, "%s/%s/uevent", workdir, dir->d_name); in match_sysfs_device()
350 const char *workdir = "/sys/devices/virtual/misc/uhid"; in get_hid_id() local
360 d = opendir(workdir); in get_hid_id()
363 if (!match_sysfs_device(dev_id, workdir, dir)) in get_hid_id()
382 const char *workdir = "/sys/devices/virtual/misc/uhid"; in get_hidraw() local
391 d = opendir(workdir); in get_hidraw()
397 if (!match_sysfs_device(dev_id, workdir, dir)) in get_hidraw()
400 sprintf(sysfs, "%s/%s/hidraw", workdir, dir->d_name); in get_hidraw()
Dvmtest.sh129 --workdir ${OUTPUT_DIR} \
/linux-6.12.1/Documentation/filesystems/
Doverlayfs.rst124 workdir=/work /merged
126 The "workdir" needs to be an empty directory on the same filesystem
344 As the example shows, "upperdir=" and "workdir=" may be omitted. In
498 Using an upper layer path and/or a workdir path that are already used by
502 upper layer and/or workdir path the behavior of the overlay is undefined,
768 "$workdir/work/incompat/volatile" is created. During next mount, overlay