From: Reinette Chatre <reinette.chatre@intel.com>
To: Babu Moger <babu.moger@amd.com>, <fenghua.yu@intel.com>,
<tglx@linutronix.de>, <mingo@redhat.com>, <bp@alien8.de>
Cc: <eranian@google.com>, <dave.hansen@linux.intel.com>,
<x86@kernel.org>, <hpa@zytor.com>, <corbet@lwn.net>,
<linux-kernel@vger.kernel.org>, <linux-doc@vger.kernel.org>,
<bagasdotme@gmail.com>
Subject: Re: [PATCH v3 06/10] x86/resctrl: Introduce mon_configurable to detect Bandwidth Monitoring Event Configuration
Date: Wed, 24 Aug 2022 14:15:33 -0700 [thread overview]
Message-ID: <575bf1d7-8780-8c54-851c-e9849d1815f8@intel.com> (raw)
In-Reply-To: <166117582698.6695.3458866624522799072.stgit@bmoger-ubuntu>
Hi Babu,
On 8/22/2022 6:43 AM, Babu Moger wrote:
> Newer AMD processors support the new feature Bandwidth Monitoring Event
> Configuration (BMEC). The events mbm_total_bytes and mbm_local_bytes
> are configurable when this feature is present.
>
> Set mon_configurable if the feature is available.
>
> Signed-off-by: Babu Moger <babu.moger@amd.com>
> Reviewed-by: Ingo Molnar <mingo@kernel.org>
> ---
> arch/x86/kernel/cpu/resctrl/monitor.c | 14 ++++++++++++++
> arch/x86/kernel/cpu/resctrl/rdtgroup.c | 17 +++++++++++++++++
> include/linux/resctrl.h | 1 +
> 3 files changed, 32 insertions(+)
>
> diff --git a/arch/x86/kernel/cpu/resctrl/monitor.c b/arch/x86/kernel/cpu/resctrl/monitor.c
> index eaf25a234ff5..b9de417dac1c 100644
> --- a/arch/x86/kernel/cpu/resctrl/monitor.c
> +++ b/arch/x86/kernel/cpu/resctrl/monitor.c
> @@ -682,6 +682,16 @@ static void l3_mon_evt_init(struct rdt_resource *r)
> list_add_tail(&mbm_local_event.list, &r->evt_list);
> }
>
> +
> +void __rdt_get_mon_l3_config_amd(struct rdt_resource *r)
> +{
> + /*
> + * Check if CPU supports the Bandwidth Monitoring Event Configuration
> + */
> + if (boot_cpu_has(X86_FEATURE_BMEC))
> + r->mon_configurable = true;
> +}
Could this rather use rdt_cpu_has() with the added support for disabling
the feature via kernel parameter?
> +
> int rdt_get_mon_l3_config(struct rdt_resource *r)
> {
> unsigned int mbm_offset = boot_cpu_data.x86_cache_mbm_width_offset;
> @@ -714,6 +724,10 @@ int rdt_get_mon_l3_config(struct rdt_resource *r)
> if (ret)
> return ret;
>
> + if (boot_cpu_data.x86_vendor == X86_VENDOR_AMD)
> + __rdt_get_mon_l3_config_amd(r);
> +
> +
Why is this vendor check needed? Is X86_FEATURE_BMEC not sufficient?
> l3_mon_evt_init(r);
>
> r->mon_capable = true;
> diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> index fc5286067201..855483b297a8 100644
> --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> @@ -995,6 +995,16 @@ static int rdt_num_rmids_show(struct kernfs_open_file *of,
> return 0;
> }
>
> +static int rdt_mon_configurable_show(struct kernfs_open_file *of,
> + struct seq_file *seq, void *v)
> +{
> + struct rdt_resource *r = of->kn->parent->priv;
> +
> + seq_printf(seq, "%d\n", r->mon_configurable);
Why is this file needed? It seems that the next patches also introduce
files in support of this new feature that will make the actual configuration
data accessible - those files are only created if this feature is supported.
Would those files not be sufficient for user space to learn about the feature
support?
Reinette
next prev parent reply other threads:[~2022-08-24 21:15 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-22 13:42 [PATCH v3 00/10] x86/resctrl: Support for AMD QoS new features and bug fix Babu Moger
2022-08-22 13:42 ` [PATCH v3 01/10] x86/resctrl: Fix min_cbm_bits for AMD Babu Moger
2022-08-23 20:56 ` Reinette Chatre
2022-08-24 15:58 ` Moger, Babu
2022-08-22 13:42 ` [PATCH v3 02/10] x86/cpufeatures: Add Slow Memory Bandwidth Allocation feature flag Babu Moger
2022-08-23 22:47 ` Reinette Chatre
2022-08-25 22:42 ` Moger, Babu
2022-08-26 16:17 ` Reinette Chatre
2022-08-29 23:25 ` Babu Moger
2022-08-30 16:39 ` Reinette Chatre
[not found] ` <3aa991a8-ac08-297d-8328-5380897f6dd9@amd.com>
2022-08-30 22:23 ` Reinette Chatre
2022-08-30 22:28 ` Moger, Babu
2022-08-22 13:43 ` [PATCH v3 03/10] x86/resctrl: Add a new resource type RDT_RESOURCE_SMBA Babu Moger
2022-08-24 17:39 ` Reinette Chatre
2022-08-26 14:59 ` Moger, Babu
2022-08-22 13:43 ` [PATCH v3 04/10] x86/resctrl: Detect and configure Slow Memory Bandwidth allocation Babu Moger
2022-08-23 22:47 ` Reinette Chatre
2022-08-24 16:48 ` Moger, Babu
2022-08-22 13:43 ` [PATCH v3 05/10] x86/cpufeatures: Add Bandwidth Monitoring Event Configuration feature flag Babu Moger
2022-08-22 13:43 ` [PATCH v3 06/10] x86/resctrl: Introduce mon_configurable to detect Bandwidth Monitoring Event Configuration Babu Moger
2022-08-24 21:15 ` Reinette Chatre [this message]
2022-08-25 15:11 ` Moger, Babu
2022-08-25 15:56 ` Reinette Chatre
2022-08-25 20:44 ` Moger, Babu
2022-08-25 21:24 ` Reinette Chatre
2022-08-26 14:30 ` Babu Moger
2022-08-22 13:43 ` [PATCH v3 07/10] x86/resctrl: Add sysfs interface files to read/write event configuration Babu Moger
2022-08-24 21:15 ` Reinette Chatre
2022-08-26 16:07 ` Moger, Babu
2022-08-26 16:35 ` Reinette Chatre
2022-08-26 16:57 ` Moger, Babu
2022-08-22 13:44 ` [PATCH v3 08/10] x86/resctrl: Add the sysfs interface to read the " Babu Moger
2022-08-22 13:47 ` Bagas Sanjaya
2022-08-22 13:50 ` Moger, Babu
2022-08-22 13:55 ` Moger, Babu
2022-08-23 1:55 ` Bagas Sanjaya
2022-08-24 21:16 ` Reinette Chatre
2022-08-26 16:49 ` Moger, Babu
2022-08-26 17:34 ` Reinette Chatre
2022-08-26 18:34 ` Moger, Babu
2022-08-22 13:44 ` [PATCH v3 09/10] x86/resctrl: Add sysfs interface to write " Babu Moger
2022-08-24 21:16 ` Reinette Chatre
2022-08-26 18:17 ` Moger, Babu
2022-08-22 13:45 ` [PATCH v3 10/10] Documentation/x86: Update resctrl_ui.rst for new features Babu Moger
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=575bf1d7-8780-8c54-851c-e9849d1815f8@intel.com \
--to=reinette.chatre@intel.com \
--cc=babu.moger@amd.com \
--cc=bagasdotme@gmail.com \
--cc=bp@alien8.de \
--cc=corbet@lwn.net \
--cc=dave.hansen@linux.intel.com \
--cc=eranian@google.com \
--cc=fenghua.yu@intel.com \
--cc=hpa@zytor.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--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