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

Commit fccab510 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "kthread/smpboot: Disable irq while setting smpboot thread as running"

parents 8cdf5b7f 655636bb
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -106,6 +106,7 @@ static int smpboot_thread_fn(void *data)
{
	struct smpboot_thread_data *td = data;
	struct smp_hotplug_thread *ht = td->ht;
	unsigned long flags;

	while (1) {
		set_current_state(TASK_INTERRUPTIBLE);
@@ -157,9 +158,9 @@ static int smpboot_thread_fn(void *data)
			 *     p->state = TASK_RUNNING;
			 *                                   schedule();
			 */
			raw_spin_lock(&current->pi_lock);
			raw_spin_lock_irqsave(&current->pi_lock, flags);
			__set_current_state(TASK_RUNNING);
			raw_spin_unlock(&current->pi_lock);
			raw_spin_unlock_irqrestore(&current->pi_lock, flags);
			preempt_enable();
			if (ht->park && td->status == HP_THREAD_ACTIVE) {
				BUG_ON(td->cpu != smp_processor_id());