Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1535554

Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and path_is_mountpoint_rcu()

From Ian Kent <raven@themaw.net>
Newsgroups linux.kernel
Subject Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and path_is_mountpoint_rcu()
Date 2016-12-04 03:20 +0100
Message-ID <sKuzf-15R-9@gated-at.bofh.it> (permalink)
References <sIjHX-4h4-5@gated-at.bofh.it> <sKaTT-5jM-5@gated-at.bofh.it> <sKrUJ-7TT-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Sat, 2016-12-03 at 23:29 +0000, Al Viro wrote:
> On Sat, Dec 03, 2016 at 05:13:22AM +0000, Al Viro wrote:
> > 
> > 	* path_has_submounts() is broken.  At the very least, it's
> > AB-BA between mount_lock and rename_lock.  I would suggest trying to
> > put read_seqlock_excl(&mount_lock) around the call of d_walk() in there,
> > and using __lookup_mnt() in the callback (without retries on the mount_lock,
> > of course - read_seqlock_excl done on the outside is enough).  I'm not sure
> > if it won't cause trouble with contention, though; that needs testing.  As
> > it is, that function is broken in #work.autofs, same as it is in -mm and
> > -next.
> 	Fix for path_has_submounts() (as above) force-pushed.  It does
> need testing and profiling, obviously.

I'll run my tests against it and re-run with oprofile if all goes well.

The submount-test I use should show contention if it's a problem but I'm not
sure the number of mounts used will be sufficient to show up scale problems.

Basically each case of the test (there are two) runs for 100 iterations using 10
processes with timing set to promote expire to mount contention, mainly to test
for expire to mount races.

If I don't see contention I might need to analyse further whether the test has
adequate coverage.

Ian

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 1/7] vfs - merge path_is_mountpoint() and  path_is_mountpoint_rcu() Ian Kent <raven@themaw.net> - 2016-11-28 03:20 +0100
  Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and  path_is_mountpoint_rcu() Andrew Morton <akpm@linux-foundation.org> - 2016-11-30 23:30 +0100
    Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and  path_is_mountpoint_rcu() Ian Kent <raven@themaw.net> - 2016-12-01 01:20 +0100
  Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and  path_is_mountpoint_rcu() Al Viro <viro@ZenIV.linux.org.uk> - 2016-12-03 06:20 +0100
    Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and  path_is_mountpoint_rcu() Al Viro <viro@ZenIV.linux.org.uk> - 2016-12-04 00:30 +0100
      Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and  path_is_mountpoint_rcu() Ian Kent <raven@themaw.net> - 2016-12-04 03:20 +0100
        Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and  path_is_mountpoint_rcu() Ian Kent <raven@themaw.net> - 2016-12-05 04:00 +0100
    Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and  path_is_mountpoint_rcu() Ian Kent <raven@themaw.net> - 2016-12-04 03:10 +0100
    Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and  path_is_mountpoint_rcu() Ian Kent <raven@themaw.net> - 2016-12-06 10:50 +0100
      Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and path_is_mountpoint_rcu() ebiederm@xmission.com (Eric W. Biederman) - 2016-12-07 22:40 +0100
        Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and  path_is_mountpoint_rcu() Ian Kent <raven@themaw.net> - 2016-12-08 04:40 +0100
          Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and path_is_mountpoint_rcu() ebiederm@xmission.com (Eric W. Biederman) - 2016-12-08 05:40 +0100
            Re: [PATCH 1/7] vfs - merge path_is_mountpoint() and  path_is_mountpoint_rcu() Ian Kent <raven@themaw.net> - 2016-12-08 07:20 +0100

csiph-web