Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp32500ybl; Tue, 3 Dec 2019 20:49:27 -0800 (PST) X-Google-Smtp-Source: APXvYqxDZHJnAmPCbwgPrrMI5WQ1ikTtl0V1/kbe2Xh0AQVfDJoS4bcQyuOOLLfCZeBgVmROnyIA X-Received: by 2002:a9d:58c9:: with SMTP id s9mr1146826oth.182.1575434967550; Tue, 03 Dec 2019 20:49:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1575434967; cv=none; d=google.com; s=arc-20160816; b=B1acjRpgcM+c6841tJZE1sNe05pWc1K4xepR+TxLkZfK8/Qvs/6y7ZgcOn9aArxNNX DmUWn8bw/sdCEm4gNxRlPRJhYb3mSr0MMwVz8ule+Ns7o4G60u7QwNb5vFXeeIfrkUZ+ 949vvPI0S2U/rz4RtSxtv1eLrfqeneN/SFLC4rCKn2jqSRZejaO86E5GSaxk5YBqKnwA 2wpNqjqJ0xsSnAsVKaonqyGakOjUcVDxcLJBDWDt9it5ceZA/2MN5G2AURzDRFN515Wg 8/B++HOf/p4sn/PyuAvFeApOK1ChLqYBwP2xi0M65yiVmIMChLCm9kI3sac1c4hW5h6T wFxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from; bh=esoQONUDpmIxWOSz4MjglRTcSr+QWDBWqmwyX+EAnds=; b=jMFRAqsVec7/FdHPTIcbReMbGDQ1OjjRV6z6/3KhwUnhozGQXCn0/BmhOmJKHsL15e vr0n3JlryvrX46uZxR/R1oNtLOkke03al2BDVRo+9FOXRuvhEtPPuo2Vb05B6yqPpJHB NAcEcYdA+Ex4pyiyyfqUxwD8vzxZBnEV4JXwkkOknO57eKNfSLaqJHm805wCzGjciyEW fsOZy7nydz40K6iS/68fUjaxPt9Z13WIwG7z0Vi9EQkAZyCy4Fbv1FRirySiY+//KhUK QOvBWduCom/Wnx6vQL0HhtAEPuekGhPYW5rGzxTVmhBTqdA3zvdIMHtKFrRABJXD1im/ QgTw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t195si524124oih.209.2019.12.03.20.49.13; Tue, 03 Dec 2019 20:49:27 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727070AbfLDErl (ORCPT + 99 others); Tue, 3 Dec 2019 23:47:41 -0500 Received: from lgeamrelo11.lge.com ([156.147.23.51]:60500 "EHLO lgeamrelo11.lge.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726901AbfLDErl (ORCPT ); Tue, 3 Dec 2019 23:47:41 -0500 Received: from unknown (HELO lgeamrelo02.lge.com) (156.147.1.126) by 156.147.23.51 with ESMTP; 4 Dec 2019 13:47:39 +0900 X-Original-SENDERIP: 156.147.1.126 X-Original-MAILFROM: chanho.min@lge.com Received: from unknown (HELO localhost.localdomain) (10.178.31.96) by 156.147.1.126 with ESMTP; 4 Dec 2019 13:47:38 +0900 X-Original-SENDERIP: 10.178.31.96 X-Original-MAILFROM: chanho.min@lge.com From: Chanho Min To: Minchan Kim , Nitin Gupta , Sergey Senozhatsky , Andrew Morton Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, seungho1.park@lge.com, Inkyu Hwang , Jinsuk Choi , stable@vger.kernel.org, Chanho Min Subject: [PATCH RESEND] mm/zsmalloc.c: fix the migrated zspage statistics. Date: Wed, 4 Dec 2019 13:47:21 +0900 Message-Id: <1575434841-48009-1-git-send-email-chanho.min@lge.com> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When zspage is migrated to the other zone, the zone page state should be updated as well, otherwise the NR_ZSPAGE for each zone shows wrong counts including proc/zoneinfo in practice. Cc: [4.9+] Fixes: 91537fee0013 ("mm: add NR_ZSMALLOC to vmstat") Signed-off-by: Chanho Min Signed-off-by: Jinsuk Choi Reviewed-by: Sergey Senozhatsky Acked-by: Minchan Kim --- mm/zsmalloc.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c index 2b2b9aa..22d17ec 100644 --- a/mm/zsmalloc.c +++ b/mm/zsmalloc.c @@ -2069,6 +2069,11 @@ static int zs_page_migrate(struct address_space *mapping, struct page *newpage, zs_pool_dec_isolated(pool); } + if (page_zone(newpage) != page_zone(page)) { + dec_zone_page_state(page, NR_ZSPAGES); + inc_zone_page_state(newpage, NR_ZSPAGES); + } + reset_page(page); put_page(page); page = newpage; -- 2.7.4