Received: by 2002:ac0:e350:0:0:0:0:0 with SMTP id g16csp166412imn; Thu, 4 Aug 2022 00:55:34 -0700 (PDT) X-Google-Smtp-Source: AA6agR4fAkWVPRTTc/eTT54HuN6gjGvIiq3HYgIPHKFQX5XphRhL/2dXGKl3GXLVDPcAdNe9w6q3 X-Received: by 2002:a17:907:7205:b0:72f:38ec:f70e with SMTP id dr5-20020a170907720500b0072f38ecf70emr533049ejc.130.1659599734080; Thu, 04 Aug 2022 00:55:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1659599734; cv=none; d=google.com; s=arc-20160816; b=mNxtEJB0CSO4CVys+X5tZJOD3BlOVTXCRoPuPajOopyId2T6mkCVAsfaHg0mRQWPUr X3LGknmtwt/wMRaFbN2vzIDdkEFK61m888k4g5Lk0y6ONzH4SZ+/Z1JBVbRF9a/+Dxrk 9YVcNKTbFrukG7VmwlXU3zXoFll/nDbYhjv9onQeCQeg0sUNWb8HUIu3kT0NLD7hV8nP 9srg+iBkCTVnEYUV9zDRx3QzdrRncvyZT+4h/Q4XzfH7nsM/trRQTvbPMfNpB7Fx8G29 bRrYzcUsiN3zuLNBCL/lgHzZlKT5OtVkpSBK2hU6COkDELteg/kCHH7IY7/D8oUVnSmJ nn5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:content-disposition:mime-version :message-id:subject:cc:to:from:date:dkim-signature; bh=7tcCc1HXDiltKOsKG0LhJndyX0Ozk+UGCrcm5eA/Ky8=; b=VzyWnKBPQu3r5CHerNq9m0CjsopBf2Jk5qYBukt2X8gUaJWMFKQUjb/MANktXjqkDS XYbLKghUSNcoc3njgYbKDkwpA8u2WYgr91bE11Iu5FUccj/KYXgvyXHwCeWAvYbFuIXv 6midHX0Cop5VcouSWxbzzPn9v1yHSWqqPOLgE/pGSfLOme+2dc9nH9JAZWoNtoSv4H9i C6xSv45QVu1GOo1u0VDYYkdCI9NBoZanY8EgSsRjAt3qDRbb8Ha8rx8/4zkTpwUt9ex+ PyjLI7hjdiTEepppEXwxThhaNLpFkcmLLMAuyIppiMXCSub3yYSPpvixT2cgcabV5VFY GwTA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=U8X78CLZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id wu4-20020a170906eec400b00730a9653566si88943ejb.792.2022.08.04.00.55.07; Thu, 04 Aug 2022 00:55:34 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=U8X78CLZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239068AbiHDHrg (ORCPT + 99 others); Thu, 4 Aug 2022 03:47:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35402 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229884AbiHDHrf (ORCPT ); Thu, 4 Aug 2022 03:47:35 -0400 Received: from mail-pg1-x536.google.com (mail-pg1-x536.google.com [IPv6:2607:f8b0:4864:20::536]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5AABF33A03 for ; Thu, 4 Aug 2022 00:47:34 -0700 (PDT) Received: by mail-pg1-x536.google.com with SMTP id r186so17253101pgr.2 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=uOe2tpaCH5WBAQ1/0qxZvVs8+EmDBZefdTdsRKBJn6MOKlJIqohIN4nz+JBcBT0x2k bTpD3GegUQpkZDpWh1TwerF3YCSROZ0AlzfnL3Lh73kUj1pjjm2RWUwtIMYS9RlNCr5R kV6sk5xHlhMIp5jIqHaREOsTLVeKC3zCzqktHPS0KllAuJLVxe4ju/5nBthe39/Z+lUj 48IVsK7OO8g3kOxQeCzLpPkoDpDzth3nAFQ34F1gQcJAtZrEP3+IRaPfz37coAVxN/bK 5GccAhq2G79i1OZ4veESO+xMrW9dhlu3NFCwx0mk5s4BEHun4n0OwGdzZUCDwjkx57xq Ylwg== X-Gm-Message-State: ACgBeo3yGxo99Fw6R1bDKDKTNfFyfIl++E3C3B5QfD/7GjHr+BSGUTmo ryym1pQ3j71XwML1jFg1OXpMf91Mq1c= 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-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.12.1 (2019-06-15) X-Spam-Status: No, score=1.2 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Level: * X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 --- 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 */ -- 2.35.1