Proposed changes for Bug 7193520
John Zavgren
john.zavgren at oracle.com
Fri Sep 14 11:22:17 PDT 2012
Greetings:
This bug (7193520) was filed because there are obsolete checks in the openJDK native code that implements datagram sockets, e.g.,
src/solaris/native/java/net/PlainDatagramSocketImpl.c
and it's Java counterpart:
src/share/classes/java/net/AbstractPlainDatagramSocketImpl.java
The native code (PlainDatagramSocketImpl.c and "friends") runs real time checks for the Linux kernel version number. If the most significant two fields of the version number is "2.2" on the host platform, then these checks cause the socket to be created, used, and managed differently than if the Linux kernel version were newer. (These behavior changes were necessary because Linux kernel 2.2.X
IP networking was was implemented differently and lacked features of the newer kernels.)
However, the run time logic isn't actually needed anymore because openJDK doesn't support Linux kernel 2.2.X, and consequently one cannot run openJDK on these older OSes. The run time checks are never used.
The proposed changes to the code (http://cr.openjdk.java.net/~chegar/7193520/webrev.00/) eliminate distracting dead wood, and it makes it run (slightly) faster, because the run time checks are eliminated.
Thanks!
and
RSVP
John Zavgren
john.zavgren at oracle.com
More information about the net-dev
mailing list