On 22/02/2014 08:29, Chris Hegarty wrote:
Interruptible I/O on Solaris has been highly problematic and the long standing plan has 
been to remove it from the JDK. In JDK6 the VM option UseVMInterruptibleIO was introduced 
to allow developers/customers experiment with disabling it. In JDK7 the default value of 
UseVMInterruptibleIO was changed to be "false" so that it is disabled by 
default. It is now finally being removed.

This bug tracks changing the native in src/share/native/java/net and 
src/solaris/native/java/net so that the system calls are used directly rather 
than going through the JVM_* functions.

http://cr.openjdk.java.net/~chegar/8034174/webrev.00/webrev/

Thank for you for doing this, it's long over due.

I've taken a first pass over this and it looks good. For NET_RecvFrom and other that take a socket address then maybe the len should be a size_t rather than int (they may have been in the JVM_* function due to difference in the definitions of size_t, which is no longer a concern here I think).

One comment on the Windows changes is that it might be clearer if they were changed to check for SOCKET_ERROR rather than -1 as that matches the Windows Sockets documentation.

I also notice that several of the files include jvm.h and I wonder if this is needed now.

In JNI_OnLoad then it uses GetEnv to check the JNI version and I assume this code can just be removed.

In net_util.h the removal of JVM_* means it means "like the system procedures", maybe it should be system calls or system functions.

-Alan.






Reply via email to