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

Commit 018a779b authored by Prasad Sodagudi's avatar Prasad Sodagudi Committed by Rishabh Bhatnagar
Browse files

genirq: call cancel_work_sync from irq_set_affinity_notifier



When ever notification of IRQ affinity changes, call
cancel_work_sync from irq_set_affinity_notifier to cancel
all pending works to avoid work list corruption.

Change-Id: I1f093bcc43be8c6696bad29250e4926cbc6c4029
Signed-off-by: default avatarPrasad Sodagudi <psodagud@codeaurora.org>
Signed-off-by: default avatarRishabh Bhatnagar <rishabhb@codeaurora.org>
parent b1dc513c
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -356,6 +356,9 @@ irq_set_affinity_notifier(unsigned int irq, struct irq_affinity_notify *notify)
	desc->affinity_notify = notify;
	raw_spin_unlock_irqrestore(&desc->lock, flags);

	if (!notify && old_notify)
		cancel_work_sync(&old_notify->work);

	if (old_notify)
		kref_put(&old_notify->kref, old_notify->release);