All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] genirq: call cancel_work_sync from irq_set_affinity_notifier
@ 2019-03-20 22:00 Prasad Sodagudi
  2019-03-21 16:19 ` Thomas Gleixner
  0 siblings, 1 reply; 5+ messages in thread
From: Prasad Sodagudi @ 2019-03-20 22:00 UTC (permalink / raw)
  To: tglx; +Cc: linux-kernel, psodagud

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.

Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
---
 kernel/irq/manage.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index 9ec34a2..da8b2ee 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -356,6 +356,9 @@ static void irq_affinity_notify(struct work_struct *work)
 	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);
 
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,\na Linux Foundation Collaborative Project


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-03-24 21:16 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-03-20 22:00 [PATCH] genirq: call cancel_work_sync from irq_set_affinity_notifier Prasad Sodagudi
2019-03-21 16:19 ` Thomas Gleixner
2019-03-21 20:31   ` Sodagudi Prasad
2019-03-24 14:57     ` [PATCH v2] genirq: Prevent use-after-free and work list corruption Prasad Sodagudi
2019-03-24 21:16       ` [tip:irq/core] " tip-bot for Prasad Sodagudi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.