hotspot wm crashes in JDK 1.3.0_02 and JDK1.3.0_04 on RedHat 7.1. On JDK 1.3.0_02 it just does nothing, it simply hangs. strace java command shows following messages:
<snip>
_llseek(3, 2326677, [2326677], SEEK_SET) = 0
read(3, "\312\376\272\276\0\3\0-\0&\10\0\22\n\0\t\0\23\n\0\5\0\24"..., 717) = 717
rt_sigprocmask(SIG_SETMASK, NULL, [RT_0], 8) = 0
write(7, "\200\216\3@\0\0\0\0|\322\377\277\250\23\36@\360\357\10"..., 148) = 148
rt_sigprocmask(SIG_SETMASK, NULL, [RT_0], 8) = 0
rt_sigsuspend([] <unfinished ...>
--- SIGRT_0 (Real-time signal 0) ---
<... rt_sigsuspend resumed> ) = -1 EINTR (Interrupted system call)
sigreturn() = ? (mask now [])
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
<snip>
nanosleep() call is infinite.
very similar message I get from JDK 1.3.0_04:
read(3, "\312\376\272\276\0\3\0-\0&\10\0\22\n\0\t\0\23\n\0\5\0\24"..., 717) = 717
rt_sigprocmask(SIG_SETMASK, NULL, [RT_0], 8) = 0
write(7, "\200\216\3@\0\0\0\0|\322\377\277\210d\36@\20\360\10\10"..., 148) = 148
rt_sigprocmask(SIG_SETMASK, NULL, [RT_0], 8) = 0
rt_sigsuspend([] <unfinished ...>
--- SIGRT_0 (Real-time signal 0) ---
<... rt_sigsuspend resumed> ) = -1 EINTR (Interrupted system call)
sigreturn() = ? (mask now [])
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
sched_yield() = 0
nanosleep({0, 1000000},
****************
Another exception has been detected while we were handling last error.
Dumping information about last error:
ERROR REPORT FILE = (N/A)
{3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
nanosleep({0, 1000000}, {3221213816, 3221213820}) = 0
My config is:
Standard RedHat 7.1 installation
glibc-common-2.2.2-10
glibc-devel-2.2.2-10
glibc-2.2.2-10
kernel-headers-2.4.2-2
kernel-source-2.4.2-2
kernel-2.4.2-2
If I run java with -classic switch it works OK:
$ /usr/local/jdk1.3.0_02/bin/java -classic -version
java version "1.3.0_02"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0_02)
Classic VM (build 1.3.0_02, green threads, nojit)
$ /usr/local/jdk1.3.0_04/bin/java -classic -version
java version "1.3.0_04"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0_04)
Classic VM (build 1.3.0_04, green threads, nojit)