No point to do memory management from a interrupt disabled spin locked
region.

Signed-off-by: Thomas Gleixner <[email protected]>
Cc: Daniel Lezcano <[email protected]>
---
 kernel/irq/manage.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -1489,7 +1489,6 @@ static struct irqaction *__free_irq(unsi
        if (!desc->action) {
                irq_settings_clr_disable_unlazy(desc);
                irq_shutdown(desc);
-               irq_remove_timings(desc);
        }
 
 #ifdef CONFIG_SMP
@@ -1531,8 +1530,10 @@ static struct irqaction *__free_irq(unsi
                }
        }
 
-       if (!desc->action)
+       if (!desc->action) {
                irq_release_resources(desc);
+               irq_remove_timings(desc);
+       }
 
        mutex_unlock(&desc->request_mutex);
 


Reply via email to