JDK10 RFR: 8165437 Evaluate the use of gettimeofday in Networking code

Vyom Tewari vyom.tewari at oracle.com
Wed Apr 12 17:35:44 UTC 2017


Hi Roger,

thanks for review, please see my  comment inline.

Vyom


On Wednesday 12 April 2017 08:17 PM, Roger Riggs wrote:
> Hi Vyom,
>
> Thanks for taking this on.   I have a few comments and questions.
>
> In aix_close.c line 547 The code for if (nanoTimeout >= NSEC_PER_MSEC) 
> seems ineffective.
>
agreed, but this check was previously there(timeout > 0) and this check 
will prevent the additional call to "JVM_NanoTime/gettimeofday()" in 
modified code. I think  we leave this check as it is and put the 
corresponding else block. Please do let me know your thought on this.
> The update of nanoTime at 549-550 ensures the timeout is > 
> NSEC_PER_MSEC if it loops.
> On the first pass through the code if nanoTimeout was < NSEC_PER_MSEC 
> it would
> poll with a timeout of zero which returns immediately, EINTR is not 
> possible.
>
> The comment at 546 would be inaccurate if nanoTimeout is too small, 
> because it will loop again.
>
right, this is on wrong place it has to be in inner if block. I put this 
comment to avoid the confusion why "nanoTimeout < NET_NSEC_PER_MSEC".
> I think the behavior would be the same if the extra condition at 547 
> is removed.
>
> Most of the other xxx_close.c classes have the same structure.
>
> PlainSocketImpl.c has the same structure
>
>
> The bsd_close.c had the same kind of before and after checking but did 
> previously
> and conservatively I'd keep that structure though I think it was 
> ineffective in that case too.
>
> Thanks, Roger
>
>
>
>
> On 4/11/2017 9:04 AM, Vyom Tewari wrote:
>> Hi,
>>
>> Please review the code change for below issue.
>>
>> Bug:       https://bugs.openjdk.java.net/browse/JDK-8165437
>>
>> Webrev: http://cr.openjdk.java.net/~vtewari/8165437/webrev0.5/index.html
>>
>> This change will replace the "gettimeofday" to use the monotonic 
>> increasing clock(i used the existing function "JVM_NanoTime" instead 
>> of writing my own).
>>
>> Thanks,
>>
>> Vyom
>>
>>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/net-dev/attachments/20170412/8409d8cf/attachment.html>


More information about the net-dev mailing list