Re: schedulting in SMP machine

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Rick
Hi,

If an executing process is interrupted by an interrupt, is it ensured
that it won't get transferred to another idle CPU in the system??
AFAIK, if the task is interrupted by interrupt, its state is still in TASK_RUNNING and isn't allowed to be rescheduled into another CPU. Another thing to watch is, while in interrupt handler (top half part), it is entering atomic condition and no preemption/reschedule is allowed in that situation. So IMHO, by looking into these, we can conclude that the process stays in the current CPU.

However, after the CPU finishes the top halves of interrupt handler, thus leaving atomic situation and you are enabling full kernel level preemption, the scheduler is allowed to pick another process to be run and thus kicking out the currently running process in the CPU.

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux