|
@@ -113,7 +113,7 @@ halt_processor(void)
|
|
|
{
|
|
|
/* REVISIT : redirect I/O Interrupts to another CPU? */
|
|
|
/* REVISIT : does PM *know* this CPU isn't available? */
|
|
|
- cpu_clear(smp_processor_id(), cpu_online_map);
|
|
|
+ set_cpu_online(smp_processor_id(), false);
|
|
|
local_irq_disable();
|
|
|
for (;;)
|
|
|
;
|
|
@@ -296,13 +296,14 @@ smp_cpu_init(int cpunum)
|
|
|
mb();
|
|
|
|
|
|
/* Well, support 2.4 linux scheme as well. */
|
|
|
- if (cpu_test_and_set(cpunum, cpu_online_map))
|
|
|
+ if (cpu_isset(cpunum, cpu_online_map))
|
|
|
{
|
|
|
extern void machine_halt(void); /* arch/parisc.../process.c */
|
|
|
|
|
|
printk(KERN_CRIT "CPU#%d already initialized!\n", cpunum);
|
|
|
machine_halt();
|
|
|
}
|
|
|
+ set_cpu_online(cpunum, true);
|
|
|
|
|
|
/* Initialise the idle task for this CPU */
|
|
|
atomic_inc(&init_mm.mm_count);
|
|
@@ -424,8 +425,8 @@ void __init smp_prepare_boot_cpu(void)
|
|
|
/* Setup BSP mappings */
|
|
|
printk(KERN_INFO "SMP: bootstrap CPU ID is %d\n", bootstrap_processor);
|
|
|
|
|
|
- cpu_set(bootstrap_processor, cpu_online_map);
|
|
|
- cpu_set(bootstrap_processor, cpu_present_map);
|
|
|
+ set_cpu_online(bootstrap_processor, true);
|
|
|
+ set_cpu_present(bootstrap_processor, true);
|
|
|
}
|
|
|
|
|
|
|
|
@@ -436,8 +437,7 @@ void __init smp_prepare_boot_cpu(void)
|
|
|
*/
|
|
|
void __init smp_prepare_cpus(unsigned int max_cpus)
|
|
|
{
|
|
|
- cpus_clear(cpu_present_map);
|
|
|
- cpu_set(0, cpu_present_map);
|
|
|
+ init_cpu_present(cpumask_of(0));
|
|
|
|
|
|
parisc_max_cpus = max_cpus;
|
|
|
if (!max_cpus)
|