From: "Moger, Babu" <babu.moger@amd.com>
To: corbet@lwn.net, reinette.chatre@intel.com, tglx@linutronix.de,
mingo@redhat.com, bp@alien8.de
Cc: fenghua.yu@intel.com, dave.hansen@linux.intel.com,
x86@kernel.org, hpa@zytor.com, paulmck@kernel.org,
akpm@linux-foundation.org, quic_neeraju@quicinc.com,
rdunlap@infradead.org, damien.lemoal@opensource.wdc.com,
songmuchun@bytedance.com, peterz@infradead.org,
jpoimboe@kernel.org, pbonzini@redhat.com,
chang.seok.bae@intel.com, pawan.kumar.gupta@linux.intel.com,
jmattson@google.com, daniel.sneddon@linux.intel.com,
sandipan.das@amd.com, tony.luck@intel.com, james.morse@arm.com,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
bagasdotme@gmail.com, eranian@google.com
Subject: Re: [PATCH v8 00/13] Support for AMD QoS new features
Date: Tue, 15 Nov 2022 14:50:32 -0600 [thread overview]
Message-ID: <f69a6454-a8c0-8ce1-0356-cde0d8b89c2a@amd.com> (raw)
In-Reply-To: <166759188265.3281208.11769277079826754455.stgit@bmoger-ubuntu>
Hi Reinette and Others,
I was planning to refresh the series later this week. I have one comment
from Peter Newman. Let me know if you have any comments.
Thanks
Babu
On 11/4/22 14:59, Babu Moger wrote:
> New AMD processors can now support following QoS features.
>
> 1. Slow Memory Bandwidth Allocation (SMBA)
> With this feature, the QOS enforcement policies can be applied
> to the external slow memory connected to the host. QOS enforcement
> is accomplished by assigning a Class Of Service (COS) to a processor
> and specifying allocations or limits for that COS for each resource
> to be allocated.
>
> Currently, CXL.memory is the only supported "slow" memory device. With
> the support of SMBA feature the hardware enables bandwidth allocation
> on the slow memory devices.
>
> 2. Bandwidth Monitoring Event Configuration (BMEC)
> The bandwidth monitoring events mbm_total_event and mbm_local_event
> are set to count all the total and local reads/writes respectively.
> With the introduction of slow memory, the two counters are not enough
> to count all the different types are memory events. With the feature
> BMEC, the users have the option to configure mbm_total_event and
> mbm_local_event to count the specific type of events.
>
> Following are the bitmaps of events supported.
> Bits Description
> 6 Dirty Victims from the QOS domain to all types of memory
> 5 Reads to slow memory in the non-local NUMA domain
> 4 Reads to slow memory in the local NUMA domain
> 3 Non-temporal writes to non-local NUMA domain
> 2 Non-temporal writes to local NUMA domain
> 1 Reads to memory in the non-local NUMA domain
> 0 Reads to memory in the local NUMA domain
>
> This series adds support for these features.
>
> Feature description is available in the specification, "AMD64 Technology Platform Quality of Service Extensions, Revision: 1.03 Publication # 56375
> Revision: 1.03 Issue Date: February 2022".
>
> Link: https://www.amd.com/en/support/tech-docs/amd64-technology-platform-quality-service-extensions
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=206537
> ---
> v8:
> Changes:
> 1. Removed init attribute for rdt_cpu_has to make it available for all the files.
> 2. Updated the change log for mon_features to correct the names of config files.
> 3. Changed configuration file name from mbm_total_config to mbm_total_bytes_config.
> This is more consistant with other changes.
> 4. Added lock protection while reading/writing the config file.
> 5. Other few minor text changes. I have been missing few comments in last couple of
> revisions. Hope I have addressed all of them this time.
>
> v7:
> https://lore.kernel.org/lkml/166604543832.5345.9696970469830919982.stgit@bmoger-ubuntu/
> Changes:
> Not much of a change. Missed one comment from Reinette from v5. Corrected it now.
> Few format corrections from Sanjaya.
>
> v6:
> https://lore.kernel.org/lkml/166543345606.23830.3120625408601531368.stgit@bmoger-ubuntu/
> Summary of changes:
> 1. Rebased on top of lastest tip tree. Fixed few minor conflicts.
> 2. Fixed format issue with scattered.c.
> 3. Removed config_name from the structure mon_evt. It is not required.
> 4. The read/write format for mbm_total_config and mbm_local_config will be same
> as schemata format "id0=val0;id1=val1;...". This is comment from Fenghua.
> 5. Added more comments MSR_IA32_EVT_CFG_BASE writng.
> 5. Few text changes in resctrl.rst
>
> v5:
> https://lore.kernel.org/lkml/166431016617.373387.1968875281081252467.stgit@bmoger-ubuntu/
> Summary of changes.
> 1. Split the series into two. The first two patches are bug fixes. So, sent them separate.
> 2. The config files mbm_total_config and mbm_local_config are now under
> /sys/fs/resctrl/info/L3_MON/. Removed these config files from mon groups.
> 3. Ran "checkpatch --strict --codespell" on all the patches. Looks good with few known exceptions.
> 4. Few minor text changes in resctrl.rst file.
>
> v4:
> https://lore.kernel.org/lkml/166257348081.1043018.11227924488792315932.stgit@bmoger-ubuntu/
> Got numerios of comments from Reinette Chatre. Addressed most of them.
> Summary of changes.
> 1. Removed mon_configurable under /sys/fs/resctrl/info/L3_MON/.
> 2. Updated mon_features texts if the BMEC is supported.
> 3. Added more explanation about the slow memory support.
> 4. Replaced smp_call_function_many with on_each_cpu_mask call.
> 5. Removed arch_has_empty_bitmaps
> 6. Few other text changes.
> 7. Removed Reviewed-by if the patch is modified.
> 8. Rebased the patches to latest tip.
>
> v3:
> https://lore.kernel.org/lkml/166117559756.6695.16047463526634290701.stgit@bmoger-ubuntu/
> a. Rebased the patches to latest tip. Resolved some conflicts.
> https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
> b. Taken care of feedback from Bagas Sanjaya.
> c. Added Reviewed by from Mingo.
> Note: I am still looking for comments from Reinette or Fenghua.
>
> v2:
> https://lore.kernel.org/lkml/165938717220.724959.10931629283087443782.stgit@bmoger-ubuntu/
> a. Rebased the patches to latest stable tree (v5.18.15). Resolved some conflicts.
> b. Added the patch to fix CBM issue on AMD. This was originally discussed
> https://lore.kernel.org/lkml/20220517001234.3137157-1-eranian@google.com/
>
> v1:
> https://lore.kernel.org/lkml/165757543252.416408.13547339307237713464.stgit@bmoger-ubuntu/
>
> Babu Moger (13):
> x86/cpufeatures: Add Slow Memory Bandwidth Allocation feature flag
> x86/resctrl: Add a new resource type RDT_RESOURCE_SMBA
> x86/cpufeatures: Add Bandwidth Monitoring Event Configuration feature flag
> x86/resctrl: Include new features in command line options
> x86/resctrl: Detect and configure Slow Memory Bandwidth Allocation
> x86/resctrl: Remove the init attribute for rdt_cpu_has()
> x86/resctrl: Introduce data structure to support monitor configuration
> x86/resctrl: Add sysfs interface to read mbm_total_bytes_config
> x86/resctrl: Add sysfs interface to read mbm_local_bytes_config
> x86/resctrl: Add sysfs interface to write mbm_total_bytes_config
> x86/resctrl: Add sysfs interface to write mbm_local_bytes_config
> x86/resctrl: Replace smp_call_function_many() with on_each_cpu_mask()
> Documentation/x86: Update resctrl.rst for new features
>
>
> .../admin-guide/kernel-parameters.txt | 2 +-
> Documentation/x86/resctrl.rst | 139 +++++++-
> arch/x86/include/asm/cpufeatures.h | 2 +
> arch/x86/kernel/cpu/cpuid-deps.c | 1 +
> arch/x86/kernel/cpu/resctrl/core.c | 56 +++-
> arch/x86/kernel/cpu/resctrl/ctrlmondata.c | 2 +-
> arch/x86/kernel/cpu/resctrl/internal.h | 33 ++
> arch/x86/kernel/cpu/resctrl/monitor.c | 7 +
> arch/x86/kernel/cpu/resctrl/rdtgroup.c | 304 ++++++++++++++++--
> arch/x86/kernel/cpu/scattered.c | 2 +
> 10 files changed, 515 insertions(+), 33 deletions(-)
>
> --
>
--
Thanks
Babu Moger
next prev parent reply other threads:[~2022-11-15 20:51 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-04 19:59 Babu Moger
2022-11-04 19:59 ` [PATCH v8 01/13] x86/cpufeatures: Add Slow Memory Bandwidth Allocation feature flag Babu Moger
2022-11-23 18:21 ` Yu, Fenghua
2022-11-23 23:09 ` Moger, Babu
2022-11-04 20:00 ` [PATCH v8 02/13] x86/resctrl: Add a new resource type RDT_RESOURCE_SMBA Babu Moger
2022-11-23 0:04 ` Reinette Chatre
2022-11-23 15:13 ` Moger, Babu
2022-11-04 20:00 ` [PATCH v8 03/13] x86/cpufeatures: Add Bandwidth Monitoring Event Configuration feature flag Babu Moger
2022-11-23 0:09 ` Reinette Chatre
2022-11-23 15:16 ` Moger, Babu
2022-11-23 18:17 ` Yu, Fenghua
2022-11-23 23:06 ` Moger, Babu
2022-11-04 20:00 ` [PATCH v8 04/13] x86/resctrl: Include new features in command line options Babu Moger
2022-11-23 18:26 ` Yu, Fenghua
2022-11-23 23:10 ` Moger, Babu
2022-11-04 20:00 ` [PATCH v8 05/13] x86/resctrl: Detect and configure Slow Memory Bandwidth Allocation Babu Moger
2022-11-23 0:12 ` Reinette Chatre
2022-11-23 15:17 ` Moger, Babu
2022-11-30 18:43 ` Moger, Babu
2022-11-30 20:07 ` Reinette Chatre
2022-11-30 20:40 ` Moger, Babu
2022-12-01 0:35 ` Reinette Chatre
2022-12-01 13:56 ` Moger, Babu
2022-11-04 20:00 ` [PATCH v8 06/13] x86/resctrl: Remove the init attribute for rdt_cpu_has() Babu Moger
2022-11-23 0:13 ` Reinette Chatre
2022-11-23 17:48 ` Moger, Babu
2022-11-04 20:00 ` [PATCH v8 07/13] x86/resctrl: Introduce data structure to support monitor configuration Babu Moger
2022-11-23 0:14 ` Reinette Chatre
2022-11-23 18:23 ` Moger, Babu
2022-11-23 19:05 ` Reinette Chatre
2022-11-23 21:46 ` Moger, Babu
2022-11-04 20:00 ` [PATCH v8 08/13] x86/resctrl: Add sysfs interface to read mbm_total_bytes_config Babu Moger
2022-11-23 0:19 ` Reinette Chatre
2022-11-23 18:35 ` Moger, Babu
2022-11-23 22:27 ` Reinette Chatre
2022-11-23 22:55 ` Moger, Babu
2022-11-04 20:01 ` [PATCH v8 09/13] x86/resctrl: Add sysfs interface to read mbm_local_bytes_config Babu Moger
2022-11-04 20:01 ` [PATCH v8 10/13] x86/resctrl: Add sysfs interface to write mbm_total_bytes_config Babu Moger
2022-11-07 10:21 ` Peter Newman
2022-11-07 18:50 ` Moger, Babu
2022-11-07 19:00 ` Moger, Babu
2022-11-22 23:43 ` Reinette Chatre
2022-11-23 21:44 ` Moger, Babu
2022-11-23 22:22 ` Reinette Chatre
2022-11-28 16:01 ` Moger, Babu
2022-11-23 0:22 ` Reinette Chatre
2022-11-23 22:44 ` Moger, Babu
2022-12-07 17:20 ` James Morse
2022-12-07 17:24 ` James Morse
2022-12-08 0:02 ` Moger, Babu
2022-12-13 17:55 ` James Morse
2022-12-13 23:46 ` Moger, Babu
2022-11-04 20:01 ` [PATCH v8 11/13] x86/resctrl: Add sysfs interface to write mbm_local_bytes_config Babu Moger
2022-11-04 20:01 ` [PATCH v8 12/13] x86/resctrl: Replace smp_call_function_many() with on_each_cpu_mask() Babu Moger
2022-11-04 20:01 ` [PATCH v8 13/13] Documentation/x86: Update resctrl.rst for new features Babu Moger
2022-11-23 0:26 ` Reinette Chatre
2022-11-23 23:02 ` Moger, Babu
2022-11-15 20:50 ` Moger, Babu [this message]
2022-11-15 21:07 ` [PATCH v8 00/13] Support for AMD QoS " Reinette Chatre
2022-11-15 21:34 ` Moger, Babu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f69a6454-a8c0-8ce1-0356-cde0d8b89c2a@amd.com \
--to=babu.moger@amd.com \
--cc=akpm@linux-foundation.org \
--cc=bagasdotme@gmail.com \
--cc=bp@alien8.de \
--cc=chang.seok.bae@intel.com \
--cc=corbet@lwn.net \
--cc=damien.lemoal@opensource.wdc.com \
--cc=daniel.sneddon@linux.intel.com \
--cc=dave.hansen@linux.intel.com \
--cc=eranian@google.com \
--cc=fenghua.yu@intel.com \
--cc=hpa@zytor.com \
--cc=james.morse@arm.com \
--cc=jmattson@google.com \
--cc=jpoimboe@kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=paulmck@kernel.org \
--cc=pawan.kumar.gupta@linux.intel.com \
--cc=pbonzini@redhat.com \
--cc=peterz@infradead.org \
--cc=quic_neeraju@quicinc.com \
--cc=rdunlap@infradead.org \
--cc=reinette.chatre@intel.com \
--cc=sandipan.das@amd.com \
--cc=songmuchun@bytedance.com \
--cc=tglx@linutronix.de \
--cc=tony.luck@intel.com \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®