From patchwork Thu Aug 4 07:47:30 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hao Lee X-Patchwork-Id: 12936171 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2AEC3C19F2C for ; Thu, 4 Aug 2022 07:47:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B846C8E0002; Thu, 4 Aug 2022 03:47:35 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B0C498E0001; Thu, 4 Aug 2022 03:47:35 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9AC518E0002; Thu, 4 Aug 2022 03:47:35 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 87FB98E0001 for ; Thu, 4 Aug 2022 03:47:35 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 5E20D1616D6 for ; Thu, 4 Aug 2022 07:47:35 +0000 (UTC) X-FDA: 79761130470.22.BFD0C75 Received: from mail-pg1-f176.google.com (mail-pg1-f176.google.com [209.85.215.176]) by imf17.hostedemail.com (Postfix) with ESMTP id DB75B40116 for ; Thu, 4 Aug 2022 07:47:34 +0000 (UTC) Received: by mail-pg1-f176.google.com with SMTP id bf13so17234738pgb.11 for ; Thu, 04 Aug 2022 00:47:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=user-agent:content-disposition:mime-version:message-id:subject:cc :to:from:date:from:to:cc; bh=7tcCc1HXDiltKOsKG0LhJndyX0Ozk+UGCrcm5eA/Ky8=; b=U8X78CLZM79QXisWFnZ5405VtyFR7FqLFDhV7QPrLomfUmf+ZqotwUmc0OXuCuJf4E xFRTLHES1yT4ERdCZd3arOQvJn0blUbJ991OM6O3H+PsYOZz/EEi/4i8JO3kL5+pvkd3 NapP8iStNpMSCvst7rN5yfWfCNfhOxMe8O7Q8ls5Tev3yXCeg6IgI5tDBNce5giFsFpT xdKYCIMRGW4Y4ZF/bf2sZi6V9q1TIqaYICy+u+iI2Z7reVH8+z7jAyyrL9QHI/O5guLS lrNPO66eCxGxN7KNtVHiHZoP6i8FFde+CpkDBas9GXhaigqx4zEnOz+83RMA+eRwLPAT hEew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=user-agent:content-disposition:mime-version:message-id:subject:cc :to:from:date:x-gm-message-state:from:to:cc; bh=7tcCc1HXDiltKOsKG0LhJndyX0Ozk+UGCrcm5eA/Ky8=; b=b9GfcsL6G0BMD7djHMUNsw/tazYw4oCUD+xVzJUEfpCBmniQzH6IGX3RauKT6AHoVZ fgaFaPr0ODRt7J+MkoJzl6ZKbbbZIv7iz9WT3XFgPl7SdpKX8xgiAp6/HCculc+lb4xB DJzUiXzzOVekciK6N3Z5mLRJV+VPeU0/Z0qP4e8TNyZG98ejWI9ZAlNdUajMmULJ2mYu 4mG2JT28VAEwpqajaq0SkFG6DBphuQv94NzpxJEpmxwCqPbv80Lhy/UcepQ3BmRXeffH gzKoQWd29/8ESFqvnVKVqrE+4XhKvhMsmCdAbp2AB+2+TyE2mt/MhwE/i3ufey+QdWfM NHIw== X-Gm-Message-State: ACgBeo2Cw9oERpS1C/rChz717Mb+WoZbBegHqhfUf2y5Itslwx9d7YEl y7fdpUzQfNDA87FGgXqCo18= X-Google-Smtp-Source: AA6agR4qD+uuXyUM5evi3dnEV0EKH6Ed9kcArUhkruGsOeyWsG5Qem0FmA1uzRrwqyRpMEXLpjr8OQ== X-Received: by 2002:a63:e4f:0:b0:41a:9472:eca0 with SMTP id 15-20020a630e4f000000b0041a9472eca0mr617331pgo.623.1659599253624; Thu, 04 Aug 2022 00:47:33 -0700 (PDT) Received: from haolee.io ([2600:3c01::f03c:91ff:fe02:b162]) by smtp.gmail.com with ESMTPSA id y18-20020a170902b49200b0016bdcb8fbcdsm205697plr.47.2022.08.04.00.47.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 Aug 2022 00:47:32 -0700 (PDT) Date: Thu, 4 Aug 2022 07:47:30 +0000 From: Hao Lee To: akpm@linux-foundation.org Cc: david@redhat.com, yang.shi@linux.alibaba.com, hannes@cmpxchg.org, haolee.swjtu@gmail.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: [PATCH] mm: add DEVICE_ZONE to FOR_ALL_ZONES Message-ID: <20220804074730.GA3269@haolee.io> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.12.1 (2019-06-15) ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1659599254; a=rsa-sha256; cv=none; b=Y+agufGaJuqGl9+h2lnh448PxfAPEUKMzzNhrOWnnXpnvEGCbZUpodJBM3lQKwPmujz/Ht V/J5lyeVjSFzsOr9TV7JtW1Dst/0DqpcVl3C7GFYLzUMRKrbLxHEamPE7QpCFhQeO9q7lP ArQpnz+UQYCg3hGMEftaWJItY/RNJyI= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=U8X78CLZ; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf17.hostedemail.com: domain of haolee.swjtu@gmail.com designates 209.85.215.176 as permitted sender) smtp.mailfrom=haolee.swjtu@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1659599254; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=7tcCc1HXDiltKOsKG0LhJndyX0Ozk+UGCrcm5eA/Ky8=; b=Xd5+WJnJEZwERGe+5Ko8RAe4f7QriZP6oGFtnCeLUevj2cvkFAebzczoq63fYqOLqsqfDf t5YKap2k7ece8ZMsa22ZKmdshE87CBH2ZmabiuKVNHQzZlCxBsEs64iUBCHLRrR++E69OO ET6atsKNzGDkxqX8fMVBUP7tkIdAUrU= Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=U8X78CLZ; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf17.hostedemail.com: domain of haolee.swjtu@gmail.com designates 209.85.215.176 as permitted sender) smtp.mailfrom=haolee.swjtu@gmail.com X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: DB75B40116 X-Rspam-User: X-Stat-Signature: 9bhynmzkmayyyrs5mw53tarzhcck58th X-HE-Tag: 1659599254-264387 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: FOR_ALL_ZONES should be consistent with enum zone_type. Otherwise, __count_zid_vm_events have the potential to add count to wrong item when zid is ZONE_DEVICE. Signed-off-by: Hao Lee Reported-by: kernel test robot Reported-by: kernel test robot Reported-by: kernel test robot --- include/linux/vm_event_item.h | 9 ++++++++- mm/vmstat.c | 9 ++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/include/linux/vm_event_item.h b/include/linux/vm_event_item.h index 7b2363388bfa..bcd57ab55413 100644 --- a/include/linux/vm_event_item.h +++ b/include/linux/vm_event_item.h @@ -20,7 +20,14 @@ #define HIGHMEM_ZONE(xx) #endif -#define FOR_ALL_ZONES(xx) DMA_ZONE(xx) DMA32_ZONE(xx) xx##_NORMAL, HIGHMEM_ZONE(xx) xx##_MOVABLE +#ifdef CONFIG_ZONE_DEVICE +#define DEVICE_ZONE(xx) xx##_DEVICE +#else +#define DEVICE_ZONE(xx) +#endif + +#define FOR_ALL_ZONES(xx) (DMA_ZONE(xx) DMA32_ZONE(xx) xx##_NORMAL, \ + HIGHMEM_ZONE(xx) xx##_MOVABLE, DEVICE_ZONE(xx)) enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT, FOR_ALL_ZONES(PGALLOC), diff --git a/mm/vmstat.c b/mm/vmstat.c index 4057372745d0..5ccaeac44e61 100644 --- a/mm/vmstat.c +++ b/mm/vmstat.c @@ -1167,8 +1167,15 @@ int fragmentation_index(struct zone *zone, unsigned int order) #define TEXT_FOR_HIGHMEM(xx) #endif +#ifdef CONFIG_ZONE_DEVICE +#define TEXT_FOR_DEVICE(xx) xx "_device", +#else +#define TEXT_FOR_DEVICE(xx) +#endif + #define TEXTS_FOR_ZONES(xx) TEXT_FOR_DMA(xx) TEXT_FOR_DMA32(xx) xx "_normal", \ - TEXT_FOR_HIGHMEM(xx) xx "_movable", + TEXT_FOR_HIGHMEM(xx) xx "_movable", \ + TEXT_FOR_DEVICE(xx) const char * const vmstat_text[] = { /* enum zone_stat_item counters */