linux-doc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Reinette Chatre <reinette.chatre@intel.com>
To: Babu Moger <babu.moger@amd.com>, <corbet@lwn.net>,
	<tglx@linutronix.de>, <mingo@redhat.com>, <bp@alien8.de>,
	<dave.hansen@linux.intel.com>, <tony.luck@intel.com>,
	<peternewman@google.com>
Cc: <x86@kernel.org>, <hpa@zytor.com>, <paulmck@kernel.org>,
	<akpm@linux-foundation.org>, <thuth@redhat.com>,
	<rostedt@goodmis.org>, <xiongwei.song@windriver.com>,
	<pawan.kumar.gupta@linux.intel.com>,
	<daniel.sneddon@linux.intel.com>, <jpoimboe@kernel.org>,
	<perry.yuan@amd.com>, <sandipan.das@amd.com>,
	<kai.huang@intel.com>, <xiaoyao.li@intel.com>,
	<seanjc@google.com>, <xin3.li@intel.com>,
	<andrew.cooper3@citrix.com>, <ebiggers@google.com>,
	<mario.limonciello@amd.com>, <james.morse@arm.com>,
	<tan.shaopeng@fujitsu.com>, <linux-doc@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>, <maciej.wieczor-retman@intel.com>,
	<eranian@google.com>
Subject: Re: [PATCH v11 17/23] x86/resctrl: Auto assign/unassign counters when mbm_cntr_assign is enabled
Date: Thu, 6 Feb 2025 10:03:16 -0800	[thread overview]
Message-ID: <8d04f824-d1cc-461c-9c57-0f26c6aa96e0@intel.com> (raw)
In-Reply-To: <2119b76ef8be21b1d8b2deedfab23e8e33ba724c.1737577229.git.babu.moger@amd.com>

Hi Babu,

On 1/22/25 12:20 PM, Babu Moger wrote:
> Assign/unassign counters on resctrl group creation/deletion. Two counters
> are required per group, one for MBM total event and one for MBM local
> event.
> 
> There are a limited number of counters available for assignment. If these
> counters are exhausted, the kernel will display the error message: "Out of
> MBM assignable counters". However, it is not necessary to fail the
> creation of a group due to assignment failures. Users have the flexibility
> to modify the assignments at a later time.
> 
> Signed-off-by: Babu Moger <babu.moger@amd.com>
> ---

> diff --git a/arch/x86/kernel/cpu/resctrl/monitor.c b/arch/x86/kernel/cpu/resctrl/monitor.c
> index b6d188d0f9b7..118b39fbb01e 100644
> --- a/arch/x86/kernel/cpu/resctrl/monitor.c
> +++ b/arch/x86/kernel/cpu/resctrl/monitor.c
> @@ -1557,3 +1557,30 @@ int resctrl_unassign_cntr_event(struct rdt_resource *r, struct rdt_mon_domain *d
>  
>  	return ret;
>  }
> +
> +void mbm_cntr_reset(struct rdt_resource *r)
> +{
> +	u32 idx_limit = resctrl_arch_system_num_rmid_idx();
> +	struct rdt_mon_domain *dom;
> +
> +	/*
> +	 * Reset the domain counter configuration. Hardware counters
> +	 * will reset after switching the monitor mode. So, reset the
> +	 * architectural amd non-architectural state so that reading

"amd" -> "and"

> +	 * of hardware counter is not considered as an overflow in the
> +	 * next update.
> +	 */
> +	if (is_mbm_enabled() && r->mon.mbm_cntr_assignable) {
> +		list_for_each_entry(dom, &r->mon_domains, hdr.list) {
> +			memset(dom->cntr_cfg, 0,
> +			       sizeof(*dom->cntr_cfg) * r->mon.num_mbm_cntrs);
> +			if (is_mbm_total_enabled())
> +				memset(dom->mbm_total, 0,
> +				       sizeof(struct mbm_state) * idx_limit);
> +			if (is_mbm_local_enabled())
> +				memset(dom->mbm_local, 0,
> +				       sizeof(struct mbm_state) * idx_limit);
> +			resctrl_arch_reset_rmid_all(r, dom);
> +		}
> +	}
> +}

I looked back at the previous versions to better understand how this function
came about and I do not think it actually solves the problem it aims to solve.

rdtgroup_unassign_cntrs() can fail and when it does the counter is not free'd. That
leaves a monitoring domain's array with an entry that points to a resource group
that no longer exists (unless it is the default resource group) since
rdtgroup_unassign_cntrs() does not check the return and proceeds to remove the
resource group. mbm_cntr_reset() is called on umount of resctrl but
rdtgroup_unassign_cntrs() is called on every  group remove and those scenarios
are not handled.

To address this I believe that I need to go back on a previous request to have
resctrl_arch_config_cntr() return an error code. AMD does not need this and
it is difficult to predict what will work for MPAM. I originally wanted to be
flexible here but this appears to be impractical. With a new requirement that 
resctrl_arch_config_cntr() always succeeds the counter will in turn always
be free'd and not leave dangling pointers. I believe doing so eliminates
the need for mbm_cntr_reset() as used in this patch. My apologies for the
misdirection. We can re-evaluate these flows if MPAM needs anything different.

> diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> index 2b86124c336b..f61f0cd032ef 100644
> --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> @@ -2687,6 +2687,46 @@ static void schemata_list_destroy(void)
>  	}
>  }
>  
> +/*
> + * Called when a new group is created. If "mbm_cntr_assign" mode is enabled,
> + * counters are automatically assigned. Each group can accommodate two counters:
> + * one for the total event and one for the local event. Assignments may fail
> + * due to the limited number of counters. However, it is not necessary to fail
> + * the group creation and thus no failure is returned. Users have the option
> + * to modify the counter assignments after the group has been created.
> + */
> +static void rdtgroup_assign_cntrs(struct rdtgroup *rdtgrp)
> +{
> +	struct rdt_resource *r = &rdt_resources_all[RDT_RESOURCE_L3].r_resctrl;
> +
> +	if (!resctrl_arch_mbm_cntr_assign_enabled(r))
> +		return;
> +
> +	if (is_mbm_total_enabled())
> +		resctrl_assign_cntr_event(r, NULL, rdtgrp, QOS_L3_MBM_TOTAL_EVENT_ID);
> +
> +	if (is_mbm_local_enabled())
> +		resctrl_assign_cntr_event(r, NULL, rdtgrp, QOS_L3_MBM_LOCAL_EVENT_ID);
> +}
> +
> +/*
> + * Called when a group is deleted. Counters are unassigned if it was in
> + * assigned state.
> + */
> +static void rdtgroup_unassign_cntrs(struct rdtgroup *rdtgrp)
> +{
> +	struct rdt_resource *r = &rdt_resources_all[RDT_RESOURCE_L3].r_resctrl;
> +
> +	if (!resctrl_arch_mbm_cntr_assign_enabled(r))
> +		return;
> +

It looks to me as though there are a couple of places (rmdir_all_sub(), rdt_kill_sb(),
and rdtgroup_rmdir_ctrl()) where rdtgroup_unassign_cntrs() could be called on a system that
does not support monitoring and/or only supports cache allocation monitoring.

In these paths it is only the architecture's resctrl_arch_mbm_cntr_assign_enabled(r) that
gates the resctrl flow. I think rdtgroup_unassign_cntrs() and to match rdtgroup_assign_cntrs()
can do with at least a r->mon_capable check.

> +	if (is_mbm_total_enabled())
> +		resctrl_unassign_cntr_event(r, NULL, rdtgrp, QOS_L3_MBM_TOTAL_EVENT_ID);
> +
> +	if (is_mbm_local_enabled())
> +		resctrl_unassign_cntr_event(r, NULL, rdtgrp, QOS_L3_MBM_LOCAL_EVENT_ID);
> +}
> +
>  static int rdt_get_tree(struct fs_context *fc)
>  {
>  	struct rdt_fs_context *ctx = rdt_fc2context(fc);
> @@ -2741,6 +2781,8 @@ static int rdt_get_tree(struct fs_context *fc)
>  		if (ret < 0)
>  			goto out_info;
>  
> +		rdtgroup_assign_cntrs(&rdtgroup_default);
> +
>  		ret = mkdir_mondata_all(rdtgroup_default.kn,
>  					&rdtgroup_default, &kn_mondata);
>  		if (ret < 0)
> @@ -2779,8 +2821,10 @@ static int rdt_get_tree(struct fs_context *fc)
>  	if (resctrl_arch_mon_capable())
>  		kernfs_remove(kn_mondata);
>  out_mongrp:
> -	if (resctrl_arch_mon_capable())
> +	if (resctrl_arch_mon_capable()) {
> +		rdtgroup_unassign_cntrs(&rdtgroup_default);
>  		kernfs_remove(kn_mongrp);
> +	}
>  out_info:
>  	kernfs_remove(kn_info);
>  out_schemata_free:
> @@ -2956,6 +3000,7 @@ static void free_all_child_rdtgrp(struct rdtgroup *rdtgrp)
>  
>  	head = &rdtgrp->mon.crdtgrp_list;
>  	list_for_each_entry_safe(sentry, stmp, head, mon.crdtgrp_list) {
> +		rdtgroup_unassign_cntrs(sentry);
>  		free_rmid(sentry->closid, sentry->mon.rmid);
>  		list_del(&sentry->mon.crdtgrp_list);
>  
> @@ -2996,6 +3041,8 @@ static void rmdir_all_sub(void)
>  		cpumask_or(&rdtgroup_default.cpu_mask,
>  			   &rdtgroup_default.cpu_mask, &rdtgrp->cpu_mask);
>  
> +		rdtgroup_unassign_cntrs(rdtgrp);
> +
>  		free_rmid(rdtgrp->closid, rdtgrp->mon.rmid);
>  
>  		kernfs_remove(rdtgrp->kn);
> @@ -3027,6 +3074,8 @@ static void rdt_kill_sb(struct super_block *sb)
>  	for_each_alloc_capable_rdt_resource(r)
>  		reset_all_ctrls(r);
>  	rmdir_all_sub();
> +	rdtgroup_unassign_cntrs(&rdtgroup_default);
> +	mbm_cntr_reset(&rdt_resources_all[RDT_RESOURCE_L3].r_resctrl);
>  	rdt_pseudo_lock_release();
>  	rdtgroup_default.mode = RDT_MODE_SHAREABLE;
>  	schemata_list_destroy();
> @@ -3490,9 +3539,12 @@ static int mkdir_rdt_prepare_rmid_alloc(struct rdtgroup *rdtgrp)
>  	}
>  	rdtgrp->mon.rmid = ret;
>  
> +	rdtgroup_assign_cntrs(rdtgrp);
> +
>  	ret = mkdir_mondata_all(rdtgrp->kn, rdtgrp, &rdtgrp->mon.mon_data_kn);
>  	if (ret) {
>  		rdt_last_cmd_puts("kernfs subdir error\n");
> +		rdtgroup_unassign_cntrs(rdtgrp);
>  		free_rmid(rdtgrp->closid, rdtgrp->mon.rmid);
>  		return ret;
>  	}
> @@ -3502,8 +3554,10 @@ static int mkdir_rdt_prepare_rmid_alloc(struct rdtgroup *rdtgrp)
>  
>  static void mkdir_rdt_prepare_rmid_free(struct rdtgroup *rgrp)
>  {
> -	if (resctrl_arch_mon_capable())
> +	if (resctrl_arch_mon_capable()) {
> +		rdtgroup_unassign_cntrs(rgrp);
>  		free_rmid(rgrp->closid, rgrp->mon.rmid);
> +	}
>  }
>  
>  static int mkdir_rdt_prepare(struct kernfs_node *parent_kn,
> @@ -3764,6 +3818,9 @@ static int rdtgroup_rmdir_mon(struct rdtgroup *rdtgrp, cpumask_var_t tmpmask)
>  	update_closid_rmid(tmpmask, NULL);
>  
>  	rdtgrp->flags = RDT_DELETED;
> +
> +	rdtgroup_unassign_cntrs(rdtgrp);
> +
>  	free_rmid(rdtgrp->closid, rdtgrp->mon.rmid);
>  
>  	/*
> @@ -3810,6 +3867,8 @@ static int rdtgroup_rmdir_ctrl(struct rdtgroup *rdtgrp, cpumask_var_t tmpmask)
>  	cpumask_or(tmpmask, tmpmask, &rdtgrp->cpu_mask);
>  	update_closid_rmid(tmpmask, NULL);
>  
> +	rdtgroup_unassign_cntrs(rdtgrp);
> +
>  	free_rmid(rdtgrp->closid, rdtgrp->mon.rmid);
>  	closid_free(rdtgrp->closid);
>  

Reinette

  reply	other threads:[~2025-02-06 18:03 UTC|newest]

Thread overview: 209+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-22 20:20 [PATCH v11 00/23] x86/resctrl : Support AMD Assignable Bandwidth Monitoring Counters (ABMC) Babu Moger
2025-01-22 20:20 ` [PATCH v11 01/23] x86/resctrl: Add __init attribute to functions called from resctrl_late_init() Babu Moger
2025-02-05 22:22   ` Reinette Chatre
2025-02-19 13:28   ` Dave Martin
2025-02-19 16:53     ` Moger, Babu
2025-02-20 13:29       ` Dave Martin
2025-01-22 20:20 ` [PATCH v11 02/23] x86/cpufeatures: Add support for Assignable Bandwidth Monitoring Counters (ABMC) Babu Moger
2025-01-22 20:20 ` [PATCH v11 03/23] x86/resctrl: Add ABMC feature in the command line options Babu Moger
2025-01-22 20:20 ` [PATCH v11 04/23] x86/resctrl: Consolidate monitoring related data from rdt_resource Babu Moger
2025-01-22 20:20 ` [PATCH v11 05/23] x86/resctrl: Detect Assignable Bandwidth Monitoring feature details Babu Moger
2025-01-22 20:20 ` [PATCH v11 06/23] x86/resctrl: Add support to enable/disable AMD ABMC feature Babu Moger
2025-02-05 22:49   ` Reinette Chatre
2025-02-06 16:15     ` Moger, Babu
2025-02-06 18:42       ` Reinette Chatre
2025-02-06 22:57         ` Moger, Babu
2025-02-06 23:28           ` Reinette Chatre
2025-02-21 18:05   ` James Morse
2025-02-21 18:25     ` Reinette Chatre
2025-01-22 20:20 ` [PATCH v11 07/23] x86/resctrl: Introduce the interface to display monitor mode Babu Moger
2025-02-06 18:01   ` Reinette Chatre
2025-02-06 23:41     ` Moger, Babu
2025-02-21 18:06   ` James Morse
2025-02-21 19:44     ` Moger, Babu
2025-01-22 20:20 ` [PATCH v11 08/23] x86/resctrl: Introduce interface to display number of monitoring counters Babu Moger
2025-02-05 23:17   ` Reinette Chatre
2025-02-07 17:18     ` Moger, Babu
2025-02-07 18:52       ` Moger, Babu
2025-02-10 18:08         ` Reinette Chatre
2025-02-10 20:26           ` Moger, Babu
2025-01-22 20:20 ` [PATCH v11 09/23] x86/resctrl: Introduce mbm_total_cfg and mbm_local_cfg in struct rdt_hw_mon_domain Babu Moger
2025-01-22 20:20 ` [PATCH v11 10/23] x86/resctrl: Remove MSR reading of event configuration value Babu Moger
2025-02-05 23:58   ` Reinette Chatre
2025-02-06  0:51     ` Luck, Tony
2025-02-06  1:41       ` Reinette Chatre
2025-02-06 15:56         ` Luck, Tony
2025-02-21 18:08           ` James Morse
2025-02-19 13:28         ` Dave Martin
2025-02-21 18:08           ` James Morse
2025-02-07 17:30     ` Moger, Babu
2025-02-06  6:24   ` Xin Li
2025-02-06 16:17     ` Reinette Chatre
2025-02-07 10:07       ` Xin Li
2025-02-11 19:44         ` Moger, Babu
2025-02-12  8:33           ` Xin Li
2025-01-22 20:20 ` [PATCH v11 11/23] x86/resctrl: Introduce mbm_cntr_cfg to track assignable counters at domain Babu Moger
2025-02-05 23:57   ` Reinette Chatre
2025-02-07 18:23     ` Moger, Babu
2025-02-10 18:10       ` Reinette Chatre
2025-02-19 13:30         ` Dave Martin
2025-02-19 18:07           ` Moger, Babu
2025-02-20 13:33             ` Dave Martin
2025-02-21 18:07   ` James Morse
2025-02-21 18:35     ` Reinette Chatre
2025-02-21 20:10       ` Moger, Babu
2025-01-22 20:20 ` [PATCH v11 12/23] x86/resctrl: Introduce interface to display number of free counters Babu Moger
2025-02-06  0:19   ` Reinette Chatre
2025-02-07 18:59     ` Moger, Babu
2025-02-19 13:31       ` Dave Martin
2025-01-22 20:20 ` [PATCH v11 13/23] x86/resctrl: Add data structures and definitions for ABMC assignment Babu Moger
2025-01-22 20:20 ` [PATCH v11 14/23] x86/resctrl: Implement resctrl_arch_config_cntr() to assign a counter with ABMC Babu Moger
2025-02-19 13:32   ` Dave Martin
2025-02-19 21:00     ` Moger, Babu
2025-02-21 18:06   ` James Morse
2025-02-21 22:24     ` Moger, Babu
2025-01-22 20:20 ` [PATCH v11 15/23] x86/resctrl: Add the functionality to assigm MBM events Babu Moger
2025-02-06  1:05   ` Reinette Chatre
2025-02-07 21:10     ` Moger, Babu
2025-02-10 18:25       ` Reinette Chatre
2025-01-22 20:20 ` [PATCH v11 16/23] x86/resctrl: Add the functionality to unassigm " Babu Moger
2025-02-06  3:54   ` Reinette Chatre
2025-02-10 16:23     ` Moger, Babu
2025-02-10 18:30       ` Reinette Chatre
2025-02-22  0:36         ` Moger, Babu
2025-01-22 20:20 ` [PATCH v11 17/23] x86/resctrl: Auto assign/unassign counters when mbm_cntr_assign is enabled Babu Moger
2025-02-06 18:03   ` Reinette Chatre [this message]
2025-02-10 17:27     ` Moger, Babu
2025-02-10 18:34       ` Reinette Chatre
2025-02-19 13:41   ` Dave Martin
2025-02-19 14:09     ` Peter Newman
2025-02-19 17:55       ` Reinette Chatre
2025-02-20 10:35         ` Peter Newman
2025-02-20 13:40           ` Dave Martin
2025-02-20 17:08             ` Reinette Chatre
2025-02-21 17:14               ` Dave Martin
2025-02-21 18:23                 ` Moger, Babu
2025-02-21 22:48                   ` Reinette Chatre
2025-02-21 23:42                     ` Moger, Babu
2025-02-27 11:07                       ` Peter Newman
2025-01-22 20:20 ` [PATCH v11 18/23] x86/resctrl: Report "Unassigned" for MBM events in mbm_cntr_assign mode Babu Moger
2025-02-06 18:04   ` Reinette Chatre
2025-02-10 17:39     ` Moger, Babu
2025-01-22 20:20 ` [PATCH v11 19/23] x86/resctrl: Introduce the interface to switch between monitor modes Babu Moger
2025-02-06 18:05   ` Reinette Chatre
2025-02-10 18:54     ` Moger, Babu
2025-01-22 20:20 ` [PATCH v11 20/23] x86/resctrl: Configure mbm_cntr_assign mode if supported Babu Moger
2025-02-21 18:06   ` James Morse
2025-02-24 15:49     ` Moger, Babu
2025-02-24 17:01       ` Reinette Chatre
2025-02-24 21:18         ` Moger, Babu
2025-02-24 22:20           ` Reinette Chatre
2025-01-22 20:20 ` [PATCH v11 21/23] x86/resctrl: Update assignments on event configuration changes Babu Moger
2025-01-22 20:20 ` [PATCH v11 22/23] x86/resctrl: Introduce interface to list assignment states of all the groups Babu Moger
2025-02-19 13:53   ` Dave Martin
2025-02-19 21:09     ` Moger, Babu
2025-02-20 15:44       ` Dave Martin
2025-02-20 21:29         ` Moger, Babu
2025-02-21 16:00           ` Dave Martin
2025-02-21 20:10             ` Reinette Chatre
2025-02-24 17:17               ` Dave Martin
2025-02-24 17:23                 ` Luck, Tony
2025-02-28 17:50                   ` Dave Martin
2025-03-03 19:30                     ` Luck, Tony
2025-03-05 18:06                       ` Dave Martin
2025-01-22 20:20 ` [PATCH v11 23/23] x86/resctrl: Introduce interface to modify assignment states of " Babu Moger
2025-02-06 18:48   ` Reinette Chatre
2025-02-10 19:46     ` Moger, Babu
2025-02-19 16:07   ` Dave Martin
2025-02-19 17:43     ` Luck, Tony
2025-02-20 14:57       ` Dave Martin
2025-02-20  0:34     ` Moger, Babu
2025-02-20 15:21       ` Dave Martin
2025-02-20 20:57         ` Moger, Babu
2025-02-21 15:53           ` Dave Martin
2025-02-21 20:16             ` Reinette Chatre
2025-02-21 18:07   ` James Morse
2025-02-24 20:49     ` Moger, Babu
2025-02-03 14:54 ` [PATCH v11 00/23] x86/resctrl : Support AMD Assignable Bandwidth Monitoring Counters (ABMC) Peter Newman
2025-02-03 20:49   ` Moger, Babu
2025-02-13 17:51     ` Dave Martin
2025-02-13 18:08       ` Luck, Tony
2025-02-12 17:46 ` Dave Martin
2025-02-12 23:33   ` Reinette Chatre
2025-02-12 23:40     ` Reinette Chatre
2025-02-13  0:11     ` Luck, Tony
2025-02-13 17:56       ` Dave Martin
2025-02-13 17:37     ` Dave Martin
2025-02-14  6:26       ` Reinette Chatre
2025-02-14 18:31         ` Moger, Babu
2025-02-14 19:18           ` Reinette Chatre
2025-02-14 19:51             ` Moger, Babu
2025-02-17 10:26             ` Peter Newman
2025-02-17 16:45               ` Moger, Babu
2025-02-18 12:30                 ` Dave Martin
2025-02-18 15:39                   ` Moger, Babu
2025-02-18 18:14                     ` Reinette Chatre
2025-02-18 19:32                       ` Moger, Babu
2025-02-18 21:29                         ` Reinette Chatre
2025-02-19 12:26                           ` Dave Martin
2025-02-19 12:24                     ` Dave Martin
2025-02-18 16:51                 ` Luck, Tony
2025-02-18 18:27                   ` Reinette Chatre
2025-02-18 19:08                     ` Luck, Tony
2025-02-18 21:32                       ` Reinette Chatre
2025-02-18 17:49               ` Reinette Chatre
2025-02-19 11:28                 ` Peter Newman
2025-02-19 12:26                   ` Dave Martin
2025-02-19 17:56                   ` Reinette Chatre
2025-02-20 14:53                     ` Peter Newman
2025-02-20 18:36                       ` Reinette Chatre
2025-02-21 13:12                         ` Peter Newman
2025-02-21 22:43                           ` Reinette Chatre
2025-02-25 17:11                             ` Peter Newman
2025-02-25 21:31                               ` Moger, Babu
2025-02-26 13:27                                 ` Peter Newman
2025-02-26 16:25                                   ` Reinette Chatre
2025-02-26 17:12                                     ` Moger, Babu
2025-03-03 19:16                                   ` Moger, Babu
2025-03-04 16:44                                     ` Peter Newman
2025-03-04 21:49                                       ` Moger, Babu
2025-03-05 10:40                                         ` Peter Newman
2025-03-05 19:34                                           ` Moger, Babu
2025-03-10 22:48                                             ` Moger, Babu
2025-03-10 23:22                                               ` Luck, Tony
2025-03-11  1:44                                                 ` Moger, Babu
2025-03-11  3:51                                                   ` Reinette Chatre
2025-03-11 20:35                                                     ` Moger, Babu
2025-03-11 20:53                                                       ` Luck, Tony
2025-03-12 15:14                                                         ` Moger, Babu
2025-03-12 15:15                                                         ` Reinette Chatre
2025-03-12 15:07                                                       ` Reinette Chatre
2025-03-12 16:03                                                         ` Moger, Babu
2025-03-12 17:14                                                           ` Reinette Chatre
2025-03-12 18:14                                                             ` Moger, Babu
2025-03-13 16:08                                                               ` Reinette Chatre
2025-03-13 20:13                                                                 ` Moger, Babu
2025-03-13 20:36                                                                   ` Luck, Tony
2025-03-14 14:49                                                                     ` Moger, Babu
2025-03-13 21:21                                                                   ` Reinette Chatre
2025-03-14 16:18                                                                     ` Moger, Babu
2025-03-19 18:36                                                                       ` Reinette Chatre
2025-03-20 18:12                                                                         ` Moger, Babu
2025-03-20 22:35                                                                           ` Reinette Chatre
2025-03-21  0:35                                                                             ` Moger, Babu
2025-03-17 16:27                                                                     ` Peter Newman
2025-03-17 23:00                                                                       ` Moger, Babu
2025-03-19 20:53                                                                         ` Reinette Chatre
2025-03-20 20:29                                                                           ` Moger, Babu
2025-02-25 21:41                               ` Reinette Chatre
2025-02-20 16:46                     ` Dave Martin
2025-02-20 17:46                       ` Dave Martin
2025-02-20 18:36                         ` Reinette Chatre
2025-02-21 16:47                           ` Dave Martin
2025-02-21 22:43                             ` Reinette Chatre
2025-02-13 16:19   ` Moger, Babu
2025-02-13 18:18     ` Dave Martin
2025-02-13 18:39       ` Luck, Tony
2025-02-14  6:34         ` Reinette Chatre
2025-02-14  7:23           ` Reinette Chatre
2025-02-21 18:07 ` James Morse

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=8d04f824-d1cc-461c-9c57-0f26c6aa96e0@intel.com \
    --to=reinette.chatre@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=andrew.cooper3@citrix.com \
    --cc=babu.moger@amd.com \
    --cc=bp@alien8.de \
    --cc=corbet@lwn.net \
    --cc=daniel.sneddon@linux.intel.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=ebiggers@google.com \
    --cc=eranian@google.com \
    --cc=hpa@zytor.com \
    --cc=james.morse@arm.com \
    --cc=jpoimboe@kernel.org \
    --cc=kai.huang@intel.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maciej.wieczor-retman@intel.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=rostedt@goodmis.org \
    --cc=sandipan.das@amd.com \
    --cc=seanjc@google.com \
    --cc=tan.shaopeng@fujitsu.com \
    --cc=tglx@linutronix.de \
    --cc=thuth@redhat.com \
    --cc=tony.luck@intel.com \
    --cc=x86@kernel.org \
    --cc=xiaoyao.li@intel.com \
    --cc=xin3.li@intel.com \
    --cc=xiongwei.song@windriver.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).