lkml.org 
[lkml]   [2013]   [May]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] core: Fix maxcpus boot option broken
On Thu, 30 May 2013 00:00:06 -0400 Youquan Song <youquan.song@intel.com> wrote:

> maxcpus boot option to limit maximum number of CPUs on system, but this option
> is broken at recent kernel.

Can you help us identify which kernel versions have this bug?
Identifying the offending commit would be best. Thanks.

> Though we use maxcpus to limit CPUs number, but
> current kernel will register all of present CPUs in sysfs.
> udev will enumerate all registered cpu at sysfs, and it will bring up the CPU
> if the CPU is offline. So the maxcpus option is broken.
>
> This patch will only register the CPU which is not over limitation of maxcpus
> option in sysfs. So it will keep the maxcpus limitation when udev enumeration
> or other intention of bring up CPUs over the limitation by method like
> echo 1 > /sys/devices/system/cpu/online
>
> ...
>
> --- a/drivers/base/cpu.c
> +++ b/drivers/base/cpu.c
> @@ -272,6 +272,10 @@ int __cpuinit register_cpu(struct cpu *cpu, int num)
> {
> int error;
>
> + /* return when cpu number greater than maximum number of CPUs */
> + if (num >= setup_max_cpus)
> + return 0;
> +
> cpu->node_id = cpu_to_node(num);
> memset(&cpu->dev, 0x00, sizeof(struct device));
> cpu->dev.id = num;
> --
> 1.7.7.4


\
 
 \ /
  Last update: 2013-06-01 00:01    [W:0.043 / U:0.080 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site