Messages in this thread | | | Date | Fri, 17 Dec 1999 09:13:46 -0500 (EST) | From | William Montgomery <> | Subject | Re: scheduling problem? |
| |
On Fri, 17 Dec 1999, Andrea Arcangeli wrote:
> On Thu, 16 Dec 1999, Jamie Lokier wrote: > > > asm volatile("sti ; hlt" : : : "memory"); > ^^^^^^^^^ > > The wakeup can still happen between sti and hlt so it doesn't fix the > irq race condition. > The Intel Assembly Language Reference Manual states that the sti instruction sets the interrupt flag to 1 and the CPU then responds to external interrupts after executing the *next* instruction if the next instruction allows the interrupt to remain enabled. So the wakeup can only happen _after_ the hlt which is the desired effect.
I have implemented the above patch and tested overnight with no more problems due to the idle task.
Wm
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |