adding rsockets support into JDK

Lu, Yingqi yingqi.lu at intel.com
Mon Dec 17 18:18:46 UTC 2018


Hi Alan,

Thank you for your suggestion. I just want to confirm that you meant all the RDMA based socket channels and server socket channels will be created as non-blocking initially? Later, if application sets them to be blocking, we then do the emulation. 

If this is the case, do we need to specify it in the Javadoc since the tcp based channels are created to be blocking? 

Thanks,
Lucy

>-----Original Message-----
>From: Alan Bateman [mailto:Alan.Bateman at oracle.com]
>Sent: Friday, December 14, 2018 10:26 AM
>To: Chris Hegarty <chris.hegarty at oracle.com>; Lu, Yingqi
><yingqi.lu at intel.com>
>Cc: nio-dev at openjdk.java.net; Viswanathan, Sandhya
><sandhya.viswanathan at intel.com>; Aundhe, Shirish
><shirish.aundhe at intel.com>; Kaczmarek, Eric <eric.kaczmarek at intel.com>
>Subject: Re: adding rsockets support into JDK
>
>On 14/12/2018 17:47, Chris Hegarty wrote:
>> :
>> 3) I think your work-around for Issue #1 is probably ok. I refined it a
>>    little so avoid accessing the flags unless necessary. I think this may
>>    be slightly more efficient, since the typical non-blocking usage will
>>    be preceded by a select/rpoll.
>>
>>    src/jdk.net/linux/native/libextnet/LinuxRdmaSocketDispatcherImpl.c
>>    http://cr.openjdk.java.net/~chegar/rsocket/webrev.25.3/
>>
>I don't think we should have the workaround at this level. The native methods
>should be just simple wrappers on rs_read/rs_write. If there is no hope of
>getting the RDMA library fixed then we should configure the rsocket to be
>non-blocking at create and emulate blocking in the RdmaSocketChannelImpl.
>
>-Alan.


More information about the nio-dev mailing list