Review request 7157734 testcase corrections (use TESTVMOPTS).

Andrew Hughes ahughes at redhat.com
Fri Aug 24 06:30:04 PDT 2012


----- Original Message -----
> Hi,
> 
> Various hotpsot .sh testcase scripts do not use the env var
> TESTVMOPTS,
> which is passed by jtreg.  They therefore don't set -d64 when we want
> to
> test a 64-bit JVM and on Solaris at least this means we don't test
> what
> we think we're testing.  We actually run a 32-bit JVM, and likely not
> even the one we just built to test.
> 
> What some testcases do do, is to read $HOME/JDK64BIT if it exists,
> and
> use the file contents as command-line arguments, or even just as a
> flag
> to know that we should set -d64 when we run java.  It seems best to
> get
> rid of this practice.  I have asked around and found nobody who can
> say
> that technique is still in use.
> 
> http://cr.openjdk.java.net/~kevinw/7157734.1/webrev/
> 
> Thanks
> Kevin
> 

I've come across your changes to Test6929067.sh as they conflicted with
our changes, which we posted here:

http://mail.openjdk.java.net/pipermail/hotspot-runtime-dev/2011-May/002163.html

but which were never accepted.

Have you tested this on anything but a x86 GNU/Linux box?

This test:

${TESTJAVA}/bin/java ${TESTVMOPTS} -version 2>1 | grep "64-Bit" >/dev/null
if [ "$?" = "0" ]
then
  ARCH=amd64
else
  ARCH=i386
fi

is flawed.  Something that returns "64-Bit" could also be SPARC64 on GNU/Linux
or (via Zero) PPC64, etc.

I also don't see how:

gcc -o invoke -I${TESTJAVA}/include -I${TESTJAVA}/include/linux invoke.c ${TESTJAVA}/jre/lib/${ARCH}/client/libjvm.so

will work on x86_64 as there is no client VM.

Our fix wasn't perfect either, but, from our perspective, it's better than this.  Can
we perhaps come up with something between the two that works for everyone?

Also, if this is only building on GNU/Linux, you can drop:

/usr/openwin/lib:/usr/dt/lib

from LD_LIBRARY_PATH.
-- 
Andrew :)

Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)

PGP Key: 248BDC07 (https://keys.indymedia.org/)
Fingerprint = EC5A 1F5E C0AD 1D15 8F1F  8F91 3B96 A578 248B DC07



More information about the hotspot-runtime-dev mailing list