From: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Michael Neuling <mikey@neuling.org>,
Paul Mackerras <paulus@samba.org>,
Anton Blanchard <anton@samba.org>,
linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v4 1/2] powerpc: cleanup APIs for cpu/thread/core mappings
Date: Thu, 5 Aug 2010 16:30:58 +0530 [thread overview]
Message-ID: <20100805110058.GF3282@dirshya.in.ibm.com> (raw)
In-Reply-To: <1280810653.1902.87.camel@pasglop>
* Benjamin Herrenschmidt <benh@kernel.crashing.org> [2010-08-03 14:44:13]:
> On Thu, 2010-07-22 at 06:27 +0530, Vaidyanathan Srinivasan wrote:
> > These APIs take logical cpu number as input
> > Change cpu_first_thread_in_core() to cpu_leftmost_thread_sibling()
> > Change cpu_last_thread_in_core() to cpu_rightmost_thread_sibling()
>
> I'm still not happy here.
>
> I don't find leftmost/rightmost to be a "progress" from the previous
> naming. If you really want to change to avoid in_core() at the end, then
> call them first_thread_sibling() and last_thread_sibling().
Hi Ben,
The naming is based on our discussion during the first RFC:
http://lists.ozlabs.org/pipermail/linuxppc-dev/2010-April/081610.html
I am fine with first_thread_sibling() name instead of
cpu_{left,right}most_thread_sibling(). The goal is to distinguish
between APIs returning logical cpu numbers and core indexes.
first_thread_sibling() implies that the parameter and return value are
logical cpu (thread) number.
I will change the name as per your suggestion and post an update.
> Then you change:
>
> > -static inline int cpu_thread_to_core(int cpu)
> > -{
> > - return cpu >> threads_shift;
> > -}
>
> .../... to:
>
> > -/* Must be called when no change can occur to cpu_present_mask,
> > +/* Helper routines for cpu to core mapping */
> > +int cpu_core_of_thread(int cpu)
> > +{
> > + return cpu >> threads_shift;
> > +}
> > +EXPORT_SYMBOL_GPL(cpu_core_of_thread);
The cpu_core_of_thread() name implies that the return type is a core index
and not a logical cpu number.
cpu_core_of_thread(5) = 1
cpu_first_thread_of_core(1) = 4
Do you think cpu_core_number_of_thread() will explain the return type
better?
> Any reason you are making it out of line other than gratuituous
> bloat ? :-)
>
> > +int cpu_first_thread_of_core(int core)
> > +{
> > + return core << threads_shift;
> > +}
> > +EXPORT_SYMBOL_GPL(cpu_first_thread_of_core);
>
> Same.
The reason behind out of line is to avoid exporting threads_shift or
other variables like threads_per_core and have this API exported so
that modules can read them. If we make these wrapper inline, then we
will have to export the variables themselves which is not a good idea.
Thanks for the review.
--Vaidy
next prev parent reply other threads:[~2010-08-05 11:01 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-22 0:57 [PATCH v4 0/2] powerpc: add support for new hcall H_BEST_ENERGY Vaidyanathan Srinivasan
2010-07-22 0:57 ` [PATCH v4 1/2] powerpc: cleanup APIs for cpu/thread/core mappings Vaidyanathan Srinivasan
2010-08-03 4:44 ` Benjamin Herrenschmidt
2010-08-05 11:00 ` Vaidyanathan Srinivasan [this message]
2010-07-22 0:57 ` [PATCH v4 2/2] powerpc: add support for new hcall H_BEST_ENERGY Vaidyanathan Srinivasan
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=20100805110058.GF3282@dirshya.in.ibm.com \
--to=svaidy@linux.vnet.ibm.com \
--cc=anton@samba.org \
--cc=benh@kernel.crashing.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mikey@neuling.org \
--cc=paulus@samba.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 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.