From: Reinette Chatre <reinette.chatre@intel.com>
To: Babu Moger <babu.moger@amd.com>, <corbet@lwn.net>,
<tony.luck@intel.com>, <james.morse@arm.com>,
<tglx@linutronix.de>, <mingo@redhat.com>, <bp@alien8.de>,
<dave.hansen@linux.intel.com>
Cc: <Dave.Martin@arm.com>, <x86@kernel.org>, <hpa@zytor.com>,
<akpm@linux-foundation.org>, <paulmck@kernel.org>,
<rostedt@goodmis.org>, <Neeraj.Upadhyay@amd.com>,
<david@redhat.com>, <arnd@arndb.de>, <fvdl@google.com>,
<seanjc@google.com>, <jpoimboe@kernel.org>,
<pawan.kumar.gupta@linux.intel.com>, <xin@zytor.com>,
<manali.shukla@amd.com>, <tao1.su@linux.intel.com>,
<sohil.mehta@intel.com>, <kai.huang@intel.com>,
<xiaoyao.li@intel.com>, <peterz@infradead.org>,
<xin3.li@intel.com>, <kan.liang@linux.intel.com>,
<mario.limonciello@amd.com>, <thomas.lendacky@amd.com>,
<perry.yuan@amd.com>, <gautham.shenoy@amd.com>,
<chang.seok.bae@intel.com>, <linux-doc@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <peternewman@google.com>,
<eranian@google.com>
Subject: Re: [PATCH v15 31/34] fs/resctrl: Introduce the interface to modify assignments in a group
Date: Thu, 17 Jul 2025 21:01:16 -0700 [thread overview]
Message-ID: <de20ecd6-8cb2-4b3b-ba5f-b38f33fe128b@intel.com> (raw)
In-Reply-To: <0a646cf184a9113c54518b14a5c94984b36cee2a.1752013061.git.babu.moger@amd.com>
Hi Babu,
On 7/8/25 3:17 PM, Babu Moger wrote:
> Enable the mbm_l3_assignments resctrl file to be used to modify counter
> assignments of CTRL_MON and MON groups when the "mbm_event" counter
> assignment mode is enabled.
>
> The assignment modifications are done in the following format:
> <Event>:<Domain id>=<Assignment state>
>
> Event: A valid MBM event in the
> /sys/fs/resctrl/info/L3_MON/event_configs directory.
>
> Domain ID: A valid domain ID. When writing, '*' applies the changes
> to all domains.
>
> Assignment states:
>
> _ : Unassign the counter.
"the counter" -> "a counter" (user cannot control which counter is assigned)
>
> e : Assign the counter exclusively.
"the counter" -> "a counter"
>
> Examples:
>
> $ cd /sys/fs/resctrl
> $ cat /sys/fs/resctrl/mbm_L3_assignments
> mbm_total_bytes:0=e;1=e
> mbm_local_bytes:0=e;1=e
>
> To unassign the counter associated with the mbm_total_bytes event on
> domain 0:
>
> $ echo "mbm_total_bytes:0=_" > mbm_L3_assignments
> $ cat /sys/fs/resctrl/mbm_L3_assignments
> mbm_total_bytes:0=_;1=e
> mbm_local_bytes:0=e;1=e
>
> To unassign the counter associated with the mbm_total_bytes event on
> all the domains:
>
> $ echo "mbm_total_bytes:*=_" > mbm_L3_assignments
> $ cat /sys/fs/resctrl/mbm_L3_assignments
> mbm_total_bytes:0=_;1=_
> mbm_local_bytes:0=e;1=e
>
> Signed-off-by: Babu Moger <babu.moger@amd.com>
> ---
...
> ---
> Documentation/filesystems/resctrl.rst | 146 +++++++++++++++++++++++++-
> fs/resctrl/internal.h | 2 +
> fs/resctrl/monitor.c | 18 ++++
> fs/resctrl/rdtgroup.c | 123 +++++++++++++++++++++-
> 4 files changed, 287 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/filesystems/resctrl.rst b/Documentation/filesystems/resctrl.rst
> index 4dd1d605d6ad..2b2acb55d8b1 100644
> --- a/Documentation/filesystems/resctrl.rst
> +++ b/Documentation/filesystems/resctrl.rst
> @@ -527,7 +527,8 @@ When the "mba_MBps" mount option is used all CTRL_MON groups will also contain:
> Event: A valid MBM event in the
> /sys/fs/resctrl/info/L3_MON/event_configs directory.
>
> - Domain ID: A valid domain ID.
> + Domain ID: A valid domain ID. When writing, '*' applies the changes
> + to all the domains.
>
> Assignment states:
>
> @@ -544,6 +545,34 @@ When the "mba_MBps" mount option is used all CTRL_MON groups will also contain:
> mbm_total_bytes:0=e;1=e
> mbm_local_bytes:0=e;1=e
>
> + Assignments can be modified by writing to the interface.
> +
> + Example:
> + To unassign the counter associated with the mbm_total_bytes event on domain 0:
> + ::
> +
> + # echo "mbm_total_bytes:0=_" > /sys/fs/resctrl/mbm_L3_assignments
> + # cat /sys/fs/resctrl/mbm_L3_assignments
> + mbm_total_bytes:0=_;1=e
> + mbm_local_bytes:0=e;1=e
> +
> + To unassign the counter associated with the mbm_total_bytes event on all the domains:
> + ::
> +
> + # echo "mbm_total_bytes:*=_" > /sys/fs/resctrl/mbm_L3_assignments
> + # cat /sys/fs/resctrl/mbm_L3_assignments
> + mbm_total_bytes:0=_;1=_
> + mbm_local_bytes:0=e;1=e
> +
> + To assign the counter associated with the mbm_total_bytes event on all domains in
"the counter" -> "a counter" (motivation: user space cannot control which counter is assigned)
> + exclusive mode:
> + ::
> +
> + # echo "mbm_total_bytes:*=e" > /sys/fs/resctrl/mbm_L3_assignments
> + # cat /sys/fs/resctrl/mbm_L3_assignments
> + mbm_total_bytes:0=e;1=e
> + mbm_local_bytes:0=e;1=e
> +
> Resource allocation rules
> -------------------------
>
> @@ -1579,6 +1608,121 @@ View the llc occupancy snapshot::
> # cat /sys/fs/resctrl/p1/mon_data/mon_L3_00/llc_occupancy
> 11234000
>
> +
> +Examples on working with mbm_assign_mode
> +========================================
> +
> +a. Check if MBM counter assignment mode is supported.
> +::
> +
> + #mount -t resctrl resctrl /sys/fs/resctrl/
"#mount" -> "# mount" (please build htmldocs to confirm everything
looks consistent)
> +
> + # cat /sys/fs/resctrl/info/L3_MON/mbm_assign_mode
> + [mbm_event]
> + default
> +
> +The "mbm_event" mode is detected and enabled.
> +
> +b. Check how many assignable counters are supported.
> +::
> +
> + # cat /sys/fs/resctrl/info/L3_MON/num_mbm_cntrs
> + 0=32;1=32
> +
> +c. Check how many assignable counters are available for assignment in each domain.
> +::
> +
> + # cat /sys/fs/resctrl/info/L3_MON/available_mbm_cntrs
> + 0=30;1=30
> +
> +d. To list the default group's assign states:
Please note that these steps are inconsistent. Some end with "." and some end with ":"
> +::
> +
> + # cat /sys/fs/resctrl/mbm_L3_assignments
> + mbm_total_bytes:0=e;1=e
> + mbm_local_bytes:0=e;1=e
> +
> +e. To unassign the counter associated with the mbm_total_bytes event on domain 0:
> +::
> +
> + # echo "mbm_total_bytes:0=_" > /sys/fs/resctrl/mbm_L3_assignments
> + # cat /sys/fs/resctrl/mbm_L3_assignments
> + mbm_total_bytes:0=_;1=e
> + mbm_local_bytes:0=e;1=e
> +
> +f. To unassign the counter associated with the mbm_total_bytes event on all domains:
> +::
> +
> + # echo "mbm_total_bytes:*=_" > /sys/fs/resctrl/mbm_L3_assignments
> + # cat /sys/fs/resctrl/mbm_L3_assignment
> + mbm_total_bytes:0=_;1=_
> + mbm_local_bytes:0=e;1=e
> +
> +g. To assign a counter associated with the mbm_total_bytes event on all domains in
ah ... here "a counter" is used.
> +exclusive mode:
> +::
> +
> + # echo "mbm_total_bytes:*=e" > /sys/fs/resctrl/mbm_L3_assignments
> + # cat /sys/fs/resctrl/mbm_L3_assignments
> + mbm_total_bytes:0=e;1=e
> + mbm_local_bytes:0=e;1=e
> +
> +h. Read the events mbm_total_bytes and mbm_local_bytes of the default group. There is
> +no change in reading the events with the assignment. If the event is unassigned when
> +reading, then the read will come back as "Unassigned".
Since returning "Unassigned" can be complicated, the associated description should
probably just be done once in the doc. I expect this will be in the "mon_data" section.
> +::
> +
> + # cat /sys/fs/resctrl/mon_data/mon_L3_00/mbm_total_bytes
> + 779247936
> + # cat /sys/fs/resctrl/mon_data/mon_L3_00/mbm_local_bytes
> + 765207488
> +
> +i. Check the default event configurations.
Drop "default" (there are only these event configurations)
> +::
> +
> + # cat /sys/fs/resctrl/info/L3_MON/event_configs/mbm_total_bytes/event_filter
> + local_reads,remote_reads,local_non_temporal_writes,remote_non_temporal_writes,
> + local_reads_slow_memory,remote_reads_slow_memory,dirty_victim_writes_all
> +
> + # cat /sys/fs/resctrl/info/L3_MON/event_configs/mbm_local_bytes/event_filter
> + local_reads,local_non_temporal_writes,local_reads_slow_memory
> +
> +j. Change the event configuration for mbm_local_bytes.
> +::
> +
> + # echo "local_reads, local_non_temporal_writes, local_reads_slow_memory, remote_reads" >
> + /sys/fs/resctrl/info/L3_MON/counter_configs/mbm_local_bytes/event_filter
"counter_configs" -> "event_configs" (this was also an issue in previous series, please
use grep to ensure all are fixed)
> +
> + # cat /sys/fs/resctrl/info/L3_MON/counter_configs/mbm_local_bytes/event_filter
"counter_configs" -> "event_configs"
> + local_reads,local_non_temporal_writes,local_reads_slow_memory,remote_reads
> +
> +This will update all (across all domains of all monitor groups) counter assignments
> +associated with the mbm_local_bytes event.
> +
> +k. Now read the local event again. The first read may come back with "Unavailable"
> +status. The subsequent read of mbm_local_bytes will display the current value.
> +::
> +
> + # cat /sys/fs/resctrl/mon_data/mon_L3_00/mbm_local_bytes
> + Unavailable
> + # cat /sys/fs/resctrl/mon_data/mon_L3_00/mbm_local_bytes
> + 314101
> +
> +l. Users have the option to go back to 'default' mbm_assign_mode if required. This can be
> +done using the following command. Note that switching the mbm_assign_mode may reset all
> +the MBM counters (and thus all MBM events) of all the resctrl groups.
> +::
> +
> + # echo "default" > /sys/fs/resctrl/info/L3_MON/mbm_assign_mode
> + # cat /sys/fs/resctrl/info/L3_MON/mbm_assign_mode
> + mbm_event
> + [default]
> +
> +m. Unmount the resctrl
"Unmount the resctrl" -> "Unmount resctrl" or "Unmount the resctrl filesystem"?
> +::
> +
> + #umount /sys/fs/resctrl/
"#umount" -> "# umount"
> +
> Intel RDT Errata
> ================
>
> diff --git a/fs/resctrl/internal.h b/fs/resctrl/internal.h
> index b42890fd937a..9881674909f2 100644
> --- a/fs/resctrl/internal.h
> +++ b/fs/resctrl/internal.h
> @@ -403,6 +403,8 @@ bool closid_allocated(unsigned int closid);
>
> int resctrl_find_cleanest_closid(void);
>
> +struct mon_evt *mbm_get_mon_event_by_name(struct rdt_resource *r, char *name);
> +
> int rdtgroup_assign_cntr_event(struct rdt_mon_domain *d, struct rdtgroup *rdtgrp,
> struct mon_evt *mevt);
> void rdtgroup_unassign_cntr_event(struct rdt_mon_domain *d, struct rdtgroup *rdtgrp,
> diff --git a/fs/resctrl/monitor.c b/fs/resctrl/monitor.c
> index e30a867c00bb..61419849b257 100644
> --- a/fs/resctrl/monitor.c
> +++ b/fs/resctrl/monitor.c
> @@ -1220,3 +1220,21 @@ void resctrl_update_cntr_allrdtgrp(struct mon_evt *mevt)
> rdtgroup_update_cntr_event(r, crgrp, mevt->evtid);
> }
> }
> +
> +/*
> + * mbm_get_mon_event_by_name() - Return the mon_evt entry for the matching
> + * event name.
> + */
> +struct mon_evt *mbm_get_mon_event_by_name(struct rdt_resource *r, char *name)
> +{
> + struct mon_evt *mevt;
> +
> + for_each_mon_event(mevt) {
> + if (mevt->rid == r->rid && mevt->enabled &&
> + resctrl_is_mbm_event(mevt->evtid) &&
> + !strcmp(mevt->name, name))
> + return mevt;
> + }
> +
> + return NULL;
> +}
> diff --git a/fs/resctrl/rdtgroup.c b/fs/resctrl/rdtgroup.c
> index dc108c5db298..b26baca389bb 100644
> --- a/fs/resctrl/rdtgroup.c
> +++ b/fs/resctrl/rdtgroup.c
> @@ -2071,6 +2071,126 @@ static int mbm_L3_assignments_show(struct kernfs_open_file *of, struct seq_file
> return ret;
> }
>
> +static int rdtgroup_modify_assign_state(char *assign, struct rdt_mon_domain *d,
Please move to monitor.c
> + struct rdtgroup *rdtgrp, struct mon_evt *mevt)
> +{
> + int ret = 0;
> +
> + if (!assign || strlen(assign) != 1)
> + return -EINVAL;
> +
> + switch (*assign) {
> + case 'e':
> + ret = rdtgroup_assign_cntr_event(d, rdtgrp, mevt);
This patch enables the user to assign counters to multiple events in a
single write. Looking at this flow:
rdtgroup_assign_cntr_event()->rdtgroup_alloc_config_cntr() may thus
be called on the same domain but for different events in a single write from
user space.
I thus think that the error message in rdtgroup_alloc_config_cntr()
should not just contain the domain ID, but also the event *name*
(not the ID since user space cannot be expect to understand if).
considering this it seems that @mevt can be passed through
to rdtgroup_alloc_config_cntr() instead of just the event ID to support
this?
> + break;
> + case '_':
> + rdtgroup_unassign_cntr_event(d, rdtgrp, mevt);
> + break;
> + default:
> + ret = -EINVAL;
Please add a "break".
> + }
> +
> + return ret;
> +}
> +
> +static int resctrl_process_assign(struct rdt_resource *r, struct rdtgroup *rdtgrp,
Please move to monitor.c and rename to be more specific. For example,
resctrl_parse_mbm_assignment()? Open to ideas.
> + char *event, char *tok)
> +{
> + struct rdt_mon_domain *d;
> + unsigned long dom_id = 0;
> + char *dom_str, *id_str;
> + struct mon_evt *mevt;
> + int ret;
> +
> + mevt = mbm_get_mon_event_by_name(r, event);
> + if (!mevt) {
> + rdt_last_cmd_printf("Invalid event %s\n", event);
> + return -ENOENT;
> + }
> +
> +next:
> + if (!tok || tok[0] == '\0')
> + return 0;
> +
> + /* Start processing the strings for each domain */
> + dom_str = strim(strsep(&tok, ";"));
> +
> + id_str = strsep(&dom_str, "=");
> +
> + /* Check for domain id '*' which means all domains */
> + if (id_str && *id_str == '*') {
> + ret = rdtgroup_modify_assign_state(dom_str, NULL, rdtgrp, mevt);
> + if (ret)
> + rdt_last_cmd_printf("Assign operation '%s:*=%s' failed\n",
> + event, dom_str);
> + return ret;
> + } else if (!id_str || kstrtoul(id_str, 10, &dom_id)) {
> + rdt_last_cmd_puts("Missing domain id\n");
> + return -EINVAL;
> + }
> +
> + /* Verify if the dom_id is valid */
> + list_for_each_entry(d, &r->mon_domains, hdr.list) {
> + if (d->hdr.id == dom_id) {
> + ret = rdtgroup_modify_assign_state(dom_str, d, rdtgrp, mevt);
> + if (ret) {
> + rdt_last_cmd_printf("Assign operation '%s:%ld=%s' failed\n",
> + event, dom_id, dom_str);
> + return ret;
> + }
> + goto next;
> + }
> + }
> +
> + rdt_last_cmd_printf("Invalid domain id %ld\n", dom_id);
> + return -EINVAL;
> +}
> +
Reinette
next prev parent reply other threads:[~2025-07-18 4:01 UTC|newest]
Thread overview: 98+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-08 22:17 [PATCH v15 00/34] fs,x86/resctrl: Support AMD Assignable Bandwidth Monitoring Counters (ABMC) Babu Moger
2025-07-08 22:17 ` [PATCH v15 01/34] x86,fs/resctrl: Consolidate monitor event descriptions Babu Moger
2025-07-17 18:43 ` Reinette Chatre
2025-07-18 14:19 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 02/34] x86,fs/resctrl: Replace architecture event enabled checks Babu Moger
2025-07-08 22:17 ` [PATCH v15 03/34] x86/resctrl: Remove 'rdt_mon_features' global variable Babu Moger
2025-07-08 22:17 ` [PATCH v15 04/34] x86,fs/resctrl: Prepare for more monitor events Babu Moger
2025-07-08 22:17 ` [PATCH v15 05/34] x86/cpufeatures: Add support for Assignable Bandwidth Monitoring Counters (ABMC) Babu Moger
2025-07-15 11:47 ` Peter Newman
2025-07-15 14:16 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 06/34] x86/resctrl: Add ABMC feature in the command line options Babu Moger
2025-07-17 18:44 ` Reinette Chatre
2025-07-08 22:17 ` [PATCH v15 07/34] x86,fs/resctrl: Consolidate monitoring related data from rdt_resource Babu Moger
2025-07-17 18:44 ` Reinette Chatre
2025-07-08 22:17 ` [PATCH v15 08/34] x86,fs/resctrl: Detect Assignable Bandwidth Monitoring feature details Babu Moger
2025-07-15 16:26 ` Reinette Chatre
2025-07-15 16:53 ` Moger, Babu
2025-07-17 18:45 ` Reinette Chatre
2025-07-21 15:20 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 09/34] x86/resctrl: Add support to enable/disable AMD ABMC feature Babu Moger
2025-07-17 18:46 ` Reinette Chatre
2025-07-08 22:17 ` [PATCH v15 10/34] fs/resctrl: Introduce the interface to display monitoring modes Babu Moger
2025-07-17 18:46 ` Reinette Chatre
2025-07-08 22:17 ` [PATCH v15 11/34] fs/resctrl: Add resctrl file to display number of assignable counters Babu Moger
2025-07-17 18:46 ` Reinette Chatre
2025-07-08 22:17 ` [PATCH v15 12/34] fs/resctrl: Introduce mbm_cntr_cfg to track assignable counters per domain Babu Moger
2025-07-17 18:46 ` Reinette Chatre
2025-07-08 22:17 ` [PATCH v15 13/34] fs/resctrl: Introduce interface to display number of free MBM counters Babu Moger
2025-07-17 18:47 ` Reinette Chatre
2025-07-08 22:17 ` [PATCH v15 14/34] x86/resctrl: Add data structures and definitions for ABMC assignment Babu Moger
2025-07-17 18:47 ` Reinette Chatre
2025-07-08 22:17 ` [PATCH v15 15/34] fs/resctrl: Introduce event configuration field in struct mon_evt Babu Moger
2025-07-17 18:47 ` Reinette Chatre
2025-07-08 22:17 ` [PATCH v15 16/34] x86,fs/resctrl: Implement resctrl_arch_config_cntr() to assign a counter with ABMC Babu Moger
2025-07-17 18:49 ` Reinette Chatre
2025-07-21 17:40 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 17/34] fs/resctrl: Add the functionality to assign MBM events Babu Moger
2025-07-18 3:47 ` Reinette Chatre
2025-07-21 19:54 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 18/34] fs/resctrl: Add the functionality to unassign " Babu Moger
2025-07-18 3:48 ` Reinette Chatre
2025-07-21 20:21 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 19/34] fs/resctrl: Pass struct rdtgroup instead of individual members Babu Moger
2025-07-18 3:54 ` Reinette Chatre
2025-07-21 20:59 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 20/34] fs/resctrl: Introduce counter read, reset calls in mbm_event mode Babu Moger
2025-07-18 3:50 ` Reinette Chatre
2025-07-21 23:39 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 21/34] x86/resctrl: Refactor resctrl_arch_rmid_read() Babu Moger
2025-07-18 3:51 ` Reinette Chatre
2025-07-22 14:23 ` Moger, Babu
2025-07-22 14:56 ` Reinette Chatre
2025-07-22 15:25 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 22/34] x86/resctrl: Implement resctrl_arch_reset_cntr() and resctrl_arch_cntr_read() Babu Moger
2025-07-18 3:51 ` Reinette Chatre
2025-07-22 15:51 ` Moger, Babu
2025-07-22 23:27 ` Reinette Chatre
2025-07-23 16:48 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 23/34] fs/resctrl: Support counter read/reset with mbm_event assignment mode Babu Moger
2025-07-18 3:53 ` Reinette Chatre
2025-07-22 17:53 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 24/34] fs/resctrl: Report 'Unassigned' for MBM events in mbm_event mode Babu Moger
2025-07-18 3:53 ` Reinette Chatre
2025-07-22 18:15 ` Moger, Babu
2025-07-22 23:28 ` Reinette Chatre
2025-07-23 0:26 ` Moger, Babu
2025-07-23 2:05 ` Reinette Chatre
2025-07-23 13:14 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 25/34] fs/resctrl: Add definitions for MBM event configuration Babu Moger
2025-07-18 3:55 ` Reinette Chatre
2025-07-22 19:34 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 26/34] fs/resctrl: Add event configuration directory under info/L3_MON/ Babu Moger
2025-07-18 3:54 ` Reinette Chatre
2025-07-18 22:20 ` Reinette Chatre
2025-07-22 20:22 ` Moger, Babu
2025-07-22 20:11 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 27/34] fs/resctrl: Provide interface to update the event configurations Babu Moger
2025-07-18 3:55 ` Reinette Chatre
2025-07-22 22:55 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 28/34] fs/resctrl: Introduce mbm_assign_on_mkdir to enable assignments on mkdir Babu Moger
2025-07-15 13:53 ` Peter Newman
2025-07-15 14:18 ` Moger, Babu
2025-07-15 14:27 ` Reinette Chatre
2025-07-15 15:28 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 29/34] x86,fs/resctrl: Auto assign counters on mkdir and clean up on group removal Babu Moger
2025-07-18 3:56 ` Reinette Chatre
2025-07-22 23:59 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 30/34] fs/resctrl: Introduce mbm_L3_assignments to list assignments in a group Babu Moger
2025-07-08 22:17 ` [PATCH v15 31/34] fs/resctrl: Introduce the interface to modify " Babu Moger
2025-07-18 4:01 ` Reinette Chatre [this message]
2025-07-23 16:19 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 32/34] fs/resctrl: Disable BMEC event configuration when mbm_event mode is enabled Babu Moger
2025-07-18 4:02 ` Reinette Chatre
2025-07-23 17:30 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 33/34] fs/resctrl: Introduce the interface to switch between monitor modes Babu Moger
2025-07-18 4:03 ` Reinette Chatre
2025-07-23 18:50 ` Moger, Babu
2025-07-08 22:17 ` [PATCH v15 34/34] x86/resctrl: Configure mbm_event mode if supported 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=de20ecd6-8cb2-4b3b-ba5f-b38f33fe128b@intel.com \
--to=reinette.chatre@intel.com \
--cc=Dave.Martin@arm.com \
--cc=Neeraj.Upadhyay@amd.com \
--cc=akpm@linux-foundation.org \
--cc=arnd@arndb.de \
--cc=babu.moger@amd.com \
--cc=bp@alien8.de \
--cc=chang.seok.bae@intel.com \
--cc=corbet@lwn.net \
--cc=dave.hansen@linux.intel.com \
--cc=david@redhat.com \
--cc=eranian@google.com \
--cc=fvdl@google.com \
--cc=gautham.shenoy@amd.com \
--cc=hpa@zytor.com \
--cc=james.morse@arm.com \
--cc=jpoimboe@kernel.org \
--cc=kai.huang@intel.com \
--cc=kan.liang@linux.intel.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=manali.shukla@amd.com \
--cc=mario.limonciello@amd.com \
--cc=mingo@redhat.com \
--cc=paulmck@kernel.org \
--cc=pawan.kumar.gupta@linux.intel.com \
--cc=perry.yuan@amd.com \
--cc=peternewman@google.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=seanjc@google.com \
--cc=sohil.mehta@intel.com \
--cc=tao1.su@linux.intel.com \
--cc=tglx@linutronix.de \
--cc=thomas.lendacky@amd.com \
--cc=tony.luck@intel.com \
--cc=x86@kernel.org \
--cc=xiaoyao.li@intel.com \
--cc=xin3.li@intel.com \
--cc=xin@zytor.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.