fix following compile error:

kernel/irq/manage.c:388:20: error: passing argument 1 of 'cancel_work_sync' 
from incompatible pointer type

The compile error was got with CONFIG_PREEMPT_RT_BASE enabled,
On RT kernel work_struct was replaced by kthread_work, so here
we should use kthread_cancel_work_sync() instead of cancel_work_sync()
to fix it.

Signed-off-by: Liwei Song <liwei.s...@windriver.com>
---
 kernel/irq/manage.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index f72bd3a357da..143f87bbff48 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -385,7 +385,11 @@ irq_set_affinity_notifier(unsigned int irq, struct 
irq_affinity_notify *notify)
        raw_spin_unlock_irqrestore(&desc->lock, flags);
 
        if (old_notify) {
+#ifdef CONFIG_PREEMPT_RT_BASE
+               kthread_cancel_work_sync(&old_notify->work);
+#else
                cancel_work_sync(&old_notify->work);
+#endif
                kref_put(&old_notify->kref, old_notify->release);
        }
 
-- 
2.18.1

-- 
_______________________________________________
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto

Reply via email to