Commit 12b09578 authored by Al Viro's avatar Al Viro

link_path_walk: don't bother with walk_component() after jumping link

... it does nothing if nd->last_type is LAST_BIND.
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent b0c24c3b
......@@ -1797,7 +1797,11 @@ static int link_path_walk(const char *name, struct nameidata *nd)
return err;
}
err = 0;
if (likely(s)) {
if (unlikely(!s)) {
/* jumped */
put_link(nd, &link, cookie);
break;
} else {
if (*s == '/') {
if (!nd->root.mnt)
set_root(nd);
......@@ -1812,9 +1816,9 @@ static int link_path_walk(const char *name, struct nameidata *nd)
put_link(nd, &link, cookie);
break;
}
err = walk_component(nd, LOOKUP_FOLLOW);
put_link(nd, &link, cookie);
}
err = walk_component(nd, LOOKUP_FOLLOW);
put_link(nd, &link, cookie);
} while (err > 0);
current->link_count--;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment