Re: [BUG] sched: big numa dynamic sched domain memory corruption

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Paul Jackson <[email protected]> wrote:

> @@ -5675,12 +5675,13 @@ void build_sched_domains(const cpumask_t
>  		int group;
>  		struct sched_domain *sd = NULL, *p;
>  		cpumask_t nodemask = node_to_cpumask(cpu_to_node(i));
> +		int cpus_per_node = cpus_weight(nodemask);
>  
>  		cpus_and(nodemask, nodemask, *cpu_map);
>  
>  #ifdef CONFIG_NUMA
> -		if (cpus_weight(*cpu_map)
> -				> SD_NODES_PER_DOMAIN*cpus_weight(nodemask)) {
> +		if (cpus_weight(cpu_online_map)
> +				> SD_NODES_PER_DOMAIN*cpus_per_node) {
>  			if (!sched_group_allnodes) {
>  				sched_group_allnodes
>  					= kmalloc(sizeof(struct sched_group)

even if the bug is not fully understood in time, i think we should queue 
the patch above for v2.6.18. (with the small nit that you should put the 
new cpus_per_node variable under CONFIG_NUMA too, to avoid a compiler 
warning)

Acked-by: Ingo Molnar <[email protected]>

	Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux