On 09.06.2009 13:11 Uhr, ron minnich wrote:
On Mon, Jun 8, 2009 at 11:29 PM, Stefan Reinauerstepan@coresystems.de wrote:
I hope we find out why this is a problem, because a combination of cli+sti should never cause an interrupt that would not exist without cli+sti. If we can't I suggest we commit this in a few days (Acked-by: Stefan Reinauer stepan@coresystems.de) since it fixes the problem.
I'm going to commit it. The reason is that we should never do an sti unless we are prepared to take a device interrupt, and we are not. I think it is an error to do an sti at this point. Also, just doing a cli/sti without determining that interrupts were enabled in the first place is also a mistake.
I agree. Sorry for the premature action of me adding cli/sti to my original code submission. I only tested on real hardware (three boards, all with the same chipset)... This is a good example how complex interactions between components for seemingly trivial code can be.
Stefan