|
@@ -3116,19 +3116,22 @@ char *simple_dname(struct dentry *dentry, char *buffer, int buflen)
|
|
|
/*
|
|
|
* Write full pathname from the root of the filesystem into the buffer.
|
|
|
*/
|
|
|
-static char *__dentry_path(struct dentry *dentry, char *buf, int buflen)
|
|
|
+static char *__dentry_path(struct dentry *d, char *buf, int buflen)
|
|
|
{
|
|
|
+ struct dentry *dentry;
|
|
|
char *end, *retval;
|
|
|
int len, seq = 0;
|
|
|
int error = 0;
|
|
|
|
|
|
+ if (buflen < 2)
|
|
|
+ goto Elong;
|
|
|
+
|
|
|
rcu_read_lock();
|
|
|
restart:
|
|
|
+ dentry = d;
|
|
|
end = buf + buflen;
|
|
|
len = buflen;
|
|
|
prepend(&end, &len, "\0", 1);
|
|
|
- if (buflen < 1)
|
|
|
- goto Elong;
|
|
|
/* Get '/' right */
|
|
|
retval = end-1;
|
|
|
*retval = '/';
|