Hi,Hi,
I have a question regarding rescheduling in interrupt context.
In the book "Linux Kernel Development" by Robert Love, on page 73 it is mentioned that process switch should not be performed in interrupt context. But isn't ret_from_intr also part of the interrupt context. ( ret_from_intr calls schedule. ). Please let me know if I am missing something here.
Thanks for your help and time.
Regards,
Thomas
When an interrupt occurs, Linux goes in Kernel mode. And it doesn't quit this mode until all the interruption handlers have been executed.
The function schedule() check if there is some interrupt handlers (generally botom halves) to execute and execute it if there are some.
But this is only true in the kernels < 2.5.
2.6 is preemptive, so "processes" in kernel mode can be interrupted or switched with other processes, even user processes.
Hope i'v brought u some help
-- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/