On Fri, Sep 05, 2008 at 06:07:30PM +0100, John Levon wrote:

> Slightly more tricky here. The reason it uses cli/sti at all is because
> kpreempt_enable() will indeed trigger a pre-emption, which is verboten
> here (since we may have come in via a fast-trap, and we don't have any
> of the RUPDATE_PENDING fun). So it really needs to be:
> 
>       curthread->t_preempt++;
>       ...
>       curthread->t_preempt--;
> 
> like in xpv_timestamp.c. Unless I've got it totally wrong, of course :)

Which of course I have. See this bug:

6740460 Dom0 hangs while running libsched - no resources to continue

So I should be ignored, you can't directly use ->t_preempt like this at
all. Not sure if you made that change but I thought I'd admit liability
:)

regards
john

Reply via email to