From: Kentaro Makita <k-makita@np.css.fujitsu.com>
To: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org
Cc: akpm@linux-foundation.org, dgc@sgi.com, viro@ZenIV.linux.org.uk,
harvey.harrison@gmail.com
Subject: Re: [PATCH][RFC]fix soft lock up at NFS mount by per-SB LRU-list of unused dentries
Date: Fri, 23 May 2008 11:15:19 +0900 [thread overview]
Message-ID: <483628B7.1080704@np.css.fujitsu.com> (raw)
In-Reply-To: <20080522225608.GZ173056135@sgi.com>
Hi, David
Thank you for reviewing the patch.
I'd fix coding style issues at next post. And,...
David Chinner wrote:
> On Thu, May 22, 2008 at 11:22:18AM +0900, Kentaro Makita wrote:
>> + }
>> + }
>> + }
>
> I'm wondering if this loop is an excessively long time to be holding the
> dcache_lock. I guess the hol dtime is limited by the size of *count being
> passed in. I think we could also do a:
>
> cond_resched_lock(&dcache_lock);
>
> in the loop here to prevent this from occurring....
Did you mean:
- scan sb->s_dentry_lru and move dentries to temporary list
with lock held
- cond_resched_lock(&dcache_lock);
- prune dentries on temporary list
Is that right?
....
>> + spin_lock(&sb_lock);
>> + list_for_each_entry(sb, &super_blocks, s_list) {
>
> Question on lock ordering of sb_lock vs dcache_lock - which is the inner
> lock? Are the two of them held together anywhere else? (/me doesn't
> have time to searchthe code right now).
>
The sb_lock is inner lock. And I searched the whole code and found only
prune_dcache() held both sb_lock and dcache_lock.
Best Regards,
Kentaro Makita
>
> Otherwise it's looking good.
>
> Cheers,
>
> Dave.
next prev parent reply other threads:[~2008-05-23 2:15 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-22 2:22 [PATCH][RFC]fix soft lock up at NFS mount by per-SB LRU-list of unused dentries Kentaro Makita
2008-05-22 6:55 ` Andrew Morton
2008-05-22 8:20 ` Kentaro Makita
2008-05-22 22:56 ` David Chinner
2008-05-22 23:14 ` Harvey Harrison
2008-05-23 2:15 ` Kentaro Makita [this message]
2008-05-23 4:22 ` David Chinner
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=483628B7.1080704@np.css.fujitsu.com \
--to=k-makita@np.css.fujitsu.com \
--cc=akpm@linux-foundation.org \
--cc=dgc@sgi.com \
--cc=harvey.harrison@gmail.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=viro@ZenIV.linux.org.uk \
/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