/* * Determine the mount path as a string */ static char *nfs4_path(struct dentry *dentry, char *buffer, ssize_t buflen) { char *limit; char *path = nfs_path(&limit, dentry, buffer, buflen); if (!IS_ERR(path)) { char *path_component = nfs_path_component(path, limit); if (path_component) return path_component; } return path; }
/* * Determine the mount path as a string */ static char *nfs4_path(struct dentry *dentry, char *buffer, ssize_t buflen) { char *limit; char *path = nfs_path(&limit, dentry, buffer, buflen, NFS_PATH_CANONICAL); if (!IS_ERR(path)) { char *colon = strchr(path, ':'); if (colon && colon < limit) path = colon + 1; } return path; }
/* * Determine the mount path as a string */ static char *nfs4_path(const struct vfsmount *mnt_parent, const struct dentry *dentry, char *buffer, ssize_t buflen) { const char *srvpath; srvpath = strchr(mnt_parent->mnt_devname, ':'); if (srvpath) srvpath++; else srvpath = mnt_parent->mnt_devname; return nfs_path(srvpath, mnt_parent->mnt_root, dentry, buffer, buflen); }