RFR (XS): 8236177: assert(status == 0) failed: error ETIMEDOUT(60), cond_wait
gerard ziemski
gerard.ziemski at oracle.com
Fri Mar 27 16:26:35 UTC 2020
hi David,
On 3/25/20 6:54 PM, David Holmes wrote:
> On 26/03/2020 9:43 am, David Holmes wrote:
>> Hi Gerard,
>>
>> On 26/03/2020 4:03 am, gerard ziemski wrote:
>>> hi all,
>>>
>>> Please review this "workaround" for now, which can not be called an
>>> actual fix just yet, designed to figure out why on Mac OS X, we get
>>> (very rarely) ETIMEDOUT when calling pthread_cond_wait() API. On
>>> other hand, it might actually fix it.
>>
>> The ETIMEDOUT should be treated as a "spurious wakeup" and we will
>> naturally retry the wait if the condition is not yet met. All we have
>> to do to our code is adjust the assert so that ETIMEDOUT doesn't
>> cause it to fail.
>
> And I'm happy to explicitly show this is a macOS issue (though we
> don't have an MACOS_ONLY macro)
>
> assert_status(status == 0 BSD_ONLY(|| status == ETIMEDOUT), status,
> "cond_wait");
Just to make sure, you are saying that you are OK with using "#ifdef
__APPLE__" here, right? You are not suggesting we introduce "MACOS_ONLY"
macro yet, correct?
cheers
More information about the hotspot-runtime-dev
mailing list