Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2123338 | 1.3.1_16 | Poonam Bajaj Parhar | P3 | Closed | Fixed | b01 |
Cannot install java 1.4.2 on redhat 4.0 beta1, 32 bit. I downloaded java 1.4.2 linux from the java web site. I tried this on stinger 2p and 4p.
Note: I was able to successfully install java on rhel4 beta 1 64 bit.
###@###.### 10/13/04 18:03 GMT
Recent 1.4.2 JVMs (1.4.2_05,_06,_07) die with segmentation fault on
rhel4-beta1 32-bit on AMD64 hardware. This appears to be because of the
NX and exec-shield features recently introduced by RH.
Setting the "noexec=off" kernel parameter allows the JVMs to run
successfully. Bug 4936784 purports to fix the problem for rhel3-update2.
The fix does not however appear to be sufficient for rhel4-beta1.
See also:
http://sunsolve.central.sun.com/search/document.do?assetkey=1-1-4936784-1
Some additional references on ia32 nx and exec-shield:
http://kerneltrap.org/node/view/3240
http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=123656
NX bit interferes with Java JRE 1.4.2
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=128735
32bit Java application doesn't work
The _07 java binary and core file can be attached to the bug (see attached).
More technical detail: gdb is not able to debug the java executable.
From the core dump:
#0 0x0085c904 in JVM_handle_linux_signal ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#1 0x0085bb18 in signalHandler ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#2 <signal handler called>
#3 0x00a05e44 in code_template.15742 ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#4 0x0085d647 in os::Linux::init_thread_fpu_state ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#5 0x00859a45 in os::create_attached_thread ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#6 0x0085c61c in os::create_main_thread ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#7 0x008a3f45 in Threads::create_vm ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#8 0x007ca468 in JNI_CreateJavaVM ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#3 0x00a05e44 in code_template.15742 ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
(gdb) info frame
Stack level 3, frame at 0xfeffd9b8:
eip = 0xa05e44 in code_template.15742; saved eip 0x85d647
called by frame at 0xfeffd9c4, caller of frame at 0xfee0dc88
Arglist at 0xfeffd9b0, args:
Locals at 0xfeffd9b0, Previous frame's sp is 0xfeffd9b8
Saved registers:
eax at 0xfee0dd50, ecx at 0xfee0dd4c, edx at 0xfee0dd48, ebx at
0xfee0dd44,
ebp at 0xfee0dd3c, esi at 0xfee0dd38, edi at 0xfee0dd34, eip at
0xfeffd9b4,
cs at 0xfee0dd60, ss at 0xfee0dd6c, ds at 0xfee0dd30, es at 0xfee0dd2c,
fs at 0xfee0dd28, gs at 0xfee0dd24
(gdb) x/i 0xa05e44
0xa05e44 <code_template.15742>: push $0x27f
(gdb) down
#2 <signal handler called>
(gdb) info frame
Stack level 2, frame at 0xfee0dc88:
eip = 0x5fa520 in __restore_rt; saved eip 0xa05e44
called by frame at 0xfeffd9b8, caller of frame at 0xfee0dc84
Arglist at unknown address.
Locals at unknown address, Previous frame's sp at 0xfee0dd40
Saved registers:
eax at 0xfee0dd50, ecx at 0xfee0dd4c, edx at 0xfee0dd48, ebx at
0xfee0dd44,
ebp at 0xfee0dd3c, esi at 0xfee0dd38, edi at 0xfee0dd34, eip at
0xfee0dd5c,
cs at 0xfee0dd60, ss at 0xfee0dd6c, ds at 0xfee0dd30, es at 0xfee0dd2c,
fs at 0xfee0dd28, gs at 0xfee0dd24
###@###.### 10/15/04 17:55 GMT
Note: I was able to successfully install java on rhel4 beta 1 64 bit.
###@###.### 10/13/04 18:03 GMT
Recent 1.4.2 JVMs (1.4.2_05,_06,_07) die with segmentation fault on
rhel4-beta1 32-bit on AMD64 hardware. This appears to be because of the
NX and exec-shield features recently introduced by RH.
Setting the "noexec=off" kernel parameter allows the JVMs to run
successfully. Bug 4936784 purports to fix the problem for rhel3-update2.
The fix does not however appear to be sufficient for rhel4-beta1.
See also:
http://sunsolve.central.sun.com/search/document.do?assetkey=1-1-4936784-1
Some additional references on ia32 nx and exec-shield:
http://kerneltrap.org/node/view/3240
http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=123656
NX bit interferes with Java JRE 1.4.2
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=128735
32bit Java application doesn't work
The _07 java binary and core file can be attached to the bug (see attached).
More technical detail: gdb is not able to debug the java executable.
From the core dump:
#0 0x0085c904 in JVM_handle_linux_signal ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#1 0x0085bb18 in signalHandler ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#2 <signal handler called>
#3 0x00a05e44 in code_template.15742 ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#4 0x0085d647 in os::Linux::init_thread_fpu_state ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#5 0x00859a45 in os::create_attached_thread ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#6 0x0085c61c in os::create_main_thread ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#7 0x008a3f45 in Threads::create_vm ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#8 0x007ca468 in JNI_CreateJavaVM ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
#3 0x00a05e44 in code_template.15742 ()
from /usr/java/j2sdk1.4.2_07/jre/lib/i386/client/libjvm.so
(gdb) info frame
Stack level 3, frame at 0xfeffd9b8:
eip = 0xa05e44 in code_template.15742; saved eip 0x85d647
called by frame at 0xfeffd9c4, caller of frame at 0xfee0dc88
Arglist at 0xfeffd9b0, args:
Locals at 0xfeffd9b0, Previous frame's sp is 0xfeffd9b8
Saved registers:
eax at 0xfee0dd50, ecx at 0xfee0dd4c, edx at 0xfee0dd48, ebx at
0xfee0dd44,
ebp at 0xfee0dd3c, esi at 0xfee0dd38, edi at 0xfee0dd34, eip at
0xfeffd9b4,
cs at 0xfee0dd60, ss at 0xfee0dd6c, ds at 0xfee0dd30, es at 0xfee0dd2c,
fs at 0xfee0dd28, gs at 0xfee0dd24
(gdb) x/i 0xa05e44
0xa05e44 <code_template.15742>: push $0x27f
(gdb) down
#2 <signal handler called>
(gdb) info frame
Stack level 2, frame at 0xfee0dc88:
eip = 0x5fa520 in __restore_rt; saved eip 0xa05e44
called by frame at 0xfeffd9b8, caller of frame at 0xfee0dc84
Arglist at unknown address.
Locals at unknown address, Previous frame's sp at 0xfee0dd40
Saved registers:
eax at 0xfee0dd50, ecx at 0xfee0dd4c, edx at 0xfee0dd48, ebx at
0xfee0dd44,
ebp at 0xfee0dd3c, esi at 0xfee0dd38, edi at 0xfee0dd34, eip at
0xfee0dd5c,
cs at 0xfee0dd60, ss at 0xfee0dd6c, ds at 0xfee0dd30, es at 0xfee0dd2c,
fs at 0xfee0dd28, gs at 0xfee0dd24
###@###.### 10/15/04 17:55 GMT
- backported by
-
JDK-2123338 Java 1.4.2 on RedHat Enterprise Linux 4.0 Beta-1 (32 bit) seg faults.
- Closed