The unit of NR_ANON_THPS is HPAGE_PMD_NR already. So it should inc/dec
by one rather than nr_pages.

Fixes: 468c398233da ("mm: memcontrol: switch to native NR_ANON_THPS counter")
Signed-off-by: Muchun Song <songmuc...@bytedance.com>
---
 mm/memcontrol.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index 22d9bd688d6d..695dedf8687a 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -5634,10 +5634,8 @@ static int mem_cgroup_move_account(struct page *page,
                        __mod_lruvec_state(from_vec, NR_ANON_MAPPED, -nr_pages);
                        __mod_lruvec_state(to_vec, NR_ANON_MAPPED, nr_pages);
                        if (PageTransHuge(page)) {
-                               __mod_lruvec_state(from_vec, NR_ANON_THPS,
-                                                  -nr_pages);
-                               __mod_lruvec_state(to_vec, NR_ANON_THPS,
-                                                  nr_pages);
+                               __dec_lruvec_state(from_vec, NR_ANON_THPS);
+                               __inc_lruvec_state(to_vec, NR_ANON_THPS);
                        }
 
                }
-- 
2.11.0

Reply via email to