This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] Java Problems

This is on a xenU kernel we compiled (based on your default .config with a few extra options enabled). I could dig out the .config if you need it.

I have not tried this on 2.0.7. I will if you think it will make a difference.

Since I posted my original email (but possibly before you read it) I updated the http://downloads.rimuhosting.com/FillTest.java test case.

It is pretty simple now and after a few dozen million iterations appears to clearly show the value of an argument changing on the stack.

It seems easier to reproduce the exception when the host server is busier (i.e. when I run it on a server that is 'fully' allocated I get the exception thrown pretty much each run, on a lightly loaded server sometimes I need a dozen or so runs to reproduce the problem.

Regards, Peter
http://rimuhosting.com - Xen VPS Hosting

Ian Pratt wrote:
Do you use our -xen0 / -xenU kernels or compile your own?
Can you reproduce this on 2.0.7 or unstable ?


Hi.  This post follows on from:

And is possibly related to the bug referenced here:

In summary: Java processes are doing odd things.

1) It appears that number values are mysteriously changing. e.g. if you look at the Hashtable error there is no way the IllegalArgumentException could be thrown, unless the float value passed into a function is being corrupted somehow on the stack.

2) I'm seeing JVM crashes (e.g. the ColorModel crash below). I'm seeing other crashes inside native code methods in other apps I'm running.

I've tried this with/without /lib/tls. And on a RHEL4 and Debian Sarge DomU.

I don't see either problem when the same app runs on a non-Xen server.

Guesswork: I notice that SSE comes up in related to other reports of this bug (http://www.tommesani.com/SSE.html, http://bugs.sun.com/bugdatabase/view_bug.do;:YfiG?bug_id=4948500). Perhaps there is some kind of register corruption going on? Or something that could corrupt float arguments on the stack? And if that's the case then this could be something with wider implications than just Java processes.

Does anyone have any ideas what it might be? If you're interested in tracking it down, the following test case may help.

Regards, Peter
http://rimuhosting.com - Xen VPS Hosting

# prerequisite you'll need to install a 1.5 JDK from sun
# host is Xen 2.0.6
# uname -r
#  wget http://downloads.rimuhosting.com/FillTest.java
# javac -target 1.4 -source 1.4 FillTest.java; while true; do java -client -Djava.awt.headless=true FillTest; ret=$?; if [ $? -ne 0 ]; then echo ret=$ret; break; fi; done

Xen-devel mailing list