projects
/
linux-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
7c0d552
)
d_path: prepend_path(): lift resetting b in case when we'd return 3 out of loop
author
Al Viro
<viro@zeniv.linux.org.uk>
Wed, 12 May 2021 20:21:43 +0000
(16:21 -0400)
committer
Al Viro
<viro@zeniv.linux.org.uk>
Wed, 19 May 2021 00:15:56 +0000
(20:15 -0400)
preparation to extracting the loop into helper (next commit)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/d_path.c
patch
|
blob
|
blame
|
history
diff --git
a/fs/d_path.c
b/fs/d_path.c
index 3836f5d0b0238fec4769135df78bf30ecc4829aa..9a0356cc98d3578ddcbb3cea5f65d8654585b9ba 100644
(file)
--- a/
fs/d_path.c
+++ b/
fs/d_path.c
@@
-115,7
+115,6
@@
restart:
/* Escaped? */
if (dentry != mnt->mnt.mnt_root) {
- b = *p;
error = 3;
break;
}
@@
-156,6
+155,9
@@
restart:
}
done_seqretry(&mount_lock, m_seq);
+ if (unlikely(error == 3))
+ b = *p;
+
if (b.len == p->len)
prepend(&b, "/", 1);