Function report |
Source Code:kernel\irq\chip.c |
Create Date:2022-07-28 10:11:21 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:handle_nested_irq - Handle a nested irq from a irq thread*@irq: the interrupt number* Handle interrupts which are nested into a threaded interrupt* handler. The handler function is called inside the calling* threads context.
Proto:void handle_nested_irq(unsigned int irq)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| unsigned int | irq |
| 460 | desc = Interrupt to descriptor |
| 464 | might_sleep() |
| 466 | raw_spin_lock_irq( & lock) |
| 468 | istate &= ~(IRQS_REPLAY | IRQS_WAITING) |
| 470 | action = IRQ action list |
| 471 | If Value for the false possibility is greater at compile time(!action || irqd_irq_disabled( & irq_data)) Then |
| 472 | istate |= IRQS_PENDING |
| 473 | Go to out_unlock |
| 477 | irqd_set( & irq_data, IRQD_IRQ_INPROGRESS) |
| 478 | raw_spin_unlock_irq( & lock) |
| 480 | action_ret = IRQ_NONE |
| 482 | action_ret |= thread_fn(irq, dev_id) |
| 484 | If Not noirqdebug Then note_interrupt(desc, action_ret) |
| 487 | raw_spin_lock_irq( & lock) |
| 488 | irqd_clear( & irq_data, IRQD_IRQ_INPROGRESS) |
| 490 | out_unlock : |
| 491 | raw_spin_unlock_irq( & lock) |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |