From: Konstantin Khlebnikov <khlebnikov@openvz.org>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: "linux-mm@kvack.org" <linux-mm@kvack.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Dave Chinner <david@fromorbit.com>
Subject: Re: [PATCH] mm: account reaped page cache on inode cache pruning
Date: Fri, 18 Nov 2011 10:42:50 +0400 [thread overview]
Message-ID: <4EC5FE6A.3080003@openvz.org> (raw)
In-Reply-To: <20111117162322.1c3e3d05.akpm@linux-foundation.org>
Andrew Morton wrote:
> On Wed, 16 Nov 2011 17:47:13 +0300
> Konstantin Khlebnikov<khlebnikov@openvz.org> wrote:
>
>> Inode cache pruning indirectly reclaims page-cache by invalidating mapping pages.
>> Let's account them into reclaim-state to notice this progress in memory reclaimer.
>>
>> Signed-off-by: Konstantin Khlebnikov<khlebnikov@openvz.org>
>> ---
>> fs/inode.c | 2 ++
>> 1 files changed, 2 insertions(+), 0 deletions(-)
>>
>> diff --git a/fs/inode.c b/fs/inode.c
>> index ee4e66b..1f6c48d 100644
>> --- a/fs/inode.c
>> +++ b/fs/inode.c
>> @@ -692,6 +692,8 @@ void prune_icache_sb(struct super_block *sb, int nr_to_scan)
>> else
>> __count_vm_events(PGINODESTEAL, reap);
>> spin_unlock(&sb->s_inode_lru_lock);
>> + if (current->reclaim_state)
>> + current->reclaim_state->reclaimed_slab += reap;
>>
>> dispose_list(&freeable);
>> }
>
> hm, yes, I suppose we should.
>
> It seems to be cheating to use the "reclaimed_slab" field for this.
> Perhaps it would be cleaner to add an additional field to reclaim_state
> for non-slab pages which were also reclaimed. That's a cosmetic thing
> and I guess we don't need to go that far, not sure...
Do we really need separate on-stack reclaim_state structure with single field?
Maybe replace it with single long (or even unsigned int) .reclaimed_pages field on task_struct
and account reclaimed pages unconditionally.
>
>
--
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/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: Konstantin Khlebnikov <khlebnikov@openvz.org>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: "linux-mm@kvack.org" <linux-mm@kvack.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Dave Chinner <david@fromorbit.com>
Subject: Re: [PATCH] mm: account reaped page cache on inode cache pruning
Date: Fri, 18 Nov 2011 10:42:50 +0400 [thread overview]
Message-ID: <4EC5FE6A.3080003@openvz.org> (raw)
In-Reply-To: <20111117162322.1c3e3d05.akpm@linux-foundation.org>
Andrew Morton wrote:
> On Wed, 16 Nov 2011 17:47:13 +0300
> Konstantin Khlebnikov<khlebnikov@openvz.org> wrote:
>
>> Inode cache pruning indirectly reclaims page-cache by invalidating mapping pages.
>> Let's account them into reclaim-state to notice this progress in memory reclaimer.
>>
>> Signed-off-by: Konstantin Khlebnikov<khlebnikov@openvz.org>
>> ---
>> fs/inode.c | 2 ++
>> 1 files changed, 2 insertions(+), 0 deletions(-)
>>
>> diff --git a/fs/inode.c b/fs/inode.c
>> index ee4e66b..1f6c48d 100644
>> --- a/fs/inode.c
>> +++ b/fs/inode.c
>> @@ -692,6 +692,8 @@ void prune_icache_sb(struct super_block *sb, int nr_to_scan)
>> else
>> __count_vm_events(PGINODESTEAL, reap);
>> spin_unlock(&sb->s_inode_lru_lock);
>> + if (current->reclaim_state)
>> + current->reclaim_state->reclaimed_slab += reap;
>>
>> dispose_list(&freeable);
>> }
>
> hm, yes, I suppose we should.
>
> It seems to be cheating to use the "reclaimed_slab" field for this.
> Perhaps it would be cleaner to add an additional field to reclaim_state
> for non-slab pages which were also reclaimed. That's a cosmetic thing
> and I guess we don't need to go that far, not sure...
Do we really need separate on-stack reclaim_state structure with single field?
Maybe replace it with single long (or even unsigned int) .reclaimed_pages field on task_struct
and account reclaimed pages unconditionally.
>
>
next prev parent reply other threads:[~2011-11-18 6:43 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-16 14:47 [PATCH] mm: account reaped page cache on inode cache pruning Konstantin Khlebnikov
2011-11-16 14:47 ` Konstantin Khlebnikov
2011-11-18 0:23 ` Andrew Morton
2011-11-18 0:23 ` Andrew Morton
2011-11-18 6:42 ` Konstantin Khlebnikov [this message]
2011-11-18 6:42 ` Konstantin Khlebnikov
2011-11-18 6:52 ` Andrew Morton
2011-11-18 6:52 ` Andrew Morton
2011-11-18 7:32 ` Konstantin Khlebnikov
2011-11-18 7:32 ` Konstantin Khlebnikov
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=4EC5FE6A.3080003@openvz.org \
--to=khlebnikov@openvz.org \
--cc=akpm@linux-foundation.org \
--cc=david@fromorbit.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.