diff mbox series

mm: Fix recent_rotated history

Message ID 155905972210.26456.11178359431724024112.stgit@localhost.localdomain (mailing list archive)
State New, archived
Headers show
Series mm: Fix recent_rotated history | expand

Commit Message

Kirill Tkhai May 28, 2019, 4:09 p.m. UTC
Johannes pointed that after commit 886cf1901db9
we lost all zone_reclaim_stat::recent_rotated
history. This commit fixes that.

Fixes: 886cf1901db9 "mm: move recent_rotated pages calculation to shrink_inactive_list()"
Reported-by: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
---
 mm/vmscan.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Kirill Tkhai May 29, 2019, 8:30 a.m. UTC | #1
Missed Johannes :(

CC

On 28.05.2019 19:09, Kirill Tkhai wrote:
> Johannes pointed that after commit 886cf1901db9
> we lost all zone_reclaim_stat::recent_rotated
> history. This commit fixes that.
> 
> Fixes: 886cf1901db9 "mm: move recent_rotated pages calculation to shrink_inactive_list()"
> Reported-by: Johannes Weiner <hannes@cmpxchg.org>
> Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
> ---
>  mm/vmscan.c |    4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/mm/vmscan.c b/mm/vmscan.c
> index d9c3e873eca6..1d49329a4d7d 100644
> --- a/mm/vmscan.c
> +++ b/mm/vmscan.c
> @@ -1953,8 +1953,8 @@ shrink_inactive_list(unsigned long nr_to_scan, struct lruvec *lruvec,
>  	if (global_reclaim(sc))
>  		__count_vm_events(item, nr_reclaimed);
>  	__count_memcg_events(lruvec_memcg(lruvec), item, nr_reclaimed);
> -	reclaim_stat->recent_rotated[0] = stat.nr_activate[0];
> -	reclaim_stat->recent_rotated[1] = stat.nr_activate[1];
> +	reclaim_stat->recent_rotated[0] += stat.nr_activate[0];
> +	reclaim_stat->recent_rotated[1] += stat.nr_activate[1];
>  
>  	move_pages_to_lru(lruvec, &page_list);
>  
>
Daniel Jordan May 29, 2019, 2:01 p.m. UTC | #2
On Wed, May 29, 2019 at 11:30:09AM +0300, Kirill Tkhai wrote:
> Missed Johannes :(
> 
> CC
> 
> On 28.05.2019 19:09, Kirill Tkhai wrote:
> > Johannes pointed that after commit 886cf1901db9
> > we lost all zone_reclaim_stat::recent_rotated
> > history. This commit fixes that.

Ugh, good catch.

I took another pass through this series but didn't notice anything else.

> > 
> > Fixes: 886cf1901db9 "mm: move recent_rotated pages calculation to shrink_inactive_list()"
> > Reported-by: Johannes Weiner <hannes@cmpxchg.org>
> > Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
> > ---
> >  mm/vmscan.c |    4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/mm/vmscan.c b/mm/vmscan.c
> > index d9c3e873eca6..1d49329a4d7d 100644
> > --- a/mm/vmscan.c
> > +++ b/mm/vmscan.c
> > @@ -1953,8 +1953,8 @@ shrink_inactive_list(unsigned long nr_to_scan, struct lruvec *lruvec,
> >  	if (global_reclaim(sc))
> >  		__count_vm_events(item, nr_reclaimed);
> >  	__count_memcg_events(lruvec_memcg(lruvec), item, nr_reclaimed);
> > -	reclaim_stat->recent_rotated[0] = stat.nr_activate[0];
> > -	reclaim_stat->recent_rotated[1] = stat.nr_activate[1];
> > +	reclaim_stat->recent_rotated[0] += stat.nr_activate[0];
> > +	reclaim_stat->recent_rotated[1] += stat.nr_activate[1];
> >  
> >  	move_pages_to_lru(lruvec, &page_list);
> >  
> > 
>
Michal Hocko May 29, 2019, 3:38 p.m. UTC | #3
On Tue 28-05-19 19:09:02, Kirill Tkhai wrote:
> Johannes pointed that after commit 886cf1901db9
> we lost all zone_reclaim_stat::recent_rotated
> history. This commit fixes that.
> 
> Fixes: 886cf1901db9 "mm: move recent_rotated pages calculation to shrink_inactive_list()"
> Reported-by: Johannes Weiner <hannes@cmpxchg.org>
> Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>

I didn't get to review the original bug series but this one looks
obviously correct.

Acked-by: Michal Hocko <mhocko@suse.com>

> ---
>  mm/vmscan.c |    4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/mm/vmscan.c b/mm/vmscan.c
> index d9c3e873eca6..1d49329a4d7d 100644
> --- a/mm/vmscan.c
> +++ b/mm/vmscan.c
> @@ -1953,8 +1953,8 @@ shrink_inactive_list(unsigned long nr_to_scan, struct lruvec *lruvec,
>  	if (global_reclaim(sc))
>  		__count_vm_events(item, nr_reclaimed);
>  	__count_memcg_events(lruvec_memcg(lruvec), item, nr_reclaimed);
> -	reclaim_stat->recent_rotated[0] = stat.nr_activate[0];
> -	reclaim_stat->recent_rotated[1] = stat.nr_activate[1];
> +	reclaim_stat->recent_rotated[0] += stat.nr_activate[0];
> +	reclaim_stat->recent_rotated[1] += stat.nr_activate[1];
>  
>  	move_pages_to_lru(lruvec, &page_list);
>  
>
Johannes Weiner May 29, 2019, 3:44 p.m. UTC | #4
On Tue, May 28, 2019 at 07:09:02PM +0300, Kirill Tkhai wrote:
> Johannes pointed that after commit 886cf1901db9
> we lost all zone_reclaim_stat::recent_rotated
> history. This commit fixes that.
> 
> Fixes: 886cf1901db9 "mm: move recent_rotated pages calculation to shrink_inactive_list()"
> Reported-by: Johannes Weiner <hannes@cmpxchg.org>
> Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>

Acked-by: Johannes Weiner <hannes@cmpxchg.org>
diff mbox series

Patch

diff --git a/mm/vmscan.c b/mm/vmscan.c
index d9c3e873eca6..1d49329a4d7d 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -1953,8 +1953,8 @@  shrink_inactive_list(unsigned long nr_to_scan, struct lruvec *lruvec,
 	if (global_reclaim(sc))
 		__count_vm_events(item, nr_reclaimed);
 	__count_memcg_events(lruvec_memcg(lruvec), item, nr_reclaimed);
-	reclaim_stat->recent_rotated[0] = stat.nr_activate[0];
-	reclaim_stat->recent_rotated[1] = stat.nr_activate[1];
+	reclaim_stat->recent_rotated[0] += stat.nr_activate[0];
+	reclaim_stat->recent_rotated[1] += stat.nr_activate[1];
 
 	move_pages_to_lru(lruvec, &page_list);