diff options
Diffstat (limited to 'fs/dcache.c')
-rw-r--r-- | fs/dcache.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/dcache.c b/fs/dcache.c index 83293be48149..54f93f5e6b0f 100644 --- a/fs/dcache.c +++ b/fs/dcache.c | |||
@@ -1994,7 +1994,7 @@ global_root: | |||
1994 | * Returns a pointer into the buffer or an error code if the | 1994 | * Returns a pointer into the buffer or an error code if the |
1995 | * path was too long. | 1995 | * path was too long. |
1996 | * | 1996 | * |
1997 | * "buflen" should be positive. Caller holds the dcache_lock. | 1997 | * "buflen" should be positive. |
1998 | * | 1998 | * |
1999 | * If path is not reachable from the supplied root, then the value of | 1999 | * If path is not reachable from the supplied root, then the value of |
2000 | * root is changed (without modifying refcounts). | 2000 | * root is changed (without modifying refcounts). |
@@ -2006,10 +2006,12 @@ char *__d_path(const struct path *path, struct path *root, | |||
2006 | int error; | 2006 | int error; |
2007 | 2007 | ||
2008 | prepend(&res, &buflen, "\0", 1); | 2008 | prepend(&res, &buflen, "\0", 1); |
2009 | spin_lock(&dcache_lock); | ||
2009 | error = prepend_path(path, root, &res, &buflen); | 2010 | error = prepend_path(path, root, &res, &buflen); |
2011 | spin_unlock(&dcache_lock); | ||
2012 | |||
2010 | if (error) | 2013 | if (error) |
2011 | return ERR_PTR(error); | 2014 | return ERR_PTR(error); |
2012 | |||
2013 | return res; | 2015 | return res; |
2014 | } | 2016 | } |
2015 | 2017 | ||