Home
last modified time | relevance | path

Searched refs:workdir (Results 1 - 19 of 19) sorted by relevance

/kernel/linux/linux-5.10/fs/overlayfs/
H A Ddir.c45 struct dentry *ovl_lookup_temp(struct dentry *workdir) in ovl_lookup_temp() argument
54 temp = lookup_one_len(name, workdir, strlen(name)); in ovl_lookup_temp()
56 pr_err("workdir/%s already exists\n", name); in ovl_lookup_temp()
64 /* caller holds i_mutex on workdir */
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(workdir); in ovl_whiteout()
87 whiteout = ovl_lookup_temp(workdir); in ovl_whiteout()
108 /* Caller must hold i_mutex on both workdir an
226 ovl_create_temp(struct dentry *workdir, struct ovl_cattr *attr) ovl_create_temp() argument
360 struct dentry *workdir = ovl_workdir(dentry); ovl_clear_empty() local
459 struct dentry *workdir = ovl_workdir(dentry); ovl_create_over_whiteout() local
759 struct dentry *workdir = ovl_workdir(dentry); ovl_remove_and_whiteout() local
[all...]
H A Dsuper.c230 dput(ofs->workdir); in ovl_free_fs()
251 kfree(ofs->config.workdir); in ovl_free_fs()
335 return (!ovl_upper_mnt(ofs) || !ofs->workdir); in ovl_force_readonly()
368 seq_show_option(m, "workdir", ofs->config.workdir); in ovl_show_options()
444 {OPT_WORKDIR, "workdir=%s"},
541 kfree(config->workdir); in ovl_parse_opt()
542 config->workdir = match_strdup(&args[0]); in ovl_parse_opt()
543 if (!config->workdir) in ovl_parse_opt()
614 if (config->workdir) { in ovl_parse_opt()
918 ovl_workdir_ok(struct dentry *workdir, struct dentry *upperdir) ovl_workdir_ok() argument
963 struct dentry *workdir = ovl_workdir(dentry); ovl_posix_acl_xattr_set() local
1188 ovl_check_rename_whiteout(struct dentry *workdir) ovl_check_rename_whiteout() argument
1287 struct dentry *temp, *workdir; ovl_make_workdir() local
[all...]
H A Dovl_entry.h11 char *workdir; member
64 /* workbasedir is the path at workdir= mount option */
66 /* workdir is the 'work' directory under workbasedir */
67 struct dentry *workdir; member
H A Dcopy_up.c444 struct dentry *workdir; member
577 * Copyup using workdir to prepare temp file. Used when copying up directories,
583 struct inode *udir = d_inode(c->destdir), *wdir = d_inode(c->workdir); in ovl_copy_up_workdir()
594 /* workdir and destdir could be the same when copying up to indexdir */ in ovl_copy_up_workdir()
596 if (lock_rename(c->workdir, c->destdir) != NULL) in ovl_copy_up_workdir()
603 temp = ovl_create_temp(c->workdir, &cattr); in ovl_copy_up_workdir()
637 unlock_rename(c->workdir, c->destdir); in ovl_copy_up_workdir()
659 temp = ovl_do_tmpfile(c->workdir, c->stat.mode); in ovl_copy_up_tmpfile()
712 * Copying dir up to indexdir instead of workdir simplifies locking. in ovl_do_copy_up()
717 c->workdir in ovl_do_copy_up()
[all...]
H A Dutil.c33 return ofs->workdir; in ovl_workdir()
853 int ovl_lock_rename_workdir(struct dentry *workdir, struct dentry *upperdir) in ovl_lock_rename_workdir() argument
856 if (workdir == upperdir) in ovl_lock_rename_workdir()
860 if (lock_rename(workdir, upperdir) != NULL) in ovl_lock_rename_workdir()
866 unlock_rename(workdir, upperdir); in ovl_lock_rename_workdir()
868 pr_err("failed to lock workdir+upperdir\n"); in ovl_lock_rename_workdir()
H A Doverlayfs.h319 int ovl_lock_rename_workdir(struct dentry *workdir, struct dentry *upperdir);
528 struct dentry *ovl_lookup_temp(struct dentry *workdir);
529 struct dentry *ovl_create_temp(struct dentry *workdir, struct ovl_cattr *attr);
/kernel/linux/linux-6.6/fs/overlayfs/
H A 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()
56 pr_err("workdir/%s already exists\n", name); in ovl_lookup_temp()
64 /* caller holds i_mutex on workdir */
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()
108 /* Caller must hold i_mutex on both workdir an
227 ovl_create_temp(struct ovl_fs *ofs, struct dentry *workdir, struct ovl_cattr *attr) ovl_create_temp() argument
365 struct dentry *workdir = ovl_workdir(dentry); ovl_clear_empty() local
449 struct dentry *workdir = ovl_workdir(dentry); ovl_create_over_whiteout() local
750 struct dentry *workdir = ovl_workdir(dentry); ovl_remove_and_whiteout() local
[all...]
H A Dsuper.c328 * Try to remove POSIX ACL xattrs from workdir. We are good if: in ovl_workdir_create()
366 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()
521 * Determine how we treat concurrent use of upperdir/workdir based on the
529 pr_err("%s is in-use as upperdir/workdir of another mount, mount with '-o index=off' to override exclusive upperdir protection.\n", in ovl_report_in_use()
533 pr_warn("%s is in-use as upperdir/workdir of another mount, accessing files from both mounts will result in undefined behavior.\n", in ovl_report_in_use()
606 struct dentry *workdir in ovl_check_rename_whiteout() local
705 struct dentry *workdir; ovl_make_workdir() local
[all...]
H A Dovl_entry.h10 char *workdir; member
64 /* workbasedir is the path at workdir= mount option */
66 /* workdir is the 'work' directory under workbasedir */
67 struct dentry *workdir; member
H A Dparams.c151 fsparam_string("workdir", Opt_workdir),
350 swap(config->workdir, *pname); in ovl_add_layer()
759 dput(ofs->workdir); in ovl_free_fs()
781 kfree(ofs->config.workdir); in ovl_free_fs()
799 if (config->workdir) { in ovl_fs_params_verify()
800 pr_info("option \"workdir=%s\" is useless in a non-upper mount, ignore\n", in ovl_fs_params_verify()
801 config->workdir); in ovl_fs_params_verify()
802 kfree(config->workdir); in ovl_fs_params_verify()
803 config->workdir = NULL; in ovl_fs_params_verify()
988 seq_show_option(m, "workdir", of in ovl_show_options()
[all...]
H A Dcopy_up.c543 struct dentry *workdir; member
703 * Copyup using workdir to prepare temp file. Used when copying up directories,
710 struct inode *udir = d_inode(c->destdir), *wdir = d_inode(c->workdir); in ovl_copy_up_workdir()
722 /* workdir and destdir could be the same when copying up to indexdir */ 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()
870 * Copying dir up to indexdir instead of workdir simplifies locking. in ovl_do_copy_up()
875 c->workdir in ovl_do_copy_up()
[all...]
H A Doverlayfs.h501 int ovl_lock_rename_workdir(struct dentry *workdir, struct dentry *upperdir);
804 struct dentry *ovl_lookup_temp(struct ovl_fs *ofs, struct dentry *workdir);
805 struct dentry *ovl_create_temp(struct ovl_fs *ofs, struct dentry *workdir,
839 return (!ovl_upper_mnt(ofs) || !ofs->workdir); in ovl_force_readonly()
H A 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()
1115 pr_err("failed to lock workdir+upperdir\n"); in ovl_lock_rename_workdir()
H A Dinode.c666 struct dentry *workdir = ovl_workdir(dentry); in ovl_set_acl() local
669 if (!IS_POSIXACL(d_inode(workdir))) in ovl_set_acl()
/kernel/linux/linux-6.6/tools/testing/selftests/hid/
H A 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()
H A Dvmtest.sh128 --workdir ${OUTPUT_DIR} \
/kernel/liteos_a/fs/vfs/operation/
H A Dvfs_other.c140 ret = strncpy_s(curr->files->workdir, PATH_MAX, dir, len); in SetWorkDir()
141 curr->files->workdir[PATH_MAX - 1] = '\0'; in SetWorkDir()
236 len = strlen(curr->files->workdir); in getcwd()
242 ret = memcpy_s(buf, n, curr->files->workdir, len + 1); in getcwd()
642 path = strdup(curr->files->workdir); in ls()
H A Dfullpath.c262 directory = curr->files->workdir; in vfs_normalize_path()
/kernel/liteos_a/fs/include/fs/
H A Dfd_table.h60 char workdir[PATH_MAX]; member

Completed in 20 milliseconds