From: Andrew Morton <akpm@osdl.org>
To: Robin Holt <holt@sgi.com>
Cc: holt@sgi.com, linux-kernel@vger.kernel.org, dev@sw.ru,
wli@holomorphy.com, steiner@sgi.com, sandeen@sgi.com
Subject: Re: 21 million inodes is causing severe pauses.
Date: Tue, 16 Nov 2004 16:33:10 -0800 [thread overview]
Message-ID: <20041116163310.34580297.akpm@osdl.org> (raw)
In-Reply-To: <20041116194858.GA2549@lnx-holt.americas.sgi.com>
Robin Holt <holt@sgi.com> wrote:
>
> On Tue, Nov 16, 2004 at 11:13:21AM -0800, Andrew Morton wrote:
> > Robin Holt <holt@sgi.com> wrote:
> > >
> > > I guess I am very concerned at this point. If I can do a
> > > release/reacquire, why not just change generic_shutdown_super() so the
> > > lock_kernel() does not happen until the first pass has occurred. ie:
> > >
> > > --- super.c.orig 2004-11-16 10:22:17 -06:00
> > > +++ super.c 2004-11-16 10:22:41 -06:00
> > > @@ -232,10 +232,10 @@
> > > dput(root);
> > > fsync_super(sb);
> > > lock_super(sb);
> > > - lock_kernel();
> > > sb->s_flags &= ~MS_ACTIVE;
> > > /* bad name - it should be evict_inodes() */
> > > invalidate_inodes(sb);
> > > + lock_kernel();
> > >
> > > if (sop->write_super && sb->s_dirt)
> > > sop->write_super(sb);
> > >
> > > This at least makes the lock_kernel time much smaller than it is right
> > > now. It also does not affect any callers that may really need the BKL.
> >
> > lock_kernel() is also taken way up in do_umount(), hence the need for
> > release_kernel_lock()/reacquire_kernel_lock().
>
> It looks like it is only held very briefly during the early parts of do_umount.
>
OK.
> I have moved lock_kernel() as above in addition to the two patches you pointed
> to earlier. This has left me with a system which has 21M inodes and undetectable
> delays during heavy mount/umount activity. I am starting one last test which
> attempts a umount of a filesystem which has many inodes associated with it.
That sounds good. We need to work out where that null-pointer deref is
coming from.
> At this point, I have checked the entire code path and see no reason the
> BKL is held for the first call to invalidate_inodes.
No, the above change looks fine. And I have no problem merging up
invalidate_inodes-speedup.patch, really - it's been in -mm for over a year.
I've just been waiting for a decent reason to merge it.
next prev parent reply other threads:[~2004-11-17 0:34 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-11-15 19:55 Robin Holt
2004-11-15 20:35 ` Norbert van Nobelen
2004-11-15 20:51 ` Robin Holt
2004-11-15 20:57 ` linux-os
2004-11-15 21:31 ` Robin Holt
2004-11-15 22:57 ` Andrew Morton
2004-11-16 16:28 ` Robin Holt
2004-11-16 19:13 ` Andrew Morton
2004-11-16 19:48 ` Robin Holt
2004-11-17 0:33 ` Andrew Morton [this message]
2004-11-17 0:54 ` Robin Holt
2004-11-17 1:05 ` Andrew Morton
2004-11-16 16:32 ` Robin Holt
2004-11-16 19:15 ` Andrew Morton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20041116163310.34580297.akpm@osdl.org \
--to=akpm@osdl.org \
--cc=dev@sw.ru \
--cc=holt@sgi.com \
--cc=linux-kernel@vger.kernel.org \
--cc=sandeen@sgi.com \
--cc=steiner@sgi.com \
--cc=wli@holomorphy.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome