summaryrefslogtreecommitdiffstats
path: root/README
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-03-30 20:18:50 +0200
committerAl Viro <viro@zeniv.linux.org.uk>2012-03-31 22:03:16 +0200
commit08b0ab7c20f767187ae635d51bdd9d262ebe8357 (patch)
treeb3b7258f1bee1574df231279dec23fe0c92a2b46 /README
parentuntangling do_lookup() - eliminate a loop. (diff)
downloadlinux-08b0ab7c20f767187ae635d51bdd9d262ebe8357.tar.xz
linux-08b0ab7c20f767187ae635d51bdd9d262ebe8357.zip
untangling do_lookup() - get rid of need_reval in !dentry case
Everything arriving into if (!dentry) will have need_reval = 1. Indeed, the only way to get there with need_reval reset to 0 would be via if (unlikely(d_need_lookup(dentry))) goto unlazy; if (unlikely(dentry->d_flags & DCACHE_OP_REVALIDATE)) { status = d_revalidate(dentry, nd); if (unlikely(status <= 0)) { if (status != -ECHILD) need_reval = 0; goto unlazy; ... unlazy: /* no assignments to dentry */ if (dentry && unlikely(d_need_lookup(dentry))) { dput(dentry); dentry = NULL; } and if d_need_lookup() had already been false the first time around, it will remain false on the second call as well. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'README')
0 files changed, 0 insertions, 0 deletions