aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2011-03-14 21:28:04 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2011-03-15 17:16:25 -0400
commitce0525449da56444948c368f52e10f3db0465338 (patch)
treedf50f16b0af733738b39c9430145d94e35a2abdb /fs
parentbd92d7fed877ed1e6997e4f3f13dbcd872947653 (diff)
simplify link_path_walk() tail
Now that link_path_walk() is called without LOOKUP_PARENT only from do_follow_link(), we can simplify the checks in last component handling. First of all, checking if we'd arrived to a directory is not needed - the caller will check it anyway. And LOOKUP_FOLLOW is guaranteed to be there, since we only get to that place with nd->depth > 0. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs')
-rw-r--r--fs/namei.c8
1 files changed, 1 insertions, 7 deletions
diff --git a/fs/namei.c b/fs/namei.c
index a3431639e16..9575d003969 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -1467,8 +1467,7 @@ last_component:
1467 nd->last_type = type; 1467 nd->last_type = type;
1468 return 0; 1468 return 0;
1469 } 1469 }
1470 err = walk_component(nd, &next, &this, type, 1470 err = walk_component(nd, &next, &this, type, LOOKUP_FOLLOW);
1471 lookup_flags & LOOKUP_FOLLOW);
1472 if (err < 0) 1471 if (err < 0)
1473 return err; 1472 return err;
1474 if (err) { 1473 if (err) {
@@ -1476,11 +1475,6 @@ last_component:
1476 if (err) 1475 if (err)
1477 return err; 1476 return err;
1478 } 1477 }
1479 if (lookup_flags & LOOKUP_DIRECTORY) {
1480 err = -ENOTDIR;
1481 if (!nd->inode->i_op->lookup)
1482 break;
1483 }
1484 return 0; 1478 return 0;
1485 } 1479 }
1486 terminate_walk(nd); 1480 terminate_walk(nd);