Lines Matching refs:path

70 					struct path *parent_path,
71 struct path *path)
75 struct path *root_share_path = &share_conf->vfs_path;
80 pathname = share_conf->path;
121 path->dentry = d;
122 path->mnt = mntget(parent_path->mnt);
125 err = follow_down(path, 0);
127 path_put(path);
174 struct path path;
179 LOOKUP_NO_SYMLINKS, &path);
183 pr_err("path create failed for %s, err %d\n",
189 err = vfs_create(mnt_idmap(path.mnt), d_inode(path.dentry),
192 ksmbd_vfs_inherit_owner(work, d_inode(path.dentry),
198 done_path_create(&path, dentry);
213 struct path path;
219 &path);
223 ksmbd_debug(VFS, "path create failed for %s, err %d\n",
228 idmap = mnt_idmap(path.mnt);
230 err = vfs_mkdir(idmap, d_inode(path.dentry), dentry, mode);
246 ksmbd_vfs_inherit_owner(work, d_inode(path.dentry), d_inode(d));
251 done_path_create(&path, dentry);
552 * @path: path of dentry
556 int ksmbd_vfs_getattr(const struct path *path, struct kstat *stat)
560 err = vfs_getattr(path, stat, STATX_BTIME, AT_STATX_SYNC_AS_STAT);
594 * @path: path of dentry
598 int ksmbd_vfs_remove_file(struct ksmbd_work *work, const struct path *path)
601 struct dentry *parent = path->dentry->d_parent;
607 if (!d_inode(path->dentry)->i_nlink) {
612 idmap = mnt_idmap(path->mnt);
613 if (S_ISDIR(d_inode(path->dentry)->i_mode)) {
614 err = vfs_rmdir(idmap, d_inode(parent), path->dentry);
618 err = vfs_unlink(idmap, d_inode(parent), path->dentry, NULL);
639 struct path oldpath, newpath;
648 pr_err("cannot get linux path for %s, err = %d\n",
658 pr_err("path create err for %s, err %d\n", newname, err);
683 int ksmbd_vfs_rename(struct ksmbd_work *work, const struct path *old_path,
688 struct path new_path;
926 * @path: path of dentry to set XATTR at
936 const struct path *path, const char *attr_name,
943 err = mnt_want_write(path->mnt);
949 path->dentry,
957 mnt_drop_write(path->mnt);
1061 const struct path *path, char *attr_name)
1065 err = mnt_want_write(path->mnt);
1069 err = vfs_removexattr(idmap, path->dentry, attr_name);
1070 mnt_drop_write(path->mnt);
1173 * @dir: path info
1180 static int ksmbd_vfs_lookup_in_dir(const struct path *dir, char *name,
1206 * ksmbd_vfs_kern_path_locked() - lookup a file and get path info
1208 * @name: file path that is relative to share
1211 * @path: if lookup succeed, return path info
1217 unsigned int flags, struct path *parent_path,
1218 struct path *path, bool caseless)
1224 path);
1263 path);
1269 *parent_path = *path;
1285 path_put(path);
1290 err = ksmbd_vfs_lock_parent(parent_path->dentry, path->dentry);
1292 path_put(path);
1299 void ksmbd_vfs_kern_path_unlock(struct path *parent_path, struct path *path)
1303 path_put(path);
1310 struct path *path)
1319 dent = kern_path_create(AT_FDCWD, abs_name, path, flags);
1325 const struct path *path)
1331 xattr_list_len = ksmbd_vfs_listxattr(path->dentry, &xattr_list);
1339 err = mnt_want_write(path->mnt);
1351 err = vfs_remove_acl(idmap, path->dentry, name);
1357 mnt_drop_write(path->mnt);
1364 int ksmbd_vfs_remove_sd_xattrs(struct mnt_idmap *idmap, const struct path *path)
1370 xattr_list_len = ksmbd_vfs_listxattr(path->dentry, &xattr_list);
1383 err = ksmbd_vfs_remove_xattr(idmap, path, name);
1460 const struct path *path,
1468 struct dentry *dentry = path->dentry;
1520 rc = ksmbd_vfs_setxattr(idmap, path,
1610 const struct path *path,
1621 err = ksmbd_vfs_setxattr(idmap, path, XATTR_NAME_DOS_ATTRIBUTE,
1693 struct path path = {
1698 rc = vfs_getattr(&path, ksmbd_kstat->kstat,
1869 struct path *path)
1873 struct dentry *dentry = path->dentry;
1922 struct path *path, struct inode *parent_inode)
1926 struct dentry *dentry = path->dentry;