linux-doc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
To: "Moger, Babu" <Babu.Moger@amd.com>
Cc: "corbet@lwn.net" <corbet@lwn.net>,
	Reinette Chatre <reinette.chatre@intel.com>,
	"tglx@linutronix.de" <tglx@linutronix.de>,
	"mingo@redhat.com" <mingo@redhat.com>,
	"bp@alien8.de" <bp@alien8.de>,
	"fenghua.yu@intel.com" <fenghua.yu@intel.com>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
	"x86@kernel.org" <x86@kernel.org>,
	"hpa@zytor.com" <hpa@zytor.com>,
	"paulmck@kernel.org" <paulmck@kernel.org>,
	"akpm@linux-foundation.org" <akpm@linux-foundation.org>,
	"quic_neeraju@quicinc.com" <quic_neeraju@quicinc.com>,
	"rdunlap@infradead.org" <rdunlap@infradead.org>,
	"damien.lemoal@opensource.wdc.com"
	<damien.lemoal@opensource.wdc.com>,
	"songmuchun@bytedance.com" <songmuchun@bytedance.com>,
	"peterz@infradead.org" <peterz@infradead.org>,
	"jpoimboe@kernel.org" <jpoimboe@kernel.org>,
	"pbonzini@redhat.com" <pbonzini@redhat.com>,
	"chang.seok.bae@intel.com" <chang.seok.bae@intel.com>,
	"pawan.kumar.gupta@linux.intel.com" 
	<pawan.kumar.gupta@linux.intel.com>,
	"jmattson@google.com" <jmattson@google.com>,
	"daniel.sneddon@linux.intel.com" <daniel.sneddon@linux.intel.com>,
	"Das1, Sandipan" <Sandipan.Das@amd.com>,
	"tony.luck@intel.com" <tony.luck@intel.com>,
	"james.morse@arm.com" <james.morse@arm.com>,
	"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	"bagasdotme@gmail.com" <bagasdotme@gmail.com>,
	"eranian@google.com" <eranian@google.com>,
	"christophe.leroy@csgroup.eu" <christophe.leroy@csgroup.eu>,
	"jarkko@kernel.org" <jarkko@kernel.org>,
	"adrian.hunter@intel.com" <adrian.hunter@intel.com>,
	"quic_jiles@quicinc.com" <quic_jiles@quicinc.com>,
	"peternewman@google.com" <peternewman@google.com>
Subject: RE: [PATCH v4 7/7] x86/resctrl: Add debug files when mounted with debug option
Date: Mon, 24 Apr 2023 18:12:29 +0300 (EEST)	[thread overview]
Message-ID: <ff99af93-5121-5a27-e24f-6354b9dffa1f@linux.intel.com> (raw)
In-Reply-To: <MW3PR12MB4553359D41816826AA001A1095609@MW3PR12MB4553.namprd12.prod.outlook.com>

