From: Joe Perches <joe@perches.com>
To: Alexander Gordeev <agordeev@redhat.com>
Cc: linux-kernel@vger.kernel.org, x86@kernel.org,
Suresh Siddha <suresh.b.siddha@intel.com>,
Yinghai Lu <yinghai@kernel.org>
Subject: Re: [PATCH 3/6] x86/apic: Fix ugly casting and branching in cpu_mask_to_apicid_and()
Date: Thu, 14 Jun 2012 06:00:09 -0700 [thread overview]
Message-ID: <1339678809.24180.5.camel@joe2Laptop> (raw)
In-Reply-To: <20120614074954.GF3383@dhcp-26-207.brq.redhat.com>
On Thu, 2012-06-14 at 09:49 +0200, Alexander Gordeev wrote:
[]
> diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
[]
> @@ -2127,19 +2127,19 @@ int default_cpu_mask_to_apicid_and(const struct cpumask *cpumask,
> const struct cpumask *andmask,
> unsigned int *apicid)
> {
> - int cpu;
> + unsigned int cpu;
>
> for_each_cpu_and(cpu, cpumask, andmask) {
> if (cpumask_test_cpu(cpu, cpu_online_mask))
> break;
> }
>
> - if (likely((unsigned int)cpu < nr_cpu_ids)) {
> + if (likely(cpu < nr_cpu_ids)) {
> *apicid = per_cpu(x86_cpu_to_apicid, cpu);
> return 0;
> - } else {
> - return -EINVAL;
> }
> +
> + return -EINVAL;
I think you should reverse the test and make the
expected common case the normal non-indented return.
if (unlikely(cpu >= nr_cpu_ids))
return -EINVAL;
*apicid = per_cpu(x86_cpu_to_apicid, cpu);
return 0;
}
Perhaps the unlikely isn't necessary.
> diff --git a/arch/x86/kernel/apic/x2apic_uv_x.c b/arch/x86/kernel/apic/x2apic_uv_x.c
[]
> @@ -285,12 +285,12 @@ uv_cpu_mask_to_apicid_and(const struct cpumask *cpumask,
> break;
> }
>
> - if (likely((unsigned int)cpu < nr_cpu_ids)) {
> + if (likely(cpu < nr_cpu_ids)) {
> *apicid = per_cpu(x86_cpu_to_apicid, cpu) | uv_apicid_hibits;
> return 0;
> - } else {
> - return -EINVAL;
> }
> +
> + return -EINVAL;
here too
next prev parent reply other threads:[~2012-06-14 13:00 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <cover.1339657103.git.agordeev@redhat.com>
2012-06-14 7:49 ` [PATCH 1/6] x86/x2apic/cluster: vector_allocation_domain() should return a value Alexander Gordeev
2012-06-14 9:59 ` Ingo Molnar
2012-06-14 10:39 ` Alexander Gordeev
2012-06-14 14:45 ` [tip:x86/apic] x86/x2apic/cluster: Vector_allocation_domain() " tip-bot for Alexander Gordeev
2012-06-14 7:49 ` [PATCH 2/6] x86/apic: Eliminate cpu_mask_to_apicid() operation Alexander Gordeev
2012-06-14 14:46 ` [tip:x86/apic] " tip-bot for Alexander Gordeev
2012-06-14 7:49 ` [PATCH 3/6] x86/apic: Fix ugly casting and branching in cpu_mask_to_apicid_and() Alexander Gordeev
2012-06-14 13:00 ` Joe Perches [this message]
2012-06-14 14:47 ` [tip:x86/apic] " tip-bot for Alexander Gordeev
2012-06-14 7:50 ` [PATCH 4/6] x86/apic/es7000+summit: Fix compile warning in cpu_mask_to_apicid() Alexander Gordeev
2012-06-14 14:48 ` [tip:x86/apic] " tip-bot for Alexander Gordeev
2012-06-14 7:50 ` [PATCH 5/6] x86/apic/es7000+summit: Always make valid apicid from a cpumask Alexander Gordeev
2012-06-14 14:49 ` [tip:x86/apic] " tip-bot for Alexander Gordeev
2012-06-14 7:50 ` [PATCH 6/6] x86/apic/es7000: Make apicid of a cluster (not CPU) " Alexander Gordeev
2012-06-14 14:50 ` [tip:x86/apic] " tip-bot for Alexander Gordeev
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=1339678809.24180.5.camel@joe2Laptop \
--to=joe@perches.com \
--cc=agordeev@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=suresh.b.siddha@intel.com \
--cc=x86@kernel.org \
--cc=yinghai@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
all inboxes | Powered by JetHome®