Lines Matching refs:workdir
33 char *workdir; member
41 struct dentry *workdir; member
196 return ofs->workdir; in ovl_workdir()
476 dput(ufs->workdir); in ovl_put_super()
484 kfree(ufs->config.workdir); in ovl_put_super()
528 seq_show_option(m, "workdir", ufs->config.workdir); in ovl_show_options()
537 if (!(*flags & MS_RDONLY) && (!ufs->upper_mnt || !ufs->workdir)) in ovl_remount()
615 kfree(config->workdir); in ovl_parse_opt()
616 config->workdir = match_strdup(&args[0]); in ovl_parse_opt()
617 if (!config->workdir) in ovl_parse_opt()
628 if (!config->upperdir && config->workdir) { in ovl_parse_opt()
630 config->workdir); in ovl_parse_opt()
631 kfree(config->workdir); in ovl_parse_opt()
632 config->workdir = NULL; in ovl_parse_opt()
791 static bool ovl_workdir_ok(struct dentry *workdir, struct dentry *upperdir) in ovl_workdir_ok() argument
795 if (workdir != upperdir) { in ovl_workdir_ok()
796 ok = (lock_rename(workdir, upperdir) == NULL); in ovl_workdir_ok()
797 unlock_rename(workdir, upperdir); in ovl_workdir_ok()
855 if (!ufs->config.workdir) { in ovl_fill_super()
871 err = ovl_mount_dir(ufs->config.workdir, &workpath); in ovl_fill_super()
931 ufs->workdir = ovl_workdir_create(ufs->upper_mnt, workpath.dentry); in ovl_fill_super()
932 err = PTR_ERR(ufs->workdir); in ovl_fill_super()
933 if (IS_ERR(ufs->workdir)) { in ovl_fill_super()
935 ufs->config.workdir, OVL_WORKDIR_NAME, -err); in ovl_fill_super()
937 ufs->workdir = NULL; in ovl_fill_super()
1010 dput(ufs->workdir); in ovl_fill_super()
1025 kfree(ufs->config.workdir); in ovl_fill_super()