From: Chuck Lever <chuck.lever@oracle.com>
To: Andrew Morton <akpm@osdl.org>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>,
Trond Myklebust <Trond.Myklebust@netapp.com>,
Steve Dickson <steved@redhat.com>,
linux-mm@kvack.org
Subject: Re: Checking page_count(page) in invalidate_complete_page
Date: Thu, 28 Sep 2006 13:09:28 -0400 [thread overview]
Message-ID: <451C01C8.7020104@oracle.com> (raw)
In-Reply-To: <20060928100306.0b58f3c7.akpm@osdl.org>
Andrew Morton wrote:
> On Thu, 28 Sep 2006 12:42:44 -0400
> Chuck Lever <chuck.lever@oracle.com> wrote:
>
>> Andrew Morton wrote:
>>> On Thu, 28 Sep 2006 09:36:40 -0700
>>> Andrew Morton <akpm@osdl.org> wrote:
>>>
>>>>> I think a call to lru_add_drain_all() belongs in both the
>>>>> invalidate_inode_pages() and the invalidate_inode_pages2() path. Do you
>>>>> agree?
>>>> Yes.
>>> Or maybe not. lru_add_drain() will only drain the local CPU's buffer. If
>>> the page is sitting in another CPU's buffer, the same problem will occur.
>>>
>>> IOW, you got lucky.
>> I used lru_add_drain_all(), so it hit all the per-CPU pagevecs.
>
> lru_add_drain_all() is a nasty, hacky, not-exported-to-modules thing. It
> equates to lru_add_drain() if !CONFIG_NUMA.
>
> Sigh, we're not getting there, are we?
>
> I'm still thinking we add invalidate_complete_page2() to get us out of
> trouble and park the problem :(. That'd be a good approach for 2.6.18.x,
> which I assume is fairly urgent.
Choosing which fix to include is above my pay grade. Both of these
proposals address the NFS readdir cache invalidation problem.
But it seems like there is a real problem here -- the pages that are
waiting to be added the LRU will always have a page count that is too
high for invalidate_inode_pages to work on them.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2006-09-28 17:09 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <4518333E.2060101@oracle.com>
2006-09-25 21:10 ` Andrew Morton
2006-09-25 22:30 ` Chuck Lever
2006-09-25 22:53 ` Andrew Morton
2006-09-25 22:57 ` Steve Dickson
2006-09-25 23:14 ` Nick Piggin
2006-09-25 22:40 ` Chuck Lever
2006-09-25 23:02 ` Andrew Morton
2006-09-25 22:50 ` Steve Dickson
2006-09-25 22:51 ` Nick Piggin
2006-09-25 23:14 ` Chuck Lever
2006-09-25 23:21 ` Nick Piggin
2006-09-26 0:01 ` Chuck Lever
2006-09-26 0:13 ` Nick Piggin
2006-09-26 1:33 ` Chuck Lever
2006-09-26 1:48 ` Nick Piggin
2006-09-28 16:26 ` Chuck Lever
2006-09-28 16:36 ` Andrew Morton
2006-09-28 16:40 ` Andrew Morton
2006-09-28 16:42 ` Chuck Lever
2006-09-28 17:03 ` Andrew Morton
2006-09-28 17:09 ` Chuck Lever [this message]
2006-09-29 0:37 ` Nick Piggin
2006-09-29 20:34 ` Chuck Lever
2006-09-29 20:45 ` Peter Zijlstra
2006-09-29 21:02 ` Chuck Lever
2006-09-29 21:17 ` Peter Zijlstra
2006-09-29 21:44 ` Andrew Morton
2006-09-29 21:48 ` Chuck Lever
2006-09-29 22:29 ` Andrew Morton
2006-09-29 23:05 ` Chuck Lever
2006-10-01 4:21 ` Chuck Lever
2006-10-02 12:01 ` Steve Dickson
2006-10-02 13:25 ` Trond Myklebust
2006-10-02 16:57 ` Andrew Morton
2006-10-02 17:02 ` Steve Dickson
2006-10-02 18:20 ` Andrew Morton
2006-10-02 19:02 ` Steve Dickson
2006-10-03 2:14 ` Chuck Lever
2006-10-03 4:18 ` Trond Myklebust
2006-10-03 4:24 ` Andrew Morton
2006-10-03 18:50 ` Chuck Lever
2006-10-03 19:10 ` Trond Myklebust
2006-10-03 19:21 ` Chuck Lever
2006-10-03 21:37 ` Andrew Morton
2006-10-04 19:29 ` Chuck Lever
2006-10-04 19:43 ` Andrew Morton
2006-10-04 19:53 ` Steve Dickson
2006-09-28 16:41 ` Chuck Lever
2006-09-26 6:25 ` Nick Piggin
2006-09-26 13:12 ` Chuck Lever
2006-09-27 4:47 ` Nick Piggin
2006-09-27 8:25 ` Andrew Morton
2006-09-27 8:39 ` Nick Piggin
2006-09-27 16:03 ` Andrew Morton
2006-09-27 15:54 ` Chuck Lever
2006-09-25 22:56 ` Chuck Lever
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=451C01C8.7020104@oracle.com \
--to=chuck.lever@oracle.com \
--cc=Trond.Myklebust@netapp.com \
--cc=akpm@osdl.org \
--cc=linux-mm@kvack.org \
--cc=nickpiggin@yahoo.com.au \
--cc=steved@redhat.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