* [PULL] cpumask bugfixes (re-xmit)
@ 2009-02-16 7:09 Rusty Russell
2009-02-16 7:52 ` Ingo Molnar
0 siblings, 1 reply; 2+ messages in thread
From: Rusty Russell @ 2009-02-16 7:09 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, Ingo Molnar
(Just the vital ones: the other two are speculative problems we can argue about
separately).
The following changes since commit d2f8d7ee1a9b4650b4e43325b321801264f7c37a:
Linus Torvalds (1):
Linux 2.6.29-rc5
are available in the git repository at:
ssh://master.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus.git master
Rusty Russell (2):
cpumask: fix powernow-k8: partial revert of 2fdf66b491ac706657946442789ec644cc317e1a
cpumask: Use cpu_*_mask accessors code: alpha
arch/alpha/kernel/process.c | 8 ++++----
arch/alpha/kernel/smp.c | 12 ++++++------
arch/x86/kernel/cpu/cpufreq/powernow-k8.c | 12 +++++++-----
3 files changed, 17 insertions(+), 15 deletions(-)
diff --git a/arch/alpha/kernel/process.c b/arch/alpha/kernel/process.c
index f238370..8d0097f 100644
--- a/arch/alpha/kernel/process.c
+++ b/arch/alpha/kernel/process.c
@@ -93,8 +93,8 @@ common_shutdown_1(void *generic_ptr)
if (cpuid != boot_cpuid) {
flags |= 0x00040000UL; /* "remain halted" */
*pflags = flags;
- cpu_clear(cpuid, cpu_present_map);
- cpu_clear(cpuid, cpu_possible_map);
+ set_cpu_present(cpuid, false);
+ set_cpu_possible(cpuid, false);
halt();
}
#endif
@@ -120,8 +120,8 @@ common_shutdown_1(void *generic_ptr)
#ifdef CONFIG_SMP
/* Wait for the secondaries to halt. */
- cpu_clear(boot_cpuid, cpu_present_map);
- cpu_clear(boot_cpuid, cpu_possible_map);
+ set_cpu_present(boot_cpuid, false);
+ set_cpu_possible(boot_cpuid, false);
while (cpus_weight(cpu_present_map))
barrier();
#endif
diff --git a/arch/alpha/kernel/smp.c b/arch/alpha/kernel/smp.c
index 00f1dc3..b1fe567 100644
--- a/arch/alpha/kernel/smp.c
+++ b/arch/alpha/kernel/smp.c
@@ -120,12 +120,12 @@ void __cpuinit
smp_callin(void)
{
int cpuid = hard_smp_processor_id();
- cpumask_t mask = cpu_online_map;
- if (cpu_test_and_set(cpuid, mask)) {
+ if (cpu_online(cpuid)) {
printk("??, cpu 0x%x already present??\n", cpuid);
BUG();
}
+ set_cpu_online(cpuid, true);
/* Turn on machine checks. */
wrmces(7);
@@ -436,8 +436,8 @@ setup_smp(void)
((char *)cpubase + i*hwrpb->processor_size);
if ((cpu->flags & 0x1cc) == 0x1cc) {
smp_num_probed++;
- cpu_set(i, cpu_possible_map);
- cpu_set(i, cpu_present_map);
+ set_cpu_possible(i, true);
+ set_cpu_present(i, true);
cpu->pal_revision = boot_cpu_palrev;
}
@@ -470,8 +470,8 @@ smp_prepare_cpus(unsigned int max_cpus)
/* Nothing to do on a UP box, or when told not to. */
if (smp_num_probed == 1 || max_cpus == 0) {
- cpu_possible_map = cpumask_of_cpu(boot_cpuid);
- cpu_present_map = cpumask_of_cpu(boot_cpuid);
+ init_cpu_possible(cpumask_of(boot_cpuid));
+ init_cpu_present(cpumask_of(boot_cpuid));
printk(KERN_INFO "SMP mode deactivated.\n");
return;
}
diff --git a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
index fb039cd..6428aa1 100644
--- a/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
+++ b/arch/x86/kernel/cpu/cpufreq/powernow-k8.c
@@ -1157,8 +1157,7 @@ static int __cpuinit powernowk8_cpu_init(struct cpufreq_policy *pol)
data->cpu = pol->cpu;
data->currpstate = HW_PSTATE_INVALID;
- rc = powernow_k8_cpu_init_acpi(data);
- if (rc) {
+ if (powernow_k8_cpu_init_acpi(data)) {
/*
* Use the PSB BIOS structure. This is only availabe on
* an UP version, and is deprecated by AMD.
@@ -1176,17 +1175,20 @@ static int __cpuinit powernowk8_cpu_init(struct cpufreq_policy *pol)
"ACPI maintainers and complain to your BIOS "
"vendor.\n");
#endif
- goto err_out;
+ kfree(data);
+ return -ENODEV;
}
if (pol->cpu != 0) {
printk(KERN_ERR FW_BUG PFX "No ACPI _PSS objects for "
"CPU other than CPU0. Complain to your BIOS "
"vendor.\n");
- goto err_out;
+ kfree(data);
+ return -ENODEV;
}
rc = find_psb_table(data);
if (rc) {
- goto err_out;
+ kfree(data);
+ return -ENODEV;
}
/* Take a crude guess here.
* That guess was in microseconds, so multiply with 1000 */
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PULL] cpumask bugfixes (re-xmit)
2009-02-16 7:09 [PULL] cpumask bugfixes (re-xmit) Rusty Russell
@ 2009-02-16 7:52 ` Ingo Molnar
0 siblings, 0 replies; 2+ messages in thread
From: Ingo Molnar @ 2009-02-16 7:52 UTC (permalink / raw)
To: Rusty Russell; +Cc: Linus Torvalds, linux-kernel
* Rusty Russell <rusty@rustcorp.com.au> wrote:
> (Just the vital ones: the other two are speculative problems we can argue about
> separately).
>
> The following changes since commit d2f8d7ee1a9b4650b4e43325b321801264f7c37a:
> Linus Torvalds (1):
> Linux 2.6.29-rc5
>
> are available in the git repository at:
>
> ssh://master.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus.git master
>
> Rusty Russell (2):
> cpumask: fix powernow-k8: partial revert of 2fdf66b491ac706657946442789ec644cc317e1a
> cpumask: Use cpu_*_mask accessors code: alpha
>
> arch/alpha/kernel/process.c | 8 ++++----
> arch/alpha/kernel/smp.c | 12 ++++++------
> arch/x86/kernel/cpu/cpufreq/powernow-k8.c | 12 +++++++-----
> 3 files changed, 17 insertions(+), 15 deletions(-)
Thanks, these look a lot more surgical for late -rc's than the
previous one.
Ingo
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-02-16 7:52 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-02-16 7:09 [PULL] cpumask bugfixes (re-xmit) Rusty Russell
2009-02-16 7:52 ` Ingo Molnar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox