From: "Moger, Babu" <bmoger@amd.com>
To: Reinette Chatre <reinette.chatre@intel.com>,
"corbet@lwn.net" <corbet@lwn.net>,
"fenghua.yu@intel.com" <fenghua.yu@intel.com>,
"tglx@linutronix.de" <tglx@linutronix.de>,
"mingo@redhat.com" <mingo@redhat.com>,
"bp@alien8.de" <bp@alien8.de>,
"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>
Cc: "x86@kernel.org" <x86@kernel.org>,
"hpa@zytor.com" <hpa@zytor.com>,
"paulmck@kernel.org" <paulmck@kernel.org>,
"rdunlap@infradead.org" <rdunlap@infradead.org>,
"tj@kernel.org" <tj@kernel.org>,
"peterz@infradead.org" <peterz@infradead.org>,
"seanjc@google.com" <seanjc@google.com>,
"Phillips, Kim" <kim.phillips@amd.com>,
"jmattson@google.com" <jmattson@google.com>,
"ilpo.jarvinen@linux.intel.com" <ilpo.jarvinen@linux.intel.com>,
"jithu.joseph@intel.com" <jithu.joseph@intel.com>,
"kan.liang@linux.intel.com" <kan.liang@linux.intel.com>,
"Dadhania, Nikunj" <nikunj.dadhania@amd.com>,
"daniel.sneddon@linux.intel.com" <daniel.sneddon@linux.intel.com>,
"pbonzini@redhat.com" <pbonzini@redhat.com>,
"rick.p.edgecombe@intel.com" <rick.p.edgecombe@intel.com>,
"rppt@kernel.org" <rppt@kernel.org>,
"maciej.wieczor-retman@intel.com"
<maciej.wieczor-retman@intel.com>,
"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"eranian@google.com" <eranian@google.com>,
"peternewman@google.com" <peternewman@google.com>,
"Giani, Dhaval" <Dhaval.Giani@amd.com>
Subject: Re: [PATCH 02/15] x86/resctrl: Remove hard-coded memory bandwidth event configuration
Date: Thu, 7 Dec 2023 17:37:45 -0600 [thread overview]
Message-ID: <20f60b82-b2de-0ddb-661c-1ec48cbb44b4@amd.com> (raw)
In-Reply-To: <26385423-6288-4f6c-b238-30c599250cdd@intel.com>
Hi Reinette,
> -----Original Message-----
> From: Reinette Chatre <reinette.chatre@intel.com>
> Sent: Thursday, December 7, 2023 1:02 PM
> To: Moger, Babu <Babu.Moger@amd.com>; corbet@lwn.net;
> fenghua.yu@intel.com; tglx@linutronix.de; mingo@redhat.com;
> bp@alien8.de; dave.hansen@linux.intel.com
> Cc: x86@kernel.org; hpa@zytor.com; paulmck@kernel.org;
> rdunlap@infradead.org; tj@kernel.org; peterz@infradead.org;
> seanjc@google.com; Phillips, Kim <kim.phillips@amd.com>;
> jmattson@google.com; ilpo.jarvinen@linux.intel.com;
> jithu.joseph@intel.com; kan.liang@linux.intel.com; Dadhania, Nikunj
> <nikunj.dadhania@amd.com>; daniel.sneddon@linux.intel.com;
> pbonzini@redhat.com; rick.p.edgecombe@intel.com; rppt@kernel.org;
> maciej.wieczor-retman@intel.com; linux-doc@vger.kernel.org; linux-
> kernel@vger.kernel.org; eranian@google.com; peternewman@google.com;
> Giani, Dhaval <Dhaval.Giani@amd.com>
> Subject: Re: [PATCH 02/15] x86/resctrl: Remove hard-coded memory
> bandwidth event configuration
>
> Hi Babu,
>
> On 12/6/2023 11:17 AM, Moger, Babu wrote:
> > On 12/6/23 12:32, Reinette Chatre wrote:
> >> On 12/6/2023 9:17 AM, Moger, Babu wrote:
> >>> On 12/5/23 17:21, Reinette Chatre wrote:
> >>>> On 11/30/2023 4:57 PM, Babu Moger wrote:
>
> ...
>
> >>>>> static void mondata_config_read(struct rdt_domain *d, struct
> >>>>> mon_config_info *mon_info) @@ -1621,7 +1621,7 @@ static int
> mbm_config_write_domain(struct rdt_resource *r,
> >>>>> int ret = 0;
> >>>>>
> >>>>> /* mon_config cannot be more than the supported set of events */
> >>>>> - if (val > MAX_EVT_CONFIG_BITS) {
> >>>>> + if (val > resctrl_max_evt_bitmask) {
> >>>>> rdt_last_cmd_puts("Invalid event configuration\n");
> >>>>> return -EINVAL;
> >>>>> }
> >>>>
> >>>> This does not look right. resctrl_max_evt_bitmask contains the
> >>>> supported types. A user may set a value that is less than
> >>>> resctrl_max_evt_bitmask but yet have an unsupported bit set, no?
> >>>
> >>> I think I have to make this clear in the patch. There is no
> >>> difference in the definition. Hardware supports all the events reported by
> the cpuid.
> >>
> >> I'll try to elaborate using an example. Let's say AMD decides to make
> >> hardware with hypothetical support mask of:
> >> resctrl_max_evt_bitmask = 0x4F (no support for Slow Mem).
> >>
> >> What if user attempts to set config that enables monitoring of Slow Mem:
> >> val = 0x30
> >>
> >> In the above example, val is not larger than resctrl_max_evt_bitmask
> >> but it is an invalid config, no?
> >
> > Yes. It is invalid config in this case.
> >
> > How about changing the check to something like this?
> >
> > if ((val & resctrl_max_evt_bitmask) != val) {
> > rdt_last_cmd_puts("Invalid event configuration\n");
> > return -EINVAL;
> > }
>
> This would address the scenario. I also think that it will be helpful to print the
> valid bitmask as part of the error message. The original implementation
> specified that all bits are valid and in doing so no interface accompanied the
> feature to share with users what the valid bits are. The only way user space
> can learn this is is to read the *_config files after the first resctrl mount after a
> system boot to see with which config values the system was initialized with
> (assuming system was initialized with all supported bits enabled).
Sure. Will add the error message including the valid bitmask.
Thanks
Babu
next prev parent reply other threads:[~2023-12-07 23:37 UTC|newest]
Thread overview: 145+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-01 0:57 [PATCH 00/15] x86/resctrl : Support AMD QoS RMID Pinning feature Babu Moger
2023-12-01 0:57 ` [PATCH 01/15] x86/resctrl: Remove hard-coded memory bandwidth limit Babu Moger
2023-12-05 23:18 ` Reinette Chatre
2023-12-06 16:29 ` Moger, Babu
2023-12-06 17:09 ` Reinette Chatre
2023-12-06 17:37 ` Moger, Babu
2023-12-01 0:57 ` [PATCH 02/15] x86/resctrl: Remove hard-coded memory bandwidth event configuration Babu Moger
2023-12-05 23:21 ` Reinette Chatre
2023-12-06 17:17 ` Moger, Babu
2023-12-06 18:32 ` Reinette Chatre
2023-12-06 19:17 ` Moger, Babu
2023-12-07 19:02 ` Reinette Chatre
2023-12-07 23:37 ` Moger, Babu [this message]
2023-12-01 0:57 ` [PATCH 03/15] x86/resctrl: Add support for Assignable Bandwidth Monitoring Counters (ABMC) Babu Moger
2023-12-01 0:57 ` [PATCH 04/15] x86/resctrl: Add ABMC feature in the command line options Babu Moger
2023-12-01 0:57 ` [PATCH 05/15] x86/resctrl: Detect ABMC feature details Babu Moger
2023-12-01 0:57 ` [PATCH 06/15] x86/resctrl: Add the mount option for ABMC feature Babu Moger
2023-12-01 0:57 ` [PATCH 07/15] x86/resctrl: Add support to enable/disable " Babu Moger
2023-12-05 16:48 ` kernel test robot
2023-12-05 17:40 ` Moger, Babu
2023-12-05 18:50 ` kernel test robot
2023-12-01 0:57 ` [PATCH 08/15] x86/resctrl: Introduce interface to display number of ABMC counters Babu Moger
2023-12-01 0:57 ` [PATCH 09/15] x86/resctrl: Add interface to display monitor state of the group Babu Moger
2023-12-01 0:57 ` [PATCH 10/15] x86/resctrl: Initialize ABMC counters bitmap Babu Moger
2023-12-01 0:57 ` [PATCH 11/15] x86/resctrl: Add data structures for ABMC assignment Babu Moger
2023-12-01 0:57 ` [PATCH 12/15] x86/resctrl: Introduce mbm_total_cfg and mbm_local_cfg Babu Moger
2023-12-01 0:57 ` [PATCH 13/15] x86/resctrl: Add the interface to assign a ABMC counter Babu Moger
2023-12-01 0:57 ` [PATCH 14/15] x86/resctrl: Add interface unassign " Babu Moger
2023-12-05 17:55 ` kernel test robot
2023-12-05 18:09 ` Moger, Babu
2023-12-01 0:57 ` [PATCH 15/15] x86/resctrl: Update ABMC assignment on event configuration changes Babu Moger
2023-12-05 0:13 ` [PATCH 00/15] x86/resctrl : Support AMD QoS RMID Pinning feature Peter Newman
2023-12-05 23:17 ` Reinette Chatre
2023-12-06 15:40 ` Moger, Babu
2023-12-06 18:49 ` Reinette Chatre
2023-12-07 16:12 ` Moger, Babu
2023-12-07 19:29 ` Reinette Chatre
2023-12-07 23:07 ` Moger, Babu
2023-12-07 23:26 ` Reinette Chatre
2023-12-07 23:34 ` Moger, Babu
2023-12-08 22:58 ` Moger, Babu
2023-12-08 19:45 ` Peter Newman
2023-12-08 20:09 ` Reinette Chatre
2023-12-12 18:02 ` [PATCH v2 1/2] x86/resctrl: Remove hard-coded memory bandwidth limit Babu Moger
2023-12-15 2:20 ` Reinette Chatre
2024-01-02 19:52 ` Moger, Babu
2023-12-12 18:02 ` [PATCH v2 2/2] x86/resctrl: Remove hard-coded memory bandwidth event configuration Babu Moger
2023-12-15 1:24 ` Reinette Chatre
2024-01-02 20:00 ` Moger, Babu
2024-01-03 18:38 ` Reinette Chatre
2024-01-03 21:03 ` Moger, Babu
2024-01-03 21:40 ` Reinette Chatre
2024-01-04 13:48 ` Moger, Babu
2024-01-04 21:21 ` [PATCH v3 1/2] x86/resctrl: Remove hard-coded memory bandwidth limit Babu Moger
2024-01-05 21:14 ` Reinette Chatre
2024-01-05 23:51 ` Moger, Babu
2024-01-04 21:21 ` [PATCH v3 2/2] x86/resctrl: Remove hard-coded memory bandwidth event configuration Babu Moger
2024-01-05 21:18 ` Reinette Chatre
2024-01-06 0:13 ` Moger, Babu
2024-01-11 21:36 ` [PATCH v4 1/2] x86/resctrl: Remove hard-coded memory bandwidth limit Babu Moger
2024-01-11 21:36 ` [PATCH v4 2/2] x86/resctrl: Read supported bandwidth sources using CPUID command Babu Moger
2024-01-12 19:02 ` Reinette Chatre
2024-01-12 20:38 ` Moger, Babu
2024-01-12 21:24 ` Reinette Chatre
2024-01-12 21:54 ` Moger, Babu
2024-01-15 22:52 ` [PATCH v5 1/2] x86/resctrl: Remove hard-coded memory bandwidth limit Babu Moger
2024-01-23 10:36 ` Borislav Petkov
2024-01-23 14:58 ` Moger, Babu
2024-01-15 22:52 ` [PATCH v5 2/2] x86/resctrl: Read supported bandwidth sources using CPUID command Babu Moger
2024-01-16 19:44 ` Reinette Chatre
2024-01-16 21:39 ` Moger, Babu
2024-01-19 18:22 ` [PATCH v2 00/17] x86/resctrl : Support AMD Assignable Bandwidth Monitoring Counters (ABMC) Babu Moger
2024-01-19 18:22 ` [PATCH v2 01/17] x86/cpufeatures: Add word 21 for scattered CPUID features Babu Moger
2024-01-19 18:22 ` [PATCH v2 02/17] x86/resctrl: Add support for Assignable Bandwidth Monitoring Counters (ABMC) Babu Moger
2024-01-19 18:22 ` [PATCH v2 03/17] x86/resctrl: Add ABMC feature in the command line options Babu Moger
2024-01-19 18:22 ` [PATCH v2 04/17] x86/resctrl: Detect Assignable Bandwidth Monitoring feature details Babu Moger
2024-02-20 17:56 ` James Morse
2024-02-20 21:27 ` Moger, Babu
2024-01-19 18:22 ` [PATCH v2 05/17] x86/resctrl: Introduce resctrl_file_fflags_init Babu Moger
2024-01-19 18:22 ` [PATCH v2 06/17] x86/resctrl: Introduce interface to display number of ABMC counters Babu Moger
2024-02-20 18:14 ` James Morse
2024-02-20 21:23 ` Moger, Babu
2024-01-19 18:22 ` [PATCH v2 07/17] x86/resctrl: Add support to enable/disable ABMC feature Babu Moger
2024-01-19 18:22 ` [PATCH v2 08/17] x86/resctrl: Introduce the interface to display ABMC state Babu Moger
2024-01-19 18:22 ` [PATCH v2 09/17] x86/resctrl: Introdruce rdtgroup_assign_enable_write Babu Moger
2024-01-19 18:22 ` [PATCH v2 10/17] x86/resctrl: Add interface to display monitor state of the group Babu Moger
2024-01-19 18:22 ` [PATCH v2 11/17] x86/resctrl: Report Unsupported when MBM events are read Babu Moger
2024-01-19 18:22 ` [PATCH v2 12/17] x86/resctrl: Initialize assignable counters bitmap Babu Moger
2024-01-19 18:22 ` [PATCH v2 13/17] x86/resctrl: Add data structures for ABMC assignment Babu Moger
2024-01-19 18:22 ` [PATCH v2 14/17] x86/resctrl: Introduce mbm_total_cfg and mbm_local_cfg Babu Moger
2024-01-19 18:22 ` [PATCH v2 15/17] x86/resctrl: Add the interface to assign the RMID Babu Moger
2024-01-19 18:22 ` [PATCH v2 16/17] x86/resctrl: Add the interface unassign " Babu Moger
2024-01-19 18:22 ` [PATCH v2 17/17] x86/resctrl: Update RMID assignments on event configuration changes Babu Moger
2024-01-19 18:32 ` [PATCH v2 00/17] x86/resctrl : Support AMD Assignable Bandwidth Monitoring Counters (ABMC) Reinette Chatre
2024-01-19 20:35 ` Moger, Babu
2024-02-02 4:09 ` Reinette Chatre
2024-02-02 5:01 ` Reinette Chatre
2024-02-02 21:57 ` Moger, Babu
2024-02-05 22:38 ` Reinette Chatre
2024-02-08 17:29 ` Moger, Babu
2024-02-16 20:18 ` Peter Newman
2024-02-19 18:00 ` Moger, Babu
2024-02-20 15:21 ` James Morse
2024-02-20 18:11 ` Peter Newman
2024-02-23 21:47 ` Moger, Babu
2024-02-20 15:21 ` James Morse
2024-02-20 18:14 ` James Morse
2024-02-20 20:48 ` Moger, Babu
2024-02-23 17:17 ` Reinette Chatre
2024-02-23 20:11 ` Moger, Babu
2024-02-23 22:21 ` Reinette Chatre
2024-02-26 17:59 ` Moger, Babu
2024-02-26 21:20 ` Reinette Chatre
2024-02-27 18:12 ` Moger, Babu
2024-02-27 18:26 ` Peter Newman
2024-02-27 19:37 ` Moger, Babu
2024-02-27 20:06 ` Peter Newman
2024-02-27 20:42 ` Moger, Babu
2024-02-27 23:50 ` Reinette Chatre
2024-02-28 17:59 ` Moger, Babu
2024-02-28 20:04 ` Reinette Chatre
2024-02-29 20:37 ` Moger, Babu
2024-02-29 21:50 ` Reinette Chatre
2024-03-01 20:36 ` Moger, Babu
2024-03-01 23:20 ` Reinette Chatre
2024-03-04 19:34 ` Moger, Babu
2024-03-04 19:58 ` Reinette Chatre
2024-03-04 22:24 ` Moger, Babu
2024-03-05 14:58 ` Moger, Babu
2024-03-05 17:12 ` Reinette Chatre
2024-03-05 19:35 ` Moger, Babu
2024-03-07 18:57 ` Peter Newman
2024-03-07 20:41 ` Reinette Chatre
2024-03-07 22:33 ` Peter Newman
2024-03-07 22:53 ` Reinette Chatre
2024-03-07 23:14 ` Peter Newman
2024-03-08 17:13 ` Reinette Chatre
2024-03-08 3:50 ` Moger, Babu
2024-03-08 17:20 ` Reinette Chatre
2024-03-12 13:30 ` Moger, Babu
2024-03-11 15:40 ` Moger, Babu
2024-03-12 15:13 ` Reinette Chatre
2024-03-12 17:07 ` Moger, Babu
2024-03-12 17:15 ` Reinette Chatre
2024-03-12 17:24 ` 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=20f60b82-b2de-0ddb-661c-1ec48cbb44b4@amd.com \
--to=bmoger@amd.com \
--cc=Dhaval.Giani@amd.com \
--cc=bp@alien8.de \
--cc=corbet@lwn.net \
--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=ilpo.jarvinen@linux.intel.com \
--cc=jithu.joseph@intel.com \
--cc=jmattson@google.com \
--cc=kan.liang@linux.intel.com \
--cc=kim.phillips@amd.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maciej.wieczor-retman@intel.com \
--cc=mingo@redhat.com \
--cc=nikunj.dadhania@amd.com \
--cc=paulmck@kernel.org \
--cc=pbonzini@redhat.com \
--cc=peternewman@google.com \
--cc=peterz@infradead.org \
--cc=rdunlap@infradead.org \
--cc=reinette.chatre@intel.com \
--cc=rick.p.edgecombe@intel.com \
--cc=rppt@kernel.org \
--cc=seanjc@google.com \
--cc=tglx@linutronix.de \
--cc=tj@kernel.org \
--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;
as well as URLs for NNTP newsgroup(s).