Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fc25da9e authored by Glauber Costa's avatar Glauber Costa Committed by Ingo Molnar
Browse files

x86: remove vector_lock around cpu_online_map



This lock does not protect cpu_online_map, so its
length can be shortened, and in some cases, removed.

Signed-off-by: default avatarGlauber Costa <gcosta@redhat.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 70708a18
Loading
Loading
Loading
Loading
+1 −3
Original line number Original line Diff line number Diff line
@@ -261,9 +261,9 @@ void __cpuinit start_secondary(void)
	/*
	/*
	 * Allow the master to continue.
	 * Allow the master to continue.
	 */
	 */
	spin_unlock(&vector_lock);
	cpu_set(smp_processor_id(), cpu_online_map);
	cpu_set(smp_processor_id(), cpu_online_map);
	per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE;
	per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE;
	spin_unlock(&vector_lock);


	unlock_ipi_call_lock();
	unlock_ipi_call_lock();


@@ -879,10 +879,8 @@ int __cpu_disable(void)
	local_irq_disable();
	local_irq_disable();
	remove_siblinginfo(cpu);
	remove_siblinginfo(cpu);


	spin_lock(&vector_lock);
	/* It's now safe to remove this processor from the online map */
	/* It's now safe to remove this processor from the online map */
	cpu_clear(cpu, cpu_online_map);
	cpu_clear(cpu, cpu_online_map);
	spin_unlock(&vector_lock);
	remove_cpu_from_maps();
	remove_cpu_from_maps();
	fixup_irqs(cpu_online_map);
	fixup_irqs(cpu_online_map);
	return 0;
	return 0;