[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHp75VfGPgbD8gBdvchBn5U8gH93zoHB9ja3KucUuxVNq+_MLg@mail.gmail.com>
Date: Wed, 14 Mar 2018 19:24:14 +0200
From: Andy Shevchenko <andy.shevchenko@...il.com>
To: Dou Liyang <douly.fnst@...fujitsu.com>
Cc: ACPI Devel Maling List <linux-acpi@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
"Rafael J. Wysocki" <rjw@...ysocki.net>,
Len Brown <lenb@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Artem Bityutskiy <dedekind1@...il.com>, ming.lei@...hat.com
Subject: Re: [RFC PATCH] ACPI / processor: Get accurate possible CPU count
On Wed, Mar 14, 2018 at 12:28 PM, Dou Liyang <douly.fnst@...fujitsu.com> wrote:
> +static void __init acpi_update_possible_map(void)
> +{
> + unsigned int cpu, nr = 0;
> +
> + if (nr_cpu_ids <= nr_unique_ids)
> + return;
> +
> + for_each_possible_cpu(cpu) {
> + if (nr >= nr_unique_ids)
> + set_cpu_possible(cpu, false);
> + nr++;
> + }
IIUC this can be optimized to:
if (nr_unique_ids >= nr_cpu_ids)
return;
/* Don't yet figure out if it's superfluous */
if (nr_unique_ids >= cpumask_last(cpu_possible_mask))
return;
for_each_cpu_wrap(cpu, cpu_possible_mask, nr_unique_ids)
set_cpu_possible(cpu, false);
> + nr_cpu_ids = nr_unique_ids;
> + pr_info("Allowing %d possible CPUs\n", nr_cpu_ids);
> +}
--
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists