diff options
Diffstat (limited to 'kernel/irq/pm.c')
-rw-r--r-- | kernel/irq/pm.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/irq/pm.c b/kernel/irq/pm.c index 5204a6d1b985..d22786a6dbde 100644 --- a/kernel/irq/pm.c +++ b/kernel/irq/pm.c | |||
@@ -123,6 +123,8 @@ void suspend_device_irqs(void) | |||
123 | unsigned long flags; | 123 | unsigned long flags; |
124 | bool sync; | 124 | bool sync; |
125 | 125 | ||
126 | if (irq_settings_is_nested_thread(desc)) | ||
127 | continue; | ||
126 | raw_spin_lock_irqsave(&desc->lock, flags); | 128 | raw_spin_lock_irqsave(&desc->lock, flags); |
127 | sync = suspend_device_irq(desc, irq); | 129 | sync = suspend_device_irq(desc, irq); |
128 | raw_spin_unlock_irqrestore(&desc->lock, flags); | 130 | raw_spin_unlock_irqrestore(&desc->lock, flags); |
@@ -163,6 +165,8 @@ static void resume_irqs(bool want_early) | |||
163 | 165 | ||
164 | if (!is_early && want_early) | 166 | if (!is_early && want_early) |
165 | continue; | 167 | continue; |
168 | if (irq_settings_is_nested_thread(desc)) | ||
169 | continue; | ||
166 | 170 | ||
167 | raw_spin_lock_irqsave(&desc->lock, flags); | 171 | raw_spin_lock_irqsave(&desc->lock, flags); |
168 | resume_irq(desc, irq); | 172 | resume_irq(desc, irq); |