This patch is for Linux 4.19 with a RT patch.
The second 'if' block does not check notify for NULL,
this leads to a system crash.
Most likely, there is a typo here.
With old_notify system works as expected.
Signed-off-by: Ivan Safonov <[email protected]>
---
kernel/irq/manage.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index 290cd520dba1..79a7072dfb3c 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -412,7 +412,7 @@ irq_set_affinity_notifier(unsigned int irq, struct irq_affinity_notify *notify)
if (old_notify) {
#ifdef CONFIG_PREEMPT_RT_BASE
- kthread_cancel_work_sync(¬ify->work);
+ kthread_cancel_work_sync(&old_notify->work);
#else
cancel_work_sync(&old_notify->work);
#endif
--
2.21.0
On Sat, 28 Sep 2019 18:19:20 +0300
Ivan Safonov <[email protected]> wrote:
> This patch is for Linux 4.19 with a RT patch.
>
> The second 'if' block does not check notify for NULL,
> this leads to a system crash.
>
> Most likely, there is a typo here.
>
> With old_notify system works as expected.
>
> Signed-off-by: Ivan Safonov <[email protected]>
> ---
> kernel/irq/manage.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
> index 290cd520dba1..79a7072dfb3c 100644
> --- a/kernel/irq/manage.c
> +++ b/kernel/irq/manage.c
> @@ -412,7 +412,7 @@ irq_set_affinity_notifier(unsigned int irq, struct irq_affinity_notify *notify)
>
> if (old_notify) {
> #ifdef CONFIG_PREEMPT_RT_BASE
> - kthread_cancel_work_sync(¬ify->work);
> + kthread_cancel_work_sync(&old_notify->work);
Thanks for the patch, but I currently have an RFC out that rewrites all
this code. I'm hoping to apply the RFC patch next week.
-- Steve
> #else
> cancel_work_sync(&old_notify->work);
> #endif