Re: [rcuwalk] e2a728c2785: -29.4% aim7.2000.jobs-per-min, +71% turbostat.Pkg_W

From: Al Viro
Date: Sat Mar 22 2014 - 09:54:26 EST


On Sat, Mar 22, 2014 at 07:56:36PM +0800, Fengguang Wu wrote:
> Hi Al,
>
> We noticed the below changes on
>
> git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git untested-mnt_hash
> commit e2a728c2785d6aab45d1a6d2c61e986d385c30bf ("rcuwalk: recheck mount_lock after mountpoint crossing attempts")

*doh*

Sorry about that - what happens is that __follow_mount_rcu() does that
check every time it's called, not on every negative lookup from
__lookup_mnt(). IOW, it's a massive overkill - most of the time
we don't call __lookup_mnt() at all, due to d_mountpoint() being false,
or get a positive from it.

Fixed and force-pushed; should get much better now...
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/