From: Shivappa Vikas <vikas.shivappa@linux.intel.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: Vikas Shivappa <vikas.shivappa@linux.intel.com>,
vikas.shivappa@intel.com, linux-kernel@vger.kernel.org,
x86@kernel.org, hpa@zytor.com, mingo@kernel.org,
peterz@infradead.org, ravi.v.shankar@intel.com,
tony.luck@intel.com, fenghua.yu@intel.com, andi.kleen@intel.com
Subject: Re: [PATCH 4/5] x86/intel_rdt: Reset the cbm MSR during rmdir
Date: Thu, 9 Mar 2017 17:45:13 -0800 (PST) [thread overview]
Message-ID: <alpine.DEB.2.10.1703091744380.5245@vshiva-Udesk> (raw)
In-Reply-To: <alpine.DEB.2.20.1703011505330.4005@nanos>
On Wed, 1 Mar 2017, Thomas Gleixner wrote:
> On Fri, 17 Feb 2017, Vikas Shivappa wrote:
>
>> During rmdir reset the ctrl values to all 1s in the QOS_MSR for the
>> directory's closid. This is done so that that next time when the closid
>> is reused they dont reflect old values.
>
> Sigh.
>
>> +static int reset_all_ctrls(struct rdt_resource *r, u32 sclosid, u32 eclosid)
>
> What's so wrong with using 'start' and 'end' instead of these cryptic names?
>
>> {
>> struct msr_param msr_param;
>> cpumask_var_t cpu_mask;
>> @@ -791,8 +791,8 @@ static int reset_all_cbms(struct rdt_resource *r)
>> return -ENOMEM;
>>
>> msr_param.res = r;
>> - msr_param.low = 0;
>> - msr_param.high = r->num_closid;
>> + msr_param.low = sclosid;
>> + msr_param.high = eclosid;
>>
>> /*
>> * Disable resource control for this resource by setting all
>> @@ -802,7 +802,7 @@ static int reset_all_cbms(struct rdt_resource *r)
>> list_for_each_entry(d, &r->domains, list) {
>> cpumask_set_cpu(cpumask_any(&d->cpu_mask), cpu_mask);
>>
>> - for (i = 0; i < r->num_closid; i++)
>> + for (i = sclosid; i < eclosid; i++)
>
> 'eclosid' or even when named 'end' is an outright bogus argument to this
> function. What you really want is:
>
> static int reset_all_ctrls(struct rdt_resource *r, u32 closid, u32 count)
>
> which works here:
>
>> for_each_enabled_rdt_resource(r)
>> - reset_all_cbms(r);
>> + reset_all_ctrls(r, 0, r->num_closid);
>
> and makes this part understandable:
>
>> + /*
>> + * Put domain control values back to default for the
>> + * rdtgrp thats being removed.
>> + */
>> + for_each_enabled_rdt_resource(r)
>> + reset_all_ctrls(r, rdtgrp->closid, rdtgrp->closid + 1);
>
> reset_all_ctrls(r, rdtgrp->closid, 1);
Will fix the parameters to start and count..
>
> What you have done:
>
>> + reset_all_ctrls(r, rdtgrp->closid, rdtgrp->closid + 1);
>
> made me really look twice to figure out what the heck this is about.
>
> Thanks,
>
> tglx
>
next prev parent reply other threads:[~2017-03-10 1:44 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-17 19:38 [PATCH 0/5] x86/intel_rdt: Improvements/Fixes to RDT framework Vikas Shivappa
2017-02-17 19:38 ` [PATCH 1/5] x86/intel_rdt: Update control registers only when user really modifies it Vikas Shivappa
2017-03-01 13:31 ` Thomas Gleixner
2017-03-10 0:00 ` Shivappa Vikas
2017-02-17 19:38 ` [PATCH 2/5] x86/intel_rdt: Improvements to parsing schemata Vikas Shivappa
2017-03-01 14:03 ` Thomas Gleixner
2017-03-10 0:03 ` Shivappa Vikas
2017-03-10 10:53 ` Thomas Gleixner
2017-03-10 18:25 ` Shivappa Vikas
2017-03-10 18:58 ` Thomas Gleixner
2017-03-10 22:05 ` Luck, Tony
2017-03-11 7:47 ` Thomas Gleixner
2017-03-24 17:51 ` [PATCH] x86/intel_rdt: Implement "update" mode when writing schemata file Luck, Tony
2017-03-24 23:18 ` Fenghua Yu
2017-03-30 18:33 ` Shivappa Vikas
2017-03-31 8:24 ` Thomas Gleixner
2017-03-31 17:40 ` Shivappa Vikas
2017-03-31 17:49 ` Thomas Gleixner
2017-03-31 18:45 ` Shivappa Vikas
2017-02-17 19:38 ` [PATCH 3/5] x86/intel_rdt: Fail early on a resource with incorrect domains Vikas Shivappa
2017-03-01 14:05 ` Thomas Gleixner
2017-02-17 19:38 ` [PATCH 4/5] x86/intel_rdt: Reset the cbm MSR during rmdir Vikas Shivappa
2017-03-01 14:11 ` Thomas Gleixner
2017-03-10 1:45 ` Shivappa Vikas [this message]
2017-02-17 19:38 ` [PATCH 5/5] x86/intel_rdt: hotcpu updates for RDT Vikas Shivappa
2017-03-01 14:24 ` Thomas Gleixner
2017-03-30 19:03 ` Shivappa Vikas
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=alpine.DEB.2.10.1703091744380.5245@vshiva-Udesk \
--to=vikas.shivappa@linux.intel.com \
--cc=andi.kleen@intel.com \
--cc=fenghua.yu@intel.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=peterz@infradead.org \
--cc=ravi.v.shankar@intel.com \
--cc=tglx@linutronix.de \
--cc=tony.luck@intel.com \
--cc=vikas.shivappa@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).