[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100304033312.GO8653@laptop>
Date: Thu, 4 Mar 2010 14:33:12 +1100
From: Nick Piggin <npiggin@...e.de>
To: john stultz <johnstul@...ibm.com>
Cc: Thomas Gleixner <tglx@...utronix.de>,
lkml <linux-kernel@...r.kernel.org>,
Clark Williams <williams@...hat.com>,
John Kacur <jkacur@...hat.com>
Subject: Re: Nick's vfs-scalability patches ported to 2.6.33-rt
On Wed, Mar 03, 2010 at 03:31:30PM -0800, john stultz wrote:
> On Fri, 2010-02-26 at 17:01 +1100, Nick Piggin wrote:
> > On Thu, Feb 25, 2010 at 09:53:28PM -0800, john stultz wrote:
> > > Hey Thomas, Nick,
> > > I just wanted to let you know I've just finished forward porting Nick's
> > > patches to 2.6.33-rc8-rt2. Luckily my forward port of Nick's patches to
> > > 2.6.33 applies on top of the -rt tree without any collisions, and I've
> > > added a handful of maybe sketchy fixups to get it working with -rt.
> > >
> > > You can find the patchset here:
> > > http://sr71.net/~jstultz/dbench-scalability/patches/2.6.33-rc8-rt2/vfs-scale.33-rt.tar.bz2
> > >
> > > Here's a chart showing how much these patches help dbench numbers on
> > > ramfs:
> > > http://sr71.net/~jstultz/dbench-scalability/graphs/2.6.33/ramfs-dbench.png
> > >
> > > I've not done any serious stress testing with the patchset yet, but
> > > wanted to post it for your review.
> > >
> > > Nick: I'd appreciate any feedback as to if any of my forward porting has
> > > gone awry. I'm still very green with respect to the vfs, so I don't
> > > doubt there are some issues hiding here.
> >
> > BTW there are a few issues Al pointed out. We have to synchronize RCU
> > after unregistering a filesystem so d_ops/i_ops doesn't go away, and
> > mntput can sleep so we can't do it under RCU read lock.
>
> Does the following address this issue properly?
As far as I could tell, yes that should solve the code reference
problem. I don't see a problem with synchronizing RCU here.
>
> Signed-off-by: John Stultz <johnstul@...ibm.com>
>
> diff --git a/fs/filesystems.c b/fs/filesystems.c
> index a24c58e..3448e7c 100644
> --- a/fs/filesystems.c
> +++ b/fs/filesystems.c
> @@ -110,6 +110,7 @@ int unregister_filesystem(struct file_system_type * fs)
> *tmp = fs->next;
> fs->next = NULL;
> write_unlock(&file_systems_lock);
> + synchronize_rcu();
> return 0;
> }
> tmp = &(*tmp)->next;
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists