Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp1877609iog; Tue, 14 Jun 2022 15:46:37 -0700 (PDT) X-Google-Smtp-Source: AGRyM1trjQwvcApPAWSVg5oPLOCmB0V91u+4G4+Ag7LbtlHoplP811pEyMd8hwKTbUiiHCWU57gc X-Received: by 2002:a05:6402:5008:b0:42d:c421:48c8 with SMTP id p8-20020a056402500800b0042dc42148c8mr8942360eda.422.1655246797407; Tue, 14 Jun 2022 15:46:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1655246797; cv=none; d=google.com; s=arc-20160816; b=K4t2WWyPV+ONZ3v1EFd6LHk+nNFcDe7BneGfV2tEAybNTMmf7Ej+PAyA2TWTH5/n9Y GH58XueUJIYWXWS9LN4FxMfEOuOA75KS+15DVfD8v5UmGWFl9Bc1M9qqqTWM7ie773dV 5LPdfQ+S/ykgIj5bPZpcCUwVgQIJRTYD5y/uSpXUkUlM1E+q3C2AVPwoaoy+GaPYMpc2 8DOs72tpdAPXqr0EtBMs7wFzqtAApU58n0XGjI/isD8Dk+6VvmbB9+pCSzLdGcsxW0PK xYSHuQ4Kt6QlS0B39+m01xAjLv/p59xzCVIHwFu8ZU9VbpHIL+mBIrlYH2Jo+KsrvHBU UCsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=pcfGmFDNSolJ8eSJC1uCp1o63Cj/f90LQSl1HRU51Ng=; b=n5L2MSUBVBR967QgJlzKLGKu7ecYXTk0x7mVZvYODLhHtPj1DFwrEiOQIgGULC2EJC OWP1OajW8L08rS+SYr+dd+yvpLgXc2keg1O6nwasqpIR+pUXtBd7Ty2SI+rad/FJf1ge hS3KJRdKKZw0Ux2a/TBVlhc0k+WnnzcYt4R0pEL9CzpgABi1b+SNZ+xnle3y2P+LtoCs vf6VPL5ieABmLSTrKlalARkr5NbbGGI8/oXmGDRAOP/Yqd+moiIB+gvfrcOddbnRsozW uUmOn/wpfRpsluHJGDROiNYwAoByMqtZ7CPo5hgAIkO9qBkk5LLoNz6Y9fzLdEoL6OWs 6VoA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=JtL8Am0b; 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=NONE dis=NONE) header.from=intel.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id r20-20020a05640251d400b0042dd3c79fd6si14848385edd.424.2022.06.14.15.45.50; Tue, 14 Jun 2022 15:46:37 -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=@intel.com header.s=Intel header.b=JtL8Am0b; 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=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243970AbiFNW0J (ORCPT + 99 others); Tue, 14 Jun 2022 18:26:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49282 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233939AbiFNW0I (ORCPT ); Tue, 14 Jun 2022 18:26:08 -0400 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CEE8F4D616 for ; Tue, 14 Jun 2022 15:26:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1655245566; x=1686781566; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=V/U0UGWsGGGf1nHKbOmX9I1mE/XGx/BcO0xINFHGrNA=; b=JtL8Am0bLdcxGyd+w9a11/2AXAXUm8e4r6YOGSpKUWJow69pRv86kfke H8P5dAF6cOkAg5hOvxieWVjAgb3qp6W95yO8FNtZEGuUTzdZN3EZN31f5 2vV+nDLw6xqSjiN7JMEDfAZGSR8+qSGxg/OsHn6Gz8Drg8djzVydFsk9W dyd1uA3y8UywmEA6a0QQNpwX1FzUJCaZejfXeYYxnbVpvA4EyBdSQdeIU Z1lhfcpXnvQ+jIu7PdFcttAdHseuZ/EBQJl8F3qofFRkNilLMmnvZBY4T YJV4NUnA3C1Yv/2NJ2WTvnkJs5hXCwRYStxHjf/15LOlTdcEqYHnDrlC+ w==; X-IronPort-AV: E=McAfee;i="6400,9594,10378"; a="259217320" X-IronPort-AV: E=Sophos;i="5.91,300,1647327600"; d="scan'208";a="259217320" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Jun 2022 15:26:06 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.91,300,1647327600"; d="scan'208";a="588724624" Received: from b04f130c83f2.jf.intel.com ([10.165.154.98]) by fmsmga007.fm.intel.com with ESMTP; 14 Jun 2022 15:26:05 -0700 From: Tim Chen To: linux-mm@kvack.org, akpm@linux-foundation.org Cc: Tim Chen , Wei Xu , Huang Ying , Greg Thelen , Yang Shi , Davidlohr Bueso , Brice Goglin , Michal Hocko , Linux Kernel Mailing List , Hesham Almatary , Dave Hansen , Jonathan Cameron , Alistair Popple , Dan Williams , Feng Tang , Jagdish Gediya , Baolin Wang , David Rientjes , "Aneesh Kumar K . V" , Shakeel Butt Subject: [RFC PATCH 0/3] Cgroup accounting of memory tier usage Date: Tue, 14 Jun 2022 15:25:32 -0700 Message-Id: X-Mailer: git-send-email 2.32.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-5.5 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 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 controlling usage of a top tiered memory by a cgroup, accounting of top tier memory usage is needed. This patch set implements the following: Patch 1 introduces interface and simple implementation to retrieve cgroup tiered memory usage Patch 2 introduces more efficient accounting with top tier memory page counter Patch 3 provides a sysfs interface to repot the the top tiered memory usage. The patchset works with Aneesh's v6 memory-tiering implementation [1]. It is a preparatory patch set before introducing features to control top tiered memory in cgroups. I'll like to first get feedback to see if (1) Controllng the topmost tiered memory is enough or (2) Multiple tiers at the top levels need to be grouped into "toptier" or (3) There are use cases not covered by (1) and (2). Thanks. Tim [1] https://lore.kernel.org/linux-mm/20220610135229.182859-1-aneesh.kumar@linux.ibm.com/ Tim Chen (3): mm/memory-tiers Add functions for tier memory usage in a cgroup mm/memory-tiers: Use page counter to track toptier memory usage mm/memory-tiers: Show toptier memory usage for cgroup include/linux/memcontrol.h | 1 + include/linux/memory-tiers.h | 2 + mm/memcontrol.c | 86 +++++++++++++++++++++++++++++++++++- mm/memory-tiers.c | 3 +- 4 files changed, 89 insertions(+), 3 deletions(-) -- 2.35.1