When bottom half is called with respect to interrupt handlers
interrupt-handling, linux-device-driver, linux-kernel
Solution
¿ when and how bottom half is executed ?
When: it is executed AFTER the interrupt handler, and in fact, its execution is triggered by the interrupt handler itself. Sometimes it executes just right after the interrupt handler, sometimes not.
How: if your bottom half is implemented by a tasklet, its execution is scheduled by using the `task_schedule()` function, normally called from inside the interrupt handler. This function does not execute the tasklet, but informs the scheduler to queue the tasklet function for later execution.
Problem
When referring to Linux Kernel Interrupt handlers as I know there are two stages of interrupt executions first is Top Half and second Bottom Half. I know Top Half will be executed immediately on occurrence of interrupt from HW but my doubt is when and how bottom half is executed ?