Sun's JDK 1.2.2 FCS generates a segmentation fault immediately when it is run. This JDK worked correctly in RHL 6.2. In fact, it is the only JDK that will run Borland's JBuilder correctly. I've done an strace to try to find out what is happening, but I don't know. I think this is a serious problem. I need to run Java and JBuilder. Here is the last part of the strace of "java -version". open("/lib/libm.so.6", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0755, st_size=493588, ...}) = 0 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300I\0"..., 4096) = 4096 old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x401d7000 old_mmap(NULL, 125352, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x401d8000 mprotect(0x401f6000, 2472, PROT_NONE) = 0 old_mmap(0x401f6000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x1d000) = 0x401f6000 close(3) = 0 mprotect(0x4002a000, 417792, PROT_READ|PROT_WRITE) = 0 mprotect(0x4002a000, 417792, PROT_READ|PROT_EXEC) = 0 mprotect(0x40017000, 69632, PROT_READ|PROT_WRITE) = 0 mprotect(0x40017000, 69632, PROT_READ|PROT_EXEC) = 0 munmap(0x40094000, 33678) = 0 getpid() = 1948 brk(0) = 0x804b718 brk(0x804b738) = 0x804b738 brk(0x804c000) = 0x804c000 lstat64("/opt", 0xbfffc4f4) = -1 ENOSYS (Function not implemented) lstat("/opt", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 lstat("/opt/jdk1.2.2", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 lstat("/opt/jdk1.2.2/jre", {st_mode=S_IFDIR|S_ISGID|0775, st_size=4096, ...}) = 0 lstat("/opt/jdk1.2.2/jre/lib", {st_mode=S_IFDIR|S_ISGID|0775, st_size=4096, ...}) = 0 lstat("/opt/jdk1.2.2/jre/lib/i386", {st_mode=S_IFDIR|S_ISGID|0775, st_size=4096, ...}) = 0 lstat("/opt/jdk1.2.2/jre/lib/i386/classic", {st_mode=S_IFDIR|S_ISGID|0775, st_size=4096, ...}) = 0 lstat("/opt/jdk1.2.2/jre/lib/i386/classic/libjvm.so", {st_mode=S_IFREG|0775, st_size=1496886, ...}) = 0 rt_sigprocmask(SIG_SETMASK, NULL, [], 8) = 0 brk(0x804d000) = 0x804d000 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=2147483647}) = 0 rt_sigaction(SIGPIPE, {SIG_IGN}, {SIG_DFL}, 8) = 0 getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0 setrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0 brk(0x8050000) = 0x8050000 brk(0x8053000) = 0x8053000 --- SIGSEGV (Segmentation fault) --- +++ killed by SIGSEGV +++
Hey jdk-1.3-rc1 works fine for me in RH7
I am also having this problem with Sun's JDK 1.2.2-006 on rh7.0. I am getting pretty much the same strace output as well. blackdown.org's JDK 1.2.2-FCS and Sun's JDK 1.3-rc1 work fine however.
Not kernel I suspect. It may be a buggy app but it may be glibc compatiblity flaws. Reassigned to glibc
More info: I've verified some of the other results that are already posted. I've tried both Sun's jdk1.2.2 FCS and jdk1.2.2_006 and both have the same problem. However the blackdown jdk1.2.2 FCS works correctly. The Blackdown README.linux says it needs at least a glibc-2.1.2, so maybe it is a library issue. I haven't tried running IBM's or Sun's jdk1.3 because it doesn't run JBuilder correctly. I'd like to because those are much faster. IBM's in particular runs JBuilder much faster than Sun's jdk1.2.2, but, in the editor, Backspace deletes 2 characters instead of one with jdk1.3, which makes it unusable. Bummer.
This is a glibc bug that kills green threads VMs, it's fixed in glibc-2.1.94. Actually it was Jakub who fixed the problem on Sep 14 (see http://sources.redhat.com/ml/libc-hacker/2000-09/msg00085.html) but the fix was not included in RH 7.0. (Why do you guys base a product on a _test_ release of glibc-2.2? :-/ ) Juergen -- Blackdown Java-Linux
Yes, this is fixed in glibc 2.1.94-1 rpmswhich have not been pushed as errata yet. Maybe we'll push 2.1.95, provided it gets enough QA. BTW: JDK worked just fine with glibc-2.1.92 up to -13 release, was just broken by a last minute change to fix security issues in glibc. On the other side, if we don't talk about JDK and some glibc 2.0.x compatibility problems (both are fixed), glibc 2.1.9x is far more stable than glibc 2.1.3 ever was (if you want me to start sending you a testcase where glibc 2.1.3 is broken, it would be a lot of cases and many of the fixes are not easily backportable). Final glibc 2.2 should go out within a few weeks worst case and we'll definitely provide updates to it.
*** Bug 18381 has been marked as a duplicate of this bug. ***
*** Bug 18666 has been marked as a duplicate of this bug. ***
But JDK1.3 works fine in RH 7.0!
Actually, I did notice a problem with Sun's JDK 1.3 on RH 7 which doesn't occur with IBM JDK 1.3: If "javac" fails to compile something due to a syntax problem, the error if printed, but the return code from javac is still 0. This is wrong. It fools GNU make, for one thing... bad compilations don't stop. Verify it by trying to compile a bad .java file. Then write a small shell script which calls javac to do the compile, but then prints the return value of the previous command. Don't know if this bug fixes solves it, as it addresses the JDK 1.2.2 core dump. But the libc in RH7 seems to have problems. Sticking with RH 6.2 until this sort of thing is worked out.
I have the bug fix installed and Sun's 1.3 javac still returns 0 when there are compile errors. So, the fix doesn't address the 1.3 javac issue. I verified that IBM's JDK 1.3 javac and Sun's 1.2.2 javac both work correctly, returning 1 when there are compile errors. I also verified that Sun's 1.3 JDK works correctly in RHL 6.2, returning 1 when there are compile errors, which does make it seem like there is a problem with RHL 7. Maybe you should open a new bug report.
jdl118 not working with RHL7.0 Suggest
First, you need to make sure you have installed the update to glibc that Red Hat has provided to fix the problem with Sun's JDK 1.2.2. Try it after the update. If that fixes the problem, then it is the same issue. If it doesn't fix the problem, then open a new bug report because it is a different issue from this bug report. The best thing to do is run up2date and install all the available updates. If you open a new bug report, Red Hat is going to need to know which vendor's JDK you're having a problem with. Both IBM and Blackdown distribute 1.1.8 JDKs for i386 Linux.