yellowdog-general digest, Vol 1 #362 - 5 msgs

James Gunning yellowdog-general@lists.terrasoftsolutions.com
Wed Aug 14 17:38:01 2002


>
>
>
>Message: 2
>Date: Tue, 13 Aug 2002 22:42:50 -0500
>From: John David Garza <garza@cjas.org>
>Subject: ibm jdk woes
>To: yellowdog-general@lists.terrasoftsolutions.com
>Reply-To: yellowdog-general@lists.terrasoftsolutions.com
>
>Hi all,
>
>In a post to this list back in May--
>
>"IBM jdk needs kernel patch to fix floating stacks problem? 
>LD_ASSUME_KERNEL" 
>http://lists.terrasoftsolutions.com/pipermail/yellowdog-general/2002-May/001919.html
>
>--a problem with getting IBM's jdk to work on YDL was discovered in 
>which the only "solutions" seemed to be:
>
>1. going back to a 2.1 kernel
>2. recompiling glibc with floating stacks disabled
>
>Are these still the only solutions available?  Option 1 doesn't seem 
>viable unless you've gotta have java and don't have or know the time 
>and how to accomplish option 2.
>
>Where would I go to learn about attempting option 2? Is anybody 
>working on a kernel path to fix this problem (or at least add support 
>for the LD_ASSUME_KERNEL env var)?  If not, where's the best place to 
>bring up this issue with ppl that know how to make these kind of 
>fixes?
>
>Thanks!
>

The current fix seems to be to recompile the kernel with SMP enabled 
(even if you run a single
CPU machine). Do a list hunt on (SMP|java) etc to follow the discussion. 
See also the ibm.software.java.linux
newsgroup. If this code:

#include <stdio.h>
#include <unistd.h>

main() {
    fprintf(stderr, "Number of processors configured = %d\n",
        sysconf(_SC_NPROCESSORS_CONF));
    fprintf(stderr, "Number of processors online = %d\n",
        sysconf(_SC_NPROCESSORS_ONLN));
}

returns 0's,   this is the source of the problem (a glibc thing). Once you have SMP compiled
in, you should get non-zeros and the ibm jdk should run. IBM promises a patch soon
(see  ibm.software.java.linux)

James.