On Sat, 2013-02-09 at 14:57 +0800, Peter Teoh wrote:
On Sat, Feb 9, 2013 at 1:47 PM, anish kumar . Timer interrupts is supposed to cause scheduling and scheduler may or may not pick up your last process(we always use the term "task" in kernel space) after handling timer interrupt. >
Sorry if I may disagree, correct me if wrong. Timer interrupt and scheduler is two different thing. I just counted in the "drivers" subdirectory, there are at least more than 200 places where "setup_timer()" is called, and these have nothing to do with scheduling. For eg, heartbeat operation etc. Not sure I misunderstood something?
Have a look at kernel/timer.c and kernel/hrtimer.c. There are many sched() calls in these files.This will invoke scheduler.
-- Regards, Peter Teoh