Skip site navigation (1)Skip section navigation (2)
Date:      Mon,  7 Feb 2000 22:51:24 -0500 (EST)
From:      Andrew Gallatin <gallatin@cs.duke.edu>
To:        freebsd-emulation@freebsd.org
Subject:   IBM jdk 1.1.8 for linux
Message-ID:  <14495.37523.899908.930548@grasshopper.cs.duke.edu>

next in thread | raw e-mail | index | archive | help

Has anybody managed to get IBM's jdk 1.1.8 for linux working?
http://www.ibm.com/java/jdk/118/linux/index.html

It features "native" threads via linux threads and a JIT.

When I attempt to run it on a machine with a -current kernel and linux 
module, and linux_base 6.1, I see:

/compat/linux/usr/jdk118/bin/appletviewer 
sigaltstack: Cannot allocate memory
sigaltstack: Cannot allocate memory

Meanwhile on the console, I see:

kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 9 with interrupts disabled
kernel trap 12 with interrupts disabled
<.....> forever

A linux ktrace of the area around the error messages shows:

  1780 java     CALL  linux_modify_ldt(0x11,0xbfbff2a8,0x10)
  1780 java     RET   linux_modify_ldt 0
  1780 java     CALL  linux_rt_sigaction(0xa,0xbfbff158,0xbfbff0cc,0x8)
  1780 java     RET   linux_rt_sigaction 0
  1780 java     CALL  linux_rt_sigaction(0xb,0xbfbff158,0xbfbff0cc,0x8)
  1780 java     RET   linux_rt_sigaction 0
  1780 java     CALL  linux_rt_sigaction(0x4,0xbfbff158,0xbfbff0cc,0x8)
  1780 java     RET   linux_rt_sigaction 0
  1780 java     CALL  linux_rt_sigaction(0x8,0xbfbff158,0xbfbff0cc,0x8)
  1780 java     RET   linux_rt_sigaction 0
  1780 java     CALL  linux_rt_sigaction(0x7,0xbfbff158,0xbfbff0cc,0x8)
  1780 java     RET   linux_rt_sigaction 0
  1780 java     CALL  linux_rt_sigaction(0x6,0xbfbff158,0xbfbff0cc,0x8)
  1780 java     RET   linux_rt_sigaction 0
  1780 java     CALL  linux_rt_sigaction(0x3,0xbfbff158,0xbfbff0cc,0x8)
  1780 java     RET   linux_rt_sigaction 0
  1780 java     CALL  linux_rt_sigaction(0xd,0xbfbff158,0xbfbff0cc,0x8)
  1780 java     RET   linux_rt_sigaction 0
  1780 java     CALL  linux_rt_sigprocmask(0x1,0x281f9380,0,0x8)
  1780 java     RET   linux_rt_sigprocmask 0
  1780 java     CALL  linux_brk(0x8057000)
  1780 java     RET   linux_brk 134574080/0x8057000
  1780 java     CALL  linux_modify_ldt(0x11,0xbfbff29c,0x10)
  1780 java     RET   linux_modify_ldt 1
  1780 java     CALL  linux_sigaltstack(0xbfbff290,0)
  1780 java     RET   linux_sigaltstack -1 errno 12 Cannot allocate memory
  1780 java     CALL  write(0x2,0xbfbfc798,0x24)
  1780 java     GIO   fd 2 wrote 36 bytes
       "sigaltstack: Cannot allocate memory
       "
  1780 java     RET   write 36/0x24
  1780 java     CALL  mprotect(0xbfbe0000,0x1000,0)
  1780 java     RET   mprotect 0
  1780 java     CALL  linux_open(0x281f0f40,0x2,0xbfbff414)
  1780 java     NAMI  "/compat/linux/dev/zero"
  1780 java     NAMI  "/dev/zero"
  1780 java     RET   linux_open 3

<...>


The sigaltstack messages seem to be caused by lss.ss_size = 0x800
which is < our MINSIGSTKSZ.  This is the i386 linux MINSIGSTKSZ.
What is the point of MINSIGSTKSZ?  Would it be safe to reduce
MINSIGSTKSZ so that we are compatible?

I'm more an alpha hacker than an i386 hacker and I have no clue what
the trap 9 messages mean.  The seem to be related to the jvm looping
in a segv handler:

  2001 java     RET   linux_rt_sigprocmask 0
  2001 java     CALL  linux_modify_ldt(0x11,0xbf1ffcf4,0x10)
  2001 java     RET   linux_modify_ldt 3
  2001 java     PSIG  SIGSEGV caught handler=0x28082460 mask=0x80000000 code=0x0
  2001 java     PSIG  SIGSEGV caught handler=0x28082460 mask=0xcffef6bf code=0xf
fffffff
  2001 java     PSIG  SIGSEGV caught handler=0x28082460 mask=0xcffef6bf code=0xf
fffffff
  2001 java     PSIG  SIGSEGV caught handler=0x28082460 mask=0xcffef6bf code=0xf
fffffff
  2001 java     PSIG  SIGSEGV caught handler=0x28082460 mask=0xcffef6bf code=0xf
fffffff
<....>

There's a rather dire comment in i386/trap.c:
			/*
			 * XXX not quite right, since this may be for a
			 * multiple fault in user mode.
			 */



Thanks for any help,

Drew
------------------------------------------------------------------------------
Andrew Gallatin, Sr Systems Programmer	http://www.cs.duke.edu/~gallatin
Duke University				Email: gallatin@cs.duke.edu
Department of Computer Science		Phone: (919) 660-6590


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-emulation" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?14495.37523.899908.930548>