--- old/src/java.base/share/classes/jdk/internal/misc/SharedSecrets.java 2018-10-05 14:14:34.314756924 -0700 +++ new/src/java.base/share/classes/jdk/internal/misc/SharedSecrets.java 2018-10-05 14:14:33.973756920 -0700 @@ -73,6 +73,7 @@ private static JavaObjectInputFilterAccess javaObjectInputFilterAccess; private static JavaIORandomAccessFileAccess javaIORandomAccessFileAccess; private static JavaxCryptoSealedObjectAccess javaxCryptoSealedObjectAccess; + private static JdkRdmaSocketImplAccess jdkRdmaSocketImplAccess; public static JavaUtilJarAccess javaUtilJarAccess() { if (javaUtilJarAccess == null) { @@ -336,4 +337,18 @@ } return javaxCryptoSealedObjectAccess; } + + public static void setJdkRdmaSocketImplAccess(JdkRdmaSocketImplAccess jrsia) { + jdkRdmaSocketImplAccess = jrsia; + } + + public static JdkRdmaSocketImplAccess getJdkRdmaSocketImplAccess() { + if (jdkRdmaSocketImplAccess == null) { + try { + Class c = Class.forName("jdk.internal.net.rdma.RdmaSocketImpl"); + unsafe.ensureClassInitialized(c); + } catch (ClassNotFoundException e) {}; + } + return jdkRdmaSocketImplAccess; + } }