2012-05-25 16:12:24

by Chen Baozi

[permalink] [raw]
Subject: [PATCH] memcg: remove the unnecessary MEM_CGROUP_STAT_DATA

Since MEM_CGROUP_ON_MOVE has been removed, it comes to be redudant
to hold MEM_CGROUP_STAT_DATA to mark the end of data requires
synchronization.

Signed-off-by: Chen Baozi <[email protected]>
---
mm/memcontrol.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index f342778..446ca94 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -88,7 +88,6 @@ enum mem_cgroup_stat_index {
MEM_CGROUP_STAT_RSS, /* # of pages charged as anon rss */
MEM_CGROUP_STAT_FILE_MAPPED, /* # of pages charged as file rss */
MEM_CGROUP_STAT_SWAPOUT, /* # of pages, swapped out */
- MEM_CGROUP_STAT_DATA, /* end of data requires synchronization */
MEM_CGROUP_STAT_NSTATS,
};

@@ -2139,7 +2138,7 @@ static void mem_cgroup_drain_pcp_counter(struct mem_cgroup *memcg, int cpu)
int i;

spin_lock(&memcg->pcp_counter_lock);
- for (i = 0; i < MEM_CGROUP_STAT_DATA; i++) {
+ for (i = 0; i < MEM_CGROUP_STAT_NSTATS; i++) {
long x = per_cpu(memcg->stat->count[i], cpu);

per_cpu(memcg->stat->count[i], cpu) = 0;
--
1.7.1


2012-05-28 13:39:23

by Michal Hocko

[permalink] [raw]
Subject: Re: [PATCH] memcg: remove the unnecessary MEM_CGROUP_STAT_DATA

On Fri 25-05-12 16:11:41, Chen Baozi wrote:
> Since MEM_CGROUP_ON_MOVE has been removed, it comes to be redudant
> to hold MEM_CGROUP_STAT_DATA to mark the end of data requires
> synchronization.

A similar patch has been already posted by Johannes 2 weeks ago
(http://www.gossamer-threads.com/lists/linux/kernel/1535888) and it
should appear in -next soonish.

>
> Signed-off-by: Chen Baozi <[email protected]>
> ---
> mm/memcontrol.c | 3 +--
> 1 files changed, 1 insertions(+), 2 deletions(-)
>
> diff --git a/mm/memcontrol.c b/mm/memcontrol.c
> index f342778..446ca94 100644
> --- a/mm/memcontrol.c
> +++ b/mm/memcontrol.c
> @@ -88,7 +88,6 @@ enum mem_cgroup_stat_index {
> MEM_CGROUP_STAT_RSS, /* # of pages charged as anon rss */
> MEM_CGROUP_STAT_FILE_MAPPED, /* # of pages charged as file rss */
> MEM_CGROUP_STAT_SWAPOUT, /* # of pages, swapped out */
> - MEM_CGROUP_STAT_DATA, /* end of data requires synchronization */
> MEM_CGROUP_STAT_NSTATS,
> };
>
> @@ -2139,7 +2138,7 @@ static void mem_cgroup_drain_pcp_counter(struct mem_cgroup *memcg, int cpu)
> int i;
>
> spin_lock(&memcg->pcp_counter_lock);
> - for (i = 0; i < MEM_CGROUP_STAT_DATA; i++) {
> + for (i = 0; i < MEM_CGROUP_STAT_NSTATS; i++) {
> long x = per_cpu(memcg->stat->count[i], cpu);
>
> per_cpu(memcg->stat->count[i], cpu) = 0;
> --
> 1.7.1
>
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to [email protected]. 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:"[email protected]"> [email protected] </a>

--
Michal Hocko
SUSE Labs
SUSE LINUX s.r.o.
Lihovarska 1060/12
190 00 Praha 9
Czech Republic

2012-05-28 17:22:50

by Chen Baozi

[permalink] [raw]
Subject: Re: [PATCH] memcg: remove the unnecessary MEM_CGROUP_STAT_DATA


On May 28, 2012, at 9:39 PM, Michal Hocko wrote:

> On Fri 25-05-12 16:11:41, Chen Baozi wrote:
>> Since MEM_CGROUP_ON_MOVE has been removed, it comes to be redudant
>> to hold MEM_CGROUP_STAT_DATA to mark the end of data requires
>> synchronization.
>
> A similar patch has been already posted by Johannes 2 weeks ago
> (http://www.gossamer-threads.com/lists/linux/kernel/1535888) and it
> should appear in -next soonish.
Oh, I see, Thanks for informing.

Baozi

>
>>
>> Signed-off-by: Chen Baozi <[email protected]>
>> ---
>> mm/memcontrol.c | 3 +--
>> 1 files changed, 1 insertions(+), 2 deletions(-)
>>
>> diff --git a/mm/memcontrol.c b/mm/memcontrol.c
>> index f342778..446ca94 100644
>> --- a/mm/memcontrol.c
>> +++ b/mm/memcontrol.c
>> @@ -88,7 +88,6 @@ enum mem_cgroup_stat_index {
>> MEM_CGROUP_STAT_RSS, /* # of pages charged as anon rss */
>> MEM_CGROUP_STAT_FILE_MAPPED, /* # of pages charged as file rss */
>> MEM_CGROUP_STAT_SWAPOUT, /* # of pages, swapped out */
>> - MEM_CGROUP_STAT_DATA, /* end of data requires synchronization */
>> MEM_CGROUP_STAT_NSTATS,
>> };
>>
>> @@ -2139,7 +2138,7 @@ static void mem_cgroup_drain_pcp_counter(struct mem_cgroup *memcg, int cpu)
>> int i;
>>
>> spin_lock(&memcg->pcp_counter_lock);
>> - for (i = 0; i < MEM_CGROUP_STAT_DATA; i++) {
>> + for (i = 0; i < MEM_CGROUP_STAT_NSTATS; i++) {
>> long x = per_cpu(memcg->stat->count[i], cpu);
>>
>> per_cpu(memcg->stat->count[i], cpu) = 0;
>> --
>> 1.7.1
>>
>> --
>> To unsubscribe, send a message with 'unsubscribe linux-mm' in
>> the body to [email protected]. 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:"[email protected]"> [email protected] </a>
>
> --
> Michal Hocko
> SUSE Labs
> SUSE LINUX s.r.o.
> Lihovarska 1060/12
> 190 00 Praha 9
> Czech Republic