__raise_softirq_irqoff() must be called with interrupts disabled to protect the per CPU softirq pending state update against an interrupt and soft interrupt handling on return from interrupt. Add a lockdep assertion to validate the calling convention. [ tglx: Massaged changelog ]
Showing the changes to kernel (1 of 1 file). Show all
Unified · Split
| @@ -481,6 +481,7 @@ void raise_softirq(unsigned int nr) · 480 unmodified lines | |||
| 481 | 481 | ||
| 482 | void __raise_softirq_irqoff(unsigned int nr) | 482 | void __raise_softirq_irqoff(unsigned int nr) |
| 483 | { | 483 | { |
| 484 | lockdep_assert_irqs_disabled(); | ||
| 484 | trace_softirq_raise(nr); | 485 | trace_softirq_raise(nr); |
| 485 | or_softirq_pending(1UL << nr); | 486 | or_softirq_pending(1UL << nr); |
| 486 | } | 487 | } |