[-- Attachment #1: Type: text/plain, Size: 5394 bytes --]

On Fri, 21 Apr 2023, Moger, Babu wrote:
> > -----Original Message-----
> > From: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
> > Sent: Thursday, April 20, 2023 3:59 AM
> > To: Moger, Babu <Babu.Moger@amd.com>
> > Cc: corbet@lwn.net; Reinette Chatre <reinette.chatre@intel.com>;
> > tglx@linutronix.de; mingo@redhat.com; bp@alien8.de; 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; Das1, Sandipan <Sandipan.Das@amd.com>;
> > tony.luck@intel.com; james.morse@arm.com; linux-doc@vger.kernel.org;
> > LKML <linux-kernel@vger.kernel.org>; bagasdotme@gmail.com;
> > eranian@google.com; christophe.leroy@csgroup.eu; jarkko@kernel.org;
> > adrian.hunter@intel.com; quic_jiles@quicinc.com; peternewman@google.com
> > Subject: Re: [PATCH v4 7/7] x86/resctrl: Add debug files when mounted with
> > debug option
> > 
> > On Wed, 19 Apr 2023, Moger, Babu wrote:
> > 
> > >
> > >
> > > On 4/19/23 08:20, Ilpo Järvinen wrote:
> > > > On Mon, 17 Apr 2023, Babu Moger wrote:
> > > >
> > > >> Add the debug files to the resctrl hierarchy.
> > > >>
> > > >> Signed-off-by: Babu Moger <babu.moger@amd.com>
> > > >> ---
> > > >>  arch/x86/kernel/cpu/resctrl/internal.h |    1 +
> > > >>  arch/x86/kernel/cpu/resctrl/rdtgroup.c |   54
> > +++++++++++++++++++++++++++++++-
> > > >>  2 files changed, 54 insertions(+), 1 deletion(-)
> > > >>
> > > >> diff --git a/arch/x86/kernel/cpu/resctrl/internal.h
> > > >> b/arch/x86/kernel/cpu/resctrl/internal.h
> > > >> index 1eac07ebc31b..855109abb480 100644
> > > >> --- a/arch/x86/kernel/cpu/resctrl/internal.h
> > > >> +++ b/arch/x86/kernel/cpu/resctrl/internal.h
> > > >> @@ -288,6 +288,7 @@ struct rdtgroup {
> > > >>  #define RFTYPE_TOP			BIT(4)
> > > >>  #define RFTYPE_RES_CACHE		BIT(5)
> > > >>  #define RFTYPE_RES_MB			BIT(6)
> > > >> +#define RFTYPE_DEBUG			BIT(7)
> > > >>  #define RFTYPE_CTRL_INFO		(RFTYPE_INFO |
> > RFTYPE_CTRL)
> > > >>  #define RFTYPE_MON_INFO			(RFTYPE_INFO |
> > RFTYPE_MON)
> > > >>  #define RFTYPE_TOP_INFO			(RFTYPE_INFO |
> > RFTYPE_TOP)
> > > >> diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> > > >> b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> > > >> index 15ded0dd5b09..1ec4359348c2 100644
> > > >> --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> > > >> +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> > > >> @@ -1880,6 +1880,7 @@ static struct rftype res_common_files[] = {
> > > >>  		.mode		= 0444,
> > > >>  		.kf_ops		= &rdtgroup_kf_single_ops,
> > > >>  		.seq_show	= rdtgroup_rmid_show,
> > > >> +		.fflags		= RFTYPE_BASE | RFTYPE_DEBUG,
> > > >>  	},
> > > >>  	{
> > > >>  		.name		= "schemata",
> > > >> @@ -1909,6 +1910,7 @@ static struct rftype res_common_files[] = {
> > > >>  		.mode		= 0444,
> > > >>  		.kf_ops		= &rdtgroup_kf_single_ops,
> > > >>  		.seq_show	= rdtgroup_closid_show,
> > > >> +		.fflags		= RFTYPE_CTRL_BASE | RFTYPE_DEBUG,
> > > >>  	},
> > > >>
> > > >>  };
> > > >> @@ -2420,6 +2422,49 @@ static int mkdir_mondata_all(struct
> > kernfs_node *parent_kn,
> > > >>  			     struct rdtgroup *prgrp,
> > > >>  			     struct kernfs_node **mon_data_kn);
> > > >>
> > > >> +static void resctrl_add_debug_files(void) {
> > > >> +	struct rftype *rfts, *rft;
> > > >> +	int len;
> > > >> +
> > > >> +	rfts = res_common_files;
> > > >> +	len = ARRAY_SIZE(res_common_files);
> > > >> +
> > > >> +	lockdep_assert_held(&rdtgroup_mutex);
> > > >> +
> > > >> +	for (rft = rfts; rft < rfts + len; rft++) {
> > > >> +		if (rft->fflags & RFTYPE_DEBUG) {
> > > >> +			rft->fflags &= ~RFTYPE_DEBUG;
> > > >
> > > > I don't fully follow why you need to play with ->fflags like this.
> > > >
> > > > Is it for the ->fflags test in rdtgroup_add_files()? Can't you just
> > > > do some extra masking there for RFTYPE_DEBUG based on resctrl_debug
> > > > which you already keep?
> > >
> > > Actually with this change, I can remove all these tricks here.
> > > I don't have to change the check "if (rft->fflags && ((fflags &
> > > rft->fflags) == rft->fflags)) {"
> > >
> > > diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> > > b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> > > index 1ec4359348c2..b560c44817bb 100644
> > > --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> > > +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c
> > > @@ -1925,6 +1925,9 @@ static int rdtgroup_add_files(struct kernfs_node
> > > *kn, unsigned long fflags)
> > >
> > >         lockdep_assert_held(&rdtgroup_mutex);
> > >
> > > +       if (resctrl_debug)
> > > +               fflags |= RFTYPE_DEBUG;
> > 
> > Yes, looks good.
> > 
> > It matches to the idea I had in my mind but doesn't require putting it 
> > into the if condition itself.
>
> Without if condition?  How?  Let me know.

I was referring to the if condition within the loop, not to doing it
without some conditional (I had an (resctrl_debug ? RFTYPE_DEBUG : 0)
construct in my mind).

To remove if, it would, of course, be possible to use another static 
file-level variable but it doesn't seem justified. I think what you 
proposed is fine for this use and looks clean.

-- 
 i.

  reply	other threads:[~2023-04-24 15:12 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-17 23:33 [PATCH v4 0/7] x86/resctrl: Miscellaneous resctrl features Babu Moger
2023-04-17 23:34 ` [PATCH v4 1/7] x86/resctrl: Add multiple tasks to the resctrl group at once Babu Moger
2023-04-19 12:58   ` Ilpo Järvinen
2023-04-19 14:52     ` Moger, Babu
2023-04-20  9:38       ` Ilpo Järvinen
2023-05-04 18:57   ` Reinette Chatre
2023-05-05 17:09     ` Moger, Babu
2023-05-05 18:49       ` Reinette Chatre
2023-05-09 17:13         ` Moger, Babu
2023-04-17 23:34 ` [PATCH v4 2/7] x86/resctrl: Remove unnecessary rftype flags Babu Moger
2023-05-04 18:58   ` Reinette Chatre
2023-05-05 18:31     ` Moger, Babu
2023-05-05 18:54       ` Reinette Chatre
2023-05-05 19:04         ` Moger, Babu
2023-05-05 21:28           ` Reinette Chatre
2023-05-09 18:54             ` Moger, Babu
2023-05-09 19:31             ` Moger, Babu
2023-04-17 23:34 ` [PATCH v4 3/7] x86/resctrl: Rename rftype flags for consistency Babu Moger
2023-04-19 12:44   ` Ilpo Järvinen
2023-04-19 14:29     ` Moger, Babu
2023-05-04 19:00   ` Reinette Chatre
     [not found]     ` <232c8e85-0d5b-8e24-33d0-eab5eee186f0@amd.com>
2023-05-05 21:24       ` Reinette Chatre
2023-05-09 17:42         ` Moger, Babu
2023-04-17 23:34 ` [PATCH v4 4/7] x86/resctrl: Re-arrange RFTYPE flags and add more comments Babu Moger
2023-05-04 19:00   ` Reinette Chatre
2023-05-05 20:40     ` Moger, Babu
2023-05-05 21:24       ` Reinette Chatre
2023-05-09 17:33         ` Moger, Babu
2023-04-17 23:34 ` [PATCH v4 5/7] x86/resctrl: Introduce "-o debug" mount option Babu Moger
2023-05-04 19:02   ` Reinette Chatre
2023-05-05 21:26     ` Moger, Babu
2023-04-17 23:34 ` [PATCH v4 6/7] x86/resctrl: Display CLOSID and RMID for the resctrl groups Babu Moger
2023-04-18  2:22   ` Bagas Sanjaya
2023-04-18 14:11     ` Moger, Babu
2023-05-04 19:04   ` Reinette Chatre
2023-05-05 21:45     ` Moger, Babu
2023-05-05 23:25       ` Reinette Chatre
2023-04-17 23:35 ` [PATCH v4 7/7] x86/resctrl: Add debug files when mounted with debug option Babu Moger
2023-04-19 13:20   ` Ilpo Järvinen
2023-04-19 15:16     ` Moger, Babu
2023-04-19 15:16     ` Moger, Babu
2023-04-19 17:16     ` Moger, Babu
2023-04-20  8:59       ` Ilpo Järvinen
2023-04-21 18:47         ` Moger, Babu
2023-04-24 15:12           ` Ilpo Järvinen [this message]
2023-05-04 18:54 ` [PATCH v4 0/7] x86/resctrl: Miscellaneous resctrl features Reinette Chatre
2023-05-05 15:43   ` Moger, Babu
2023-05-05 17:47     ` Reinette Chatre
2023-05-05 18:03       ` Moger, Babu
2023-05-29 10:18 ` Shaopeng Tan (Fujitsu)

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=ff99af93-5121-5a27-e24f-6354b9dffa1f@linux.intel.com \
    --to=ilpo.jarvinen@linux.intel.com \
    --cc=Babu.Moger@amd.com \
    --cc=Sandipan.Das@amd.com \
    --cc=adrian.hunter@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=bagasdotme@gmail.com \
    --cc=bp@alien8.de \
    --cc=chang.seok.bae@intel.com \
    --cc=christophe.leroy@csgroup.eu \
    --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=jarkko@kernel.org \
    --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=peternewman@google.com \
    --cc=peterz@infradead.org \
    --cc=quic_jiles@quicinc.com \
    --cc=quic_neeraju@quicinc.com \
    --cc=rdunlap@infradead.org \
    --cc=reinette.chatre@intel.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;
as well as URLs for NNTP newsgroup(s).