# Re: \[PATCH RFCv2 1/3\] fs: introduce helper d\_path\_fast()

- From: Matthew Wilcox \<willy@infradead.org\>
- Date: 2021-05-28 12:53:02 
- List: netdev
- Page: https://ratatoskr.run/netdev/2021/05/1395196
- Thread: https://ratatoskr.run/linux-doc/2021/05/1395123/t.md

```text
On Fri, May 28, 2021 at 07:39:49PM +0800, Jia He wrote:
> +/**
> + * d_path_fast - fast return the full path of a dentry without taking
> + * any seqlock/spinlock. This helper is typical for debugging purpose
> + */
> +char *d_path_fast(const struct path *path, char *buf, int buflen)

I'd suggest calling it d_path_unsafe().  Otherwise people will call it
instead of d_path because who doesn't like fast?

> +{
> +	struct path root;
> +	struct mount *mnt = real_mount(path->mnt);
> +	DECLARE_BUFFER(b, buf, buflen);
> +
> +	rcu_read_lock();
> +	get_fs_root_rcu(current->fs, &root);
> +
> +	prepend(&b, "", 1);
> +	__prepend_path(path->dentry, mnt, &root, &b);
> +	rcu_read_unlock();
> +
> +	return extract_string(&b);
> +}
> +EXPORT_SYMBOL(d_path_fast);

Why export it?  What module needs this?
```
