A classloader and some other components assume that semaphores and
latches does not reset suspend disable count and some time ago latches
and semaphores work this way.
A java monitor ,in reverse, resets the suspend disable status in
monitorEnter and monitor_wait command, and DRLVM takes care about it.
It looks like someone changed the behavior of semaphores to be
compatible with the monitors.

I agree with Xiao-Feng: the sleeping thread should be in suspend_enable mode.
So I vote for leaving the current threading code as is but checking
DRLVM for a code that not ready for the new behavior.

For example by putting assert(gc enabled ==  true() and checking failed places.

Thanks
Artem


On 10/13/06, Xiao-Feng Li <[EMAIL PROTECTED]> wrote:
GC should be enabled in waiting state. In case that a GC can happen,
the code should do bookkeeping to guarantee the correctness.

Thanks,
xiaofeng

On 10/13/06, Evgueni Brevnov <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I do the following:
>
> hythread_suspend_disable();
> <do unsafe actions>
> hysem_wait(semaphore);
> <do unsafe actions>
> hythread_suspend_enable();
>
> By saying hythread_suspend_disable(); I expect the thread can't be
> suspended until hythread_suspend_enable() is called. But hysem_wait()
> resets disabled mode and enables thread suspension. As a result GC can
> happen when it must not. hysem_wait is based on conditional variables
> so the same can happen when conditional variables is used.
>
> Do you see the problem here? Or I miss something?
>
> Thanks
> Evgueni
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to