Skip to content

Commit a01a1f0

Browse files
author
Fox Snowpatch
committed
1 parent a85c72f commit a01a1f0

File tree

6 files changed

+10
-21
lines changed

6 files changed

+10
-21
lines changed

arch/arm/kernel/machine_kexec.c

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -142,11 +142,8 @@ static void machine_kexec_mask_interrupts(void)
142142
if (chip->irq_eoi && irqd_irq_inprogress(&desc->irq_data))
143143
chip->irq_eoi(&desc->irq_data);
144144

145-
if (chip->irq_mask)
146-
chip->irq_mask(&desc->irq_data);
147-
148-
if (chip->irq_disable && !irqd_irq_disabled(&desc->irq_data))
149-
chip->irq_disable(&desc->irq_data);
145+
irq_set_status_flags(i, IRQ_DISABLE_UNLAZY);
146+
irq_disable(desc);
150147
}
151148
}
152149

arch/arm64/kernel/machine_kexec.c

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -230,11 +230,8 @@ static void machine_kexec_mask_interrupts(void)
230230
chip->irq_eoi)
231231
chip->irq_eoi(&desc->irq_data);
232232

233-
if (chip->irq_mask)
234-
chip->irq_mask(&desc->irq_data);
235-
236-
if (chip->irq_disable && !irqd_irq_disabled(&desc->irq_data))
237-
chip->irq_disable(&desc->irq_data);
233+
irq_set_status_flags(i, IRQ_DISABLE_UNLAZY);
234+
irq_disable(desc);
238235
}
239236
}
240237

arch/powerpc/kexec/core.c

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,8 @@ void machine_kexec_mask_interrupts(void) {
3636
if (chip->irq_eoi && irqd_irq_inprogress(&desc->irq_data))
3737
chip->irq_eoi(&desc->irq_data);
3838

39-
if (chip->irq_mask)
40-
chip->irq_mask(&desc->irq_data);
41-
42-
if (chip->irq_disable && !irqd_irq_disabled(&desc->irq_data))
43-
chip->irq_disable(&desc->irq_data);
39+
irq_set_status_flags(i, IRQ_DISABLE_UNLAZY);
40+
irq_disable(desc);
4441
}
4542
}
4643

arch/riscv/kernel/machine_kexec.c

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -129,11 +129,8 @@ static void machine_kexec_mask_interrupts(void)
129129
if (chip->irq_eoi && irqd_irq_inprogress(&desc->irq_data))
130130
chip->irq_eoi(&desc->irq_data);
131131

132-
if (chip->irq_mask)
133-
chip->irq_mask(&desc->irq_data);
134-
135-
if (chip->irq_disable && !irqd_irq_disabled(&desc->irq_data))
136-
chip->irq_disable(&desc->irq_data);
132+
irq_set_status_flags(i, IRQ_DISABLE_UNLAZY);
133+
irq_disable(desc);
137134
}
138135
}
139136

include/linux/irq.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -600,6 +600,8 @@ enum {
600600

601601
#define IRQ_DEFAULT_INIT_FLAGS ARCH_IRQ_INIT_FLAGS
602602

603+
extern void irq_disable(struct irq_desc *desc);
604+
603605
struct irqaction;
604606
extern int setup_percpu_irq(unsigned int irq, struct irqaction *new);
605607
extern void remove_percpu_irq(unsigned int irq, struct irqaction *act);

kernel/irq/internals.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,6 @@ extern int irq_startup(struct irq_desc *desc, bool resend, bool force);
9191
extern void irq_shutdown(struct irq_desc *desc);
9292
extern void irq_shutdown_and_deactivate(struct irq_desc *desc);
9393
extern void irq_enable(struct irq_desc *desc);
94-
extern void irq_disable(struct irq_desc *desc);
9594
extern void irq_percpu_enable(struct irq_desc *desc, unsigned int cpu);
9695
extern void irq_percpu_disable(struct irq_desc *desc, unsigned int cpu);
9796
extern void mask_irq(struct irq_desc *desc);

0 commit comments

Comments
 (0)