MIPS deadlock bug fix

Slegers, Walter kaffe@rufus.w3.org
Wed, 10 Jan 2001 09:37:19 +0100


Hello Maxim,

> SW> And some embedded/old processor cores simply
> SW> don't have these very convenient instructions.
> 
> Probably, you can use something like:
> 
> disable_interrupts
> compare and exchange
> enable_interrupts

Sorry, I'm in user mode.
And disabling interrupts in user mode is not allowed.

Never the less, the construction that I used to fix the bug
was:
		jthread_suspendall
		compare and exchange
		jthread_unsuspendall
Which looks rather similar to your suggestion and (if you
use jthreads) it's even portable. The jthread_suspendall is
a cheap way to temporarily prevent Kaffe's jthread
scheduler from scheduling.

Kind regards,
    Walter



-----------------------------------------------------------
This Mail has been checked for Viruses
Attention: Encrypted Mails can NOT be checked !

***

Diese Mail wurde auf Viren ueberprueft
Hinweis: Verschluesselte Mails koennen NICHT geprueft werden!
------------------------------------------------------------