]> Git Repo - linux.git/commitdiff
vfs: drop conditional inode prefetch in __do_lookup_rcu
authorLinus Torvalds <[email protected]>
Thu, 21 Jul 2011 18:01:42 +0000 (11:01 -0700)
committerLinus Torvalds <[email protected]>
Thu, 21 Jul 2011 18:01:42 +0000 (11:01 -0700)
It seems to hurt performance in real life.  Yes, the inode will be used
later, but the conditional doesn't seem to predict all that well
(negative dentries are not uncommon) and it looks like the cost of
prefetching is simply higher than depending on the cache doing the right
thing.

As usual.

Signed-off-by: Linus Torvalds <[email protected]>
fs/dcache.c

index 6e4ea6d87774b6b31a212309fde5c3bed55a30c3..fbdcbca40725ab483f9b238c561c6dfb240db0bf 100644 (file)
@@ -1813,8 +1813,6 @@ seqretry:
                tname = dentry->d_name.name;
                i = dentry->d_inode;
                prefetch(tname);
-               if (i)
-                       prefetch(i);
                /*
                 * This seqcount check is required to ensure name and
                 * len are loaded atomically, so as not to walk off the
This page took 0.059655 seconds and 4 git commands to generate.