this library causes requesting a Socket to send the Java VM (1.1.6) into
a thread panic aborting with many errors and traces. if the library is
replaced with the older ld-linux.so.1.9.5 library the problem goes away,
but breaks other programs on the system. Is there a better fix for this
problem? If the Socket is opened using the ld-linux.so.1.9.5 library
then the newer library is put back in using ldconfig, the Java program
will still work.
The Errors I get follow, a sample the simple program that generated them
is after the errors.
ERRORs:
SIGSEGV 11* segmentation violation
stackbase=0xbffff850, stackpointer=0xbffff754
Full thread dump:
"Finalizer thread" (TID:0x4064a208, sys_thread_t:0x4138ef04,
state:R) prio=1
"Async Garbage Collector" (TID:0x4064a250, sys_thread_t:0x4136df04,
state:R) prio=1
"Idle thread" (TID:0x4064a298, sys_thread_t:0x4134cf04, state:R)
prio=0
"Clock" (TID:0x4064a088, sys_thread_t:0x4132bf04, state:CW) prio=12
"main" (TID:0x4064a0b0, sys_thread_t:0x81ad020, state:R) prio=5
*current thread*
java.lang.Runtime.loadLibrary(Runtime.java)
java.lang.System.loadLibrary(System.java)
java.net.PlainSocketImpl.<clinit>(PlainSocketImpl.java:67)
java.net.ServerSocket.<init>(ServerSocket.java:57)
java.net.ServerSocket.<init>(ServerSocket.java:131)
java.net.ServerSocket.<init>(ServerSocket.java:83)
simple.main(simple.java:6)
Monitor Cache Dump:
java.lang.Runtime@1080352864/1080711920: owner "main" (0x81ad020, 1
entry)
Registered Monitor Dump:
Thread queue lock: <unowned>
Name and type hash table lock: <unowned>
String intern lock: <unowned>
JNI pinning lock: <unowned>
JNI global reference lock: <unowned>
BinClass lock: <unowned>
Class loading lock: <unowned>
Java stack lock: <unowned>
Code rewrite lock: <unowned>
Heap lock: <unowned>
Has finalization queue lock: <unowned>
Finalize me queue lock: <unowned>
Monitor IO lock: <unowned>
Child death monitor: <unowned>
Event monitor: <unowned>
I/O monitor: <unowned>
Alarm monitor: <unowned>
Waiting to be notified:
"Clock" (0x4132bf04)
Monitor registry: owner "main" (0x81ad020, 1 entry)
Thread Alarm Q:
PROGRAM:
import java.net.*;
import java.util.*;
public class simple {
public static void main(String[] args) {
try {
ServerSocket S = new ServerSocket(7777);
S.close();
}catch(Exception e) {
System.out.println("Error: ");
e.printStackTrace();
}
}
}
The host is running Slackware linux with kernel 2.0.34
The JDK version is 1.1.6
Any help on this would be appreciated.
-John