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

Reply via email to