harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gregory Shimansky (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (HARMONY-5106) [drlvm][thread] os_thread_yield_other() works incorrectly on Linux
Date Mon, 12 Nov 2007 15:13:50 GMT

     [ https://issues.apache.org/jira/browse/HARMONY-5106?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Gregory Shimansky resolved HARMONY-5106.

    Resolution: Fixed

Patch is applied at 594171. Please check that the bug is fixed for you.

> [drlvm][thread] os_thread_yield_other() works incorrectly on Linux
> ------------------------------------------------------------------
>                 Key: HARMONY-5106
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5106
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: Linux
>            Reporter: Ilya Berezhniuk
>            Assignee: Gregory Shimansky
>         Attachments: H-5106.patch, H-5106.patch
> os_thread_yield_other() function on Linux uses sem_timedwait() to wait for response from
SIGUSR2 handler.
> It passes time interval =1ms to sem_timedwait(), but by documentation sem_timedwait()
receives not time interval, but absolute time since 1970, so now sem_timedwait() always returns
ETIMEDOUT immediately.
> It's required to calculate timeout exceed absolute time by adding needed interval to
current time returned by gettimeofday() or clock_gettime(CLOCK_REALTIME).
> I've tried clock_gettime(CLOCK_REALTIME), it works fine.
> I'm going to provide a patch soon.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message