From ptisnovs at icedtea.classpath.org Wed Sep 1 02:50:52 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 01 Sep 2010 09:50:52 +0000 Subject: /hg/icedtea6: Backport of 6755274 a 6791612 patches to fix OpenG... Message-ID: changeset 423423aec247 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=423423aec247 author: ptisnovs date: Wed Sep 01 11:50:21 2010 +0200 Backport of 6755274 a 6791612 patches to fix OpenGL-related failures. diffstat: 5 files changed, 94 insertions(+), 12 deletions(-) ChangeLog | 10 +++- Makefile.am | 3 - patches/opengl-jni-fix.patch | 10 ---- patches/openjdk/6755274-glgetstring-crash.patch | 56 +++++++++++++++++++++++ patches/openjdk/6791612-opengl-jni-fix.patch | 27 +++++++++++ diffs (142 lines): diff -r 17e622c24432 -r 423423aec247 ChangeLog --- a/ChangeLog Sat Aug 28 12:58:17 2010 +0200 +++ b/ChangeLog Wed Sep 01 11:50:21 2010 +0200 @@ -1,3 +1,11 @@ 2010-08-27 Andrew John Hughes + + * Makefile.am: Add two new patches, removed one unused patch. + * patches/openjdk/6755274-glgetstring-crash.patch: + * patches/openjdk/6791612-opengl-jni-fix.patch: + Backport of 6755274 and 6791612 patches to fix OpenGL-related failures + (improper OpenGL initialization and missing link to native functions) + 2010-08-27 Andrew John Hughes PR398, S6951319: @@ -27,7 +35,7 @@ 2010-08-27 Deepak Bhole 0 bytes. * plugin/icedteanp/IcedTeaNPPlugin.cc: Fixed file name in header. -2010-08-16 Pavel Tisnovsky +2010-08-26 Pavel Tisnovsky * Makefile.am: * patches/opengl-jni-fix.patch: diff -r 17e622c24432 -r 423423aec247 Makefile.am --- a/Makefile.am Sat Aug 28 12:58:17 2010 +0200 +++ b/Makefile.am Wed Sep 01 11:50:21 2010 +0200 @@ -327,7 +327,8 @@ ICEDTEA_PATCHES += patches/openjdk/67252 ICEDTEA_PATCHES += patches/openjdk/6725214-direct3d-01.patch \ patches/openjdk/6307603-xrender-01.patch \ patches/openjdk/6961633-xrender-02.patch \ - patches/opengl-jni-fix.patch + patches/openjdk/6791612-opengl-jni-fix.patch \ + patches/openjdk/6755274-glgetstring-crash.patch endif if ENABLE_NIO2 diff -r 17e622c24432 -r 423423aec247 patches/opengl-jni-fix.patch --- a/patches/opengl-jni-fix.patch Sat Aug 28 12:58:17 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,10 +0,0 @@ ---- openjdk-old/jdk/make/sun/xawt/mapfile-vers 2010-08-16 16:54:21.000000000 +0200 -+++ openjdk/jdk/make/sun/xawt/mapfile-vers 2010-08-16 16:54:21.000000000 +0200 -@@ -300,6 +300,7 @@ - Java_java_awt_FileDialog_initIDs; - Java_sun_awt_X11_XWindow_initIDs; - -+ Java_sun_java2d_opengl_OGLContext_getOGLIdString; - Java_sun_java2d_opengl_OGLMaskFill_maskFill; - Java_sun_java2d_opengl_OGLRenderer_drawPoly; - Java_sun_java2d_opengl_OGLRenderQueue_flushBuffer; diff -r 17e622c24432 -r 423423aec247 patches/openjdk/6755274-glgetstring-crash.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6755274-glgetstring-crash.patch Wed Sep 01 11:50:21 2010 +0200 @@ -0,0 +1,56 @@ +# HG changeset patch +# User tdv +# Date 1224602738 25200 +# Node ID 452c58b2f5334bb357f778e319b5dfffe7b4c696 +# Parent 665850610378a6e9a46b7df1ce04d4fc6edfd236 +6755274: 6u10b33 2d tests fails on sles10x64 with jvm crash +Reviewed-by: campbell + +diff -r 665850610378 -r 452c58b2f533 src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java +--- openjdk.old/jdk/src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java 2010-08-30 11:47:11.000000000 +0200 ++++ openjdk/jdk/src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java 2010-08-30 11:47:11.000000000 +0200 +@@ -120,12 +120,14 @@ + new GLXGetConfigInfo(device.getScreen(), visualnum); + rq.flushAndInvokeNow(action); + cfginfo = action.getConfigInfo(); +- OGLContext.setScratchSurface(cfginfo); +- rq.flushAndInvokeNow(new Runnable() { +- public void run() { +- ids[0] = OGLContext.getOGLIdString(); +- } +- }); ++ if (cfginfo != 0L) { ++ OGLContext.setScratchSurface(cfginfo); ++ rq.flushAndInvokeNow(new Runnable() { ++ public void run() { ++ ids[0] = OGLContext.getOGLIdString(); ++ } ++ }); ++ } + } finally { + rq.unlock(); + } +diff -r 665850610378 -r 452c58b2f533 src/windows/classes/sun/java2d/opengl/WGLGraphicsConfig.java +--- openjdk-old/jdk/src/windows/classes/sun/java2d/opengl/WGLGraphicsConfig.java 2010-08-30 11:47:11.000000000 +0200 ++++ openjdk/jdk/src/windows/classes/sun/java2d/opengl/WGLGraphicsConfig.java 2010-08-30 11:47:11.000000000 +0200 +@@ -127,12 +127,14 @@ + new WGLGetConfigInfo(device.getScreen(), pixfmt); + rq.flushAndInvokeNow(action); + cfginfo = action.getConfigInfo(); +- OGLContext.setScratchSurface(cfginfo); +- rq.flushAndInvokeNow(new Runnable() { +- public void run() { +- ids[0] = OGLContext.getOGLIdString(); +- } +- }); ++ if (cfginfo != 0L) { ++ OGLContext.setScratchSurface(cfginfo); ++ rq.flushAndInvokeNow(new Runnable() { ++ public void run() { ++ ids[0] = OGLContext.getOGLIdString(); ++ } ++ }); ++ } + } finally { + rq.unlock(); + } diff -r 17e622c24432 -r 423423aec247 patches/openjdk/6791612-opengl-jni-fix.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6791612-opengl-jni-fix.patch Wed Sep 01 11:50:21 2010 +0200 @@ -0,0 +1,27 @@ +# HG changeset patch +# User tdv +# Date 1235684318 28800 +# Node ID 0c856354b66924ad99e106ad0b99b1d263ef2eab +# Parent ff2afd0551c97282f5bc0939eda439166bfa71b4 +6791612: OGLBat tests are failed in jdk 7 b42 +Reviewed-by: tdv +Contributed-by: ceisserer + +diff -r ff2afd0551c9 -r 0c856354b669 make/sun/xawt/mapfile-vers +--- openjdk-old/jdk/make/sun/xawt/mapfile-vers 2010-08-16 16:54:21.000000000 +0200 ++++ openjdk/jdk/make/sun/xawt/mapfile-vers 2010-08-16 16:54:21.000000000 +0200 +@@ -302,12 +302,14 @@ + Java_java_awt_FileDialog_initIDs; + Java_sun_awt_X11_XWindow_initIDs; + ++ Java_sun_java2d_opengl_OGLContext_getOGLIdString; + Java_sun_java2d_opengl_OGLMaskFill_maskFill; + Java_sun_java2d_opengl_OGLRenderer_drawPoly; + Java_sun_java2d_opengl_OGLRenderQueue_flushBuffer; + Java_sun_java2d_opengl_OGLSurfaceData_initTexture; + Java_sun_java2d_opengl_OGLSurfaceData_initFBObject; + Java_sun_java2d_opengl_OGLSurfaceData_initFlipBackbuffer; ++ Java_sun_java2d_opengl_OGLSurfaceData_getTextureID; + Java_sun_java2d_opengl_OGLSurfaceData_getTextureTarget; + Java_sun_java2d_opengl_OGLTextRenderer_drawGlyphList; + Java_sun_java2d_opengl_GLXGraphicsConfig_getGLXConfigInfo; From ptisnovs at icedtea.classpath.org Wed Sep 1 02:57:18 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 01 Sep 2010 09:57:18 +0000 Subject: /hg/release/icedtea6-1.9: Backport of 6755274 and 6791612 patche... Message-ID: changeset 6bd935443e1d in /hg/release/icedtea6-1.9 details: http://icedtea.classpath.org/hg/release/icedtea6-1.9?cmd=changeset;node=6bd935443e1d author: ptisnovs date: Wed Sep 01 11:56:38 2010 +0200 Backport of 6755274 and 6791612 patches to fix OpenGL-related failures. diffstat: 5 files changed, 93 insertions(+), 11 deletions(-) ChangeLog | 8 +++ Makefile.am | 3 - patches/opengl-jni-fix.patch | 10 ---- patches/openjdk/6755274-glgetstring-crash.patch | 56 +++++++++++++++++++++++ patches/openjdk/6791612-opengl-jni-fix.patch | 27 +++++++++++ diffs (133 lines): diff -r 4e8cce62cabf -r 6bd935443e1d ChangeLog --- a/ChangeLog Sun Aug 29 12:48:15 2010 +0200 +++ b/ChangeLog Wed Sep 01 11:56:38 2010 +0200 @@ -1,3 +1,11 @@ 2010-08-27 Andrew John Hughes + + * Makefile.am: Add two new patches, removed one unused patch. + * patches/openjdk/6755274-glgetstring-crash.patch: + * patches/openjdk/6791612-opengl-jni-fix.patch: + Backport of 6755274 and 6791612 patches to fix OpenGL-related failures + (improper OpenGL initialization and missing link to native functions) + 2010-08-27 Andrew John Hughes PR398, S6951319: diff -r 4e8cce62cabf -r 6bd935443e1d Makefile.am --- a/Makefile.am Sun Aug 29 12:48:15 2010 +0200 +++ b/Makefile.am Wed Sep 01 11:56:38 2010 +0200 @@ -326,7 +326,8 @@ ICEDTEA_PATCHES += patches/openjdk/67252 ICEDTEA_PATCHES += patches/openjdk/6725214-direct3d-01.patch \ patches/openjdk/6307603-xrender-01.patch \ patches/openjdk/6961633-xrender-02.patch \ - patches/opengl-jni-fix.patch + patches/openjdk/6791612-opengl-jni-fix.patch \ + patches/openjdk/6755274-glgetstring-crash.patch endif if ENABLE_NIO2 diff -r 4e8cce62cabf -r 6bd935443e1d patches/opengl-jni-fix.patch --- a/patches/opengl-jni-fix.patch Sun Aug 29 12:48:15 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,10 +0,0 @@ ---- openjdk-old/jdk/make/sun/xawt/mapfile-vers 2010-08-16 16:54:21.000000000 +0200 -+++ openjdk/jdk/make/sun/xawt/mapfile-vers 2010-08-16 16:54:21.000000000 +0200 -@@ -300,6 +300,7 @@ - Java_java_awt_FileDialog_initIDs; - Java_sun_awt_X11_XWindow_initIDs; - -+ Java_sun_java2d_opengl_OGLContext_getOGLIdString; - Java_sun_java2d_opengl_OGLMaskFill_maskFill; - Java_sun_java2d_opengl_OGLRenderer_drawPoly; - Java_sun_java2d_opengl_OGLRenderQueue_flushBuffer; diff -r 4e8cce62cabf -r 6bd935443e1d patches/openjdk/6755274-glgetstring-crash.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6755274-glgetstring-crash.patch Wed Sep 01 11:56:38 2010 +0200 @@ -0,0 +1,56 @@ +# HG changeset patch +# User tdv +# Date 1224602738 25200 +# Node ID 452c58b2f5334bb357f778e319b5dfffe7b4c696 +# Parent 665850610378a6e9a46b7df1ce04d4fc6edfd236 +6755274: 6u10b33 2d tests fails on sles10x64 with jvm crash +Reviewed-by: campbell + +diff -r 665850610378 -r 452c58b2f533 src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java +--- openjdk.old/jdk/src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java 2010-08-30 11:47:11.000000000 +0200 ++++ openjdk/jdk/src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java 2010-08-30 11:47:11.000000000 +0200 +@@ -120,12 +120,14 @@ + new GLXGetConfigInfo(device.getScreen(), visualnum); + rq.flushAndInvokeNow(action); + cfginfo = action.getConfigInfo(); +- OGLContext.setScratchSurface(cfginfo); +- rq.flushAndInvokeNow(new Runnable() { +- public void run() { +- ids[0] = OGLContext.getOGLIdString(); +- } +- }); ++ if (cfginfo != 0L) { ++ OGLContext.setScratchSurface(cfginfo); ++ rq.flushAndInvokeNow(new Runnable() { ++ public void run() { ++ ids[0] = OGLContext.getOGLIdString(); ++ } ++ }); ++ } + } finally { + rq.unlock(); + } +diff -r 665850610378 -r 452c58b2f533 src/windows/classes/sun/java2d/opengl/WGLGraphicsConfig.java +--- openjdk-old/jdk/src/windows/classes/sun/java2d/opengl/WGLGraphicsConfig.java 2010-08-30 11:47:11.000000000 +0200 ++++ openjdk/jdk/src/windows/classes/sun/java2d/opengl/WGLGraphicsConfig.java 2010-08-30 11:47:11.000000000 +0200 +@@ -127,12 +127,14 @@ + new WGLGetConfigInfo(device.getScreen(), pixfmt); + rq.flushAndInvokeNow(action); + cfginfo = action.getConfigInfo(); +- OGLContext.setScratchSurface(cfginfo); +- rq.flushAndInvokeNow(new Runnable() { +- public void run() { +- ids[0] = OGLContext.getOGLIdString(); +- } +- }); ++ if (cfginfo != 0L) { ++ OGLContext.setScratchSurface(cfginfo); ++ rq.flushAndInvokeNow(new Runnable() { ++ public void run() { ++ ids[0] = OGLContext.getOGLIdString(); ++ } ++ }); ++ } + } finally { + rq.unlock(); + } diff -r 4e8cce62cabf -r 6bd935443e1d patches/openjdk/6791612-opengl-jni-fix.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6791612-opengl-jni-fix.patch Wed Sep 01 11:56:38 2010 +0200 @@ -0,0 +1,27 @@ +# HG changeset patch +# User tdv +# Date 1235684318 28800 +# Node ID 0c856354b66924ad99e106ad0b99b1d263ef2eab +# Parent ff2afd0551c97282f5bc0939eda439166bfa71b4 +6791612: OGLBat tests are failed in jdk 7 b42 +Reviewed-by: tdv +Contributed-by: ceisserer + +diff -r ff2afd0551c9 -r 0c856354b669 make/sun/xawt/mapfile-vers +--- openjdk-old/jdk/make/sun/xawt/mapfile-vers 2010-08-16 16:54:21.000000000 +0200 ++++ openjdk/jdk/make/sun/xawt/mapfile-vers 2010-08-16 16:54:21.000000000 +0200 +@@ -302,12 +302,14 @@ + Java_java_awt_FileDialog_initIDs; + Java_sun_awt_X11_XWindow_initIDs; + ++ Java_sun_java2d_opengl_OGLContext_getOGLIdString; + Java_sun_java2d_opengl_OGLMaskFill_maskFill; + Java_sun_java2d_opengl_OGLRenderer_drawPoly; + Java_sun_java2d_opengl_OGLRenderQueue_flushBuffer; + Java_sun_java2d_opengl_OGLSurfaceData_initTexture; + Java_sun_java2d_opengl_OGLSurfaceData_initFBObject; + Java_sun_java2d_opengl_OGLSurfaceData_initFlipBackbuffer; ++ Java_sun_java2d_opengl_OGLSurfaceData_getTextureID; + Java_sun_java2d_opengl_OGLSurfaceData_getTextureTarget; + Java_sun_java2d_opengl_OGLTextRenderer_drawGlyphList; + Java_sun_java2d_opengl_GLXGraphicsConfig_getGLXConfigInfo; From mark at klomp.org Wed Sep 1 03:36:38 2010 From: mark at klomp.org (Mark Wielaard) Date: Wed, 01 Sep 2010 12:36:38 +0200 Subject: Collecting test results (Was: For users of --with-openjdk) In-Reply-To: <20100831144741.GB18421@rivendell.middle-earth.co.uk> References: <20100811181112.GL10867@rivendell.middle-earth.co.uk> <4C633B7F.3080101@linuxfromscratch.org> <4C6484B8.6090007@linuxfromscratch.org> <20100813004137.GP10867@rivendell.middle-earth.co.uk> <4C64A128.2010300@linuxfromscratch.org> <20100813195739.GX10867@rivendell.middle-earth.co.uk> <4C66DBB9.4070707@linuxfromscratch.org> <20100825153429.GH26213@rivendell.middle-earth.co.uk> <4C79B011.4020609@lucasit.com> <1283085711.2345.11.camel@hermans.wildebeest.org> <20100831144741.GB18421@rivendell.middle-earth.co.uk> Message-ID: <1283337398.4251.742.camel@springer.wildebeest.org> On Tue, 2010-08-31 at 15:47 +0100, Dr Andrew John Hughes wrote: > On 14:41 Sun 29 Aug , Mark Wielaard wrote: > > If the autobuilder detects a change in test results or a build failure > > it will send email to every committer since the last run plus the > > icedtea-testresults mailinglist: > > http://icedtea.classpath.org/pipermail/testresults/ > > Is there a page that lists the available IcedTea mailing lists? I was > looking for this to give DJ the link, but couldn't find anything on our wiki. There is only one for now. See http://icedtea.classpath.org/mailman/listinfo I added a link to it to the mediawiki sidebar under resources. Cheers, Mark From ptisnovs at redhat.com Wed Sep 1 07:37:23 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Wed, 01 Sep 2010 16:37:23 +0200 Subject: Patch that sort out OpenGL-related issue in IcedTea6 HEAD In-Reply-To: <20100831160756.GF18421@rivendell.middle-earth.co.uk> References: <4C7BD858.9060906@redhat.com> <20100831151508.GD18421@rivendell.middle-earth.co.uk> <20100831160756.GF18421@rivendell.middle-earth.co.uk> Message-ID: <4C7E6523.4020609@redhat.com> Dr Andrew John Hughes wrote: > On 16:15 Tue 31 Aug , Dr Andrew John Hughes wrote: >> On 18:12 Mon 30 Aug , Pavel Tisnovsky wrote: >>> Hi all, >>> >>> can anybody please review simple patch which in the end ensures that >>> method glGetString(GL_VENDOR) etc. is called only when rendering context >>> is properly configured. When glGetString() is called for uninitialized >>> rendering context, it is possible that application got SIGSEGV because >>> OpenGL standard does not specify correct behaviour in this case. >>> >> As this patch is a backport of: >> >> 6755274: 6u10b33 2d tests fails on sles10x64 with jvm crash >> Reviewed-by: campbell >> http://hg.openjdk.java.net/jdk7/jdk7/jdk/rev/452c58b2f53 >> >> can you use a hg export of this changeset rather than a fresh patch, >> and include it as patches/openjdk/6755274-glgetstring-crash.patch? Done for IcedTea6 HEAD and IcedTea6-1.9. Results of regression tests are now much better, as you can check on the page http://torment.usersys.redhat.com/openjdk/jtreg_hist_10.html (I mean last "almost green" column :-) >> >> We're then also covered for Windows, should anyone ever build IcedTea there ;-) >> >> Please commit to HEAD and 1.9 with these changes. >> >>> The patch is based on actual OpenJDK7 sources and it's behaviour can be >>> tested by this simple test: >>> >>> import javax.swing.JFrame; >>> >>> public class Test extends JFrame { >>> public Test() { >>> System.out.println("Nothing happens"); >>> } >>> >>> public static void main(String[] args) >>> { >>> Test t = new Test(); >>> System.out.println("Test Passed."); >>> } >>> } >>> >>> (must be run with -Dsun.java2d.opengl=True option) >>> >> Can you include this as JTreg test in a separate patch? Could you please review the patch which is stored in attachment. >> >>> Cheers >>> Pavel >>> >>> PS: if anybody is interested whether his OpenGL implementation >>> segfaulted (RHEL5 and its Mesa 6.5.1 case, for example), this C test can >>> be useful: >>> >>> #include >>> #include >>> #include >>> >>> int main(void) >>> { >>> printf("%x\n", glXGetCurrentContext()); >>> glGetString(GL_VENDOR); >>> return 0; >>> } >>> >>> (must be compiled with -lGL and -lX11 options) >> >>> --- openjdk/jdk/src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java.old 2010-08-30 11:47:11.000000000 +0200 >>> --- openjdk/jdk/src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java 2010-08-30 11:47:11.000000000 +0200 >>> @@ -120,12 +120,15 @@ >>> new GLXGetConfigInfo(device.getScreen(), visualnum); >>> rq.flushAndInvokeNow(action); >>> cfginfo = action.getConfigInfo(); >>> - OGLContext.setScratchSurface(cfginfo); >>> - rq.flushAndInvokeNow(new Runnable() { >>> - public void run() { >>> - ids[0] = OGLContext.getOGLIdString(); >>> - } >>> - }); >>> + // System.out.println("GLXGetConfigInfo: " + cfginfo); >>> + if (cfginfo != 0L) { >>> + OGLContext.setScratchSurface(cfginfo); >>> + rq.flushAndInvokeNow(new Runnable() { >>> + public void run() { >>> + ids[0] = OGLContext.getOGLIdString(); >>> + } >>> + }); >>> + } >>> } finally { >>> rq.unlock(); >>> } >> Thanks, >> -- >> Andrew :) >> >> Free Java Software Engineer >> Red Hat, Inc. (http://www.redhat.com) >> >> Support Free Java! >> Contribute to GNU Classpath and the OpenJDK >> http://www.gnu.org/software/classpath >> http://openjdk.java.net >> PGP Key: 94EFD9D8 (http://subkeys.pgp.net) >> Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 > > Likewise, > > changeset: 995:0c856354b669 > user: tdv > date: Thu Feb 26 13:38:38 2009 -0800 > summary: 6791612: OGLBat tests are failed in jdk 7 b42 > http://hg.openjdk.java.net/jdk7/jdk7/jdk/rev/0c856354b669 > > should be exported and replace opengl-jni-fix.patch with > patches/openjdk/6791612-opengl-jni-fix.patch Done for IcedTea6 HEAD and IcedTea6-1.9 -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea-jtreg-OpenGLContextInit.patch Type: text/x-patch Size: 1738 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100901/6e4cae2d/icedtea-jtreg-OpenGLContextInit.patch From ahughes at redhat.com Wed Sep 1 07:59:04 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Wed, 1 Sep 2010 15:59:04 +0100 Subject: [BRANCH APPROVAL] /hg/icedtea6: PR398: hotspot hs16 / 6b17 build failure on sparc In-Reply-To: <4C7DDF18.2030105@ubuntu.com> References: <20100827224723.GD6429@bree.middle-earth.co.uk> <4C7842D3.3000602@ubuntu.com> <4C7A3CC7.5030501@ubuntu.com> <20100831150003.GC18421@rivendell.middle-earth.co.uk> <4C7DDF18.2030105@ubuntu.com> Message-ID: <20100901145904.GA5036@rivendell.middle-earth.co.uk> On 07:05 Wed 01 Sep , Matthias Klose wrote: > On 31.08.2010 17:00, Dr Andrew John Hughes wrote: > > On 12:56 Sun 29 Aug , Matthias Klose wrote: > >> On 28.08.2010 00:57, Matthias Klose wrote: > >>> On 28.08.2010 00:47, Dr Andrew John Hughes wrote: > >>>> This fixes PR398. Ok for 1.7, 1.8& 1.9? > >>> > >>> I only can approve for 1.8, approved. you are release manager for 1.9 yourself, > >>> so please make the decision yourself. > >> > > > > My plan with 1.9 (and 1.7 now as well) was to have a requirement of > > having each patch approved by another developer (see > > http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2010-August/009934.html), > > rather than the previous rather unfair practice of me approving all > > patches and being able to commit what I want. As with patches to any > > tree, anyone can still veto a patch with good reason. > > > >> now checked in the unmodified patch on the 1.9 branch, and one which only > >> applies for the alternate hotspot build on the 1.8 branch. > > > > Thanks. Was there a particular reason you didn't do 1.7? > > they don't apply with the hotspot included in 1.7. > 1.7 and 1.8's hs16 versions are identical: $ cat ~/projects/openjdk/icedtea6-1.8/hotspot.map # version url changeset md5sum hs16 http://hg.openjdk.java.net/hsx/hsx16/master 62926c7f67a3 d683eb501e7ce710198f20f0c127ebbb $ cat ~/projects/openjdk/icedtea6-1.7/hotspot.map # version url changeset md5sum hs16 http://hg.openjdk.java.net/hsx/hsx16/master 62926c7f67a3 d683eb501e7ce710198f20f0c127ebbb So the same patch as 1.8 should work. > >> Test results are > >> attached. > > > > What version& arch are these from? > > current 1.8 and 1.9 branches, sparc. > > > How do they compare with the last working build? > > jtreg doesn't crash anymore while running the tests. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Wed Sep 1 08:11:43 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 01 Sep 2010 15:11:43 +0000 Subject: [Bug 534] zero doesn't work on sparc linux Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=534 ------- Comment #6 from gbenson at redhat.com 2010-09-01 15:11 ------- Program received signal SIGBUS, Bus error. 0xf7599680 in BytecodeInterpreter::run (istate=0xffae8b08) at /home/gbenson/shark/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp:903 903 OPC_CONST2_n(lconst_0, Zero, long, LONG); (gdb) bt #0 0xf7599680 in BytecodeInterpreter::run (istate=0xffae8b08) at /home/gbenson/shark/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp:903 #1 0xf774d6f8 in CppInterpreter::main_loop (recurse=0, __the_thread__=0x413b0) at /home/gbenson/shark/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp:81 #2 0xf774d5ec in CppInterpreter::normal_entry (method=0xf0f0dfc0, UNUSED=-185564864, __the_thread__=0x413b0) at /home/gbenson/shark/hotspot/src/cpu/zero/vm/cppInterpreter_zero.cpp:48 #3 0xf775144c in ZeroEntry::invoke (this=0xf4f08140, method=0xf0f0dfc0, __the_thread__=0x413b0) at /home/gbenson/shark/hotspot/src/cpu/zero/vm/entry_zero.hpp:56 ... -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ahughes at redhat.com Wed Sep 1 08:51:42 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Wed, 1 Sep 2010 16:51:42 +0100 Subject: Patch that sort out OpenGL-related issue in IcedTea6 HEAD In-Reply-To: <4C7E6523.4020609@redhat.com> References: <4C7BD858.9060906@redhat.com> <20100831151508.GD18421@rivendell.middle-earth.co.uk> <20100831160756.GF18421@rivendell.middle-earth.co.uk> <4C7E6523.4020609@redhat.com> Message-ID: <20100901155142.GD5036@rivendell.middle-earth.co.uk> On 16:37 Wed 01 Sep , Pavel Tisnovsky wrote: > Dr Andrew John Hughes wrote: > > On 16:15 Tue 31 Aug , Dr Andrew John Hughes wrote: > >> On 18:12 Mon 30 Aug , Pavel Tisnovsky wrote: > >>> Hi all, > >>> > >>> can anybody please review simple patch which in the end ensures that > >>> method glGetString(GL_VENDOR) etc. is called only when rendering context > >>> is properly configured. When glGetString() is called for uninitialized > >>> rendering context, it is possible that application got SIGSEGV because > >>> OpenGL standard does not specify correct behaviour in this case. > >>> > >> As this patch is a backport of: > >> > >> 6755274: 6u10b33 2d tests fails on sles10x64 with jvm crash > >> Reviewed-by: campbell > >> http://hg.openjdk.java.net/jdk7/jdk7/jdk/rev/452c58b2f53 > >> > >> can you use a hg export of this changeset rather than a fresh patch, > >> and include it as patches/openjdk/6755274-glgetstring-crash.patch? > > Done for IcedTea6 HEAD and IcedTea6-1.9. > > Results of regression tests are now much better, as you can check on the > page http://torment.usersys.redhat.com/openjdk/jtreg_hist_10.html > (I mean last "almost green" column :-) > > >> > >> We're then also covered for Windows, should anyone ever build IcedTea there ;-) > >> > >> Please commit to HEAD and 1.9 with these changes. > >> > >>> The patch is based on actual OpenJDK7 sources and it's behaviour can be > >>> tested by this simple test: > >>> > >>> import javax.swing.JFrame; > >>> > >>> public class Test extends JFrame { > >>> public Test() { > >>> System.out.println("Nothing happens"); > >>> } > >>> > >>> public static void main(String[] args) > >>> { > >>> Test t = new Test(); > >>> System.out.println("Test Passed."); > >>> } > >>> } > >>> > >>> (must be run with -Dsun.java2d.opengl=True option) > >>> > >> Can you include this as JTreg test in a separate patch? > > Could you please review the patch which is stored in attachment. > Looks good. I'd make the summary line just: @summary This test checks if the OpenGL context is properly initialized. Ok to commit to HEAD and 1.9 with that change. I'll look at upstreaming all four backports and your patch once 1.9 is out in the wild. Thanks for working on this. > >> > >>> Cheers > >>> Pavel > >>> > >>> PS: if anybody is interested whether his OpenGL implementation > >>> segfaulted (RHEL5 and its Mesa 6.5.1 case, for example), this C test can > >>> be useful: > >>> > >>> #include > >>> #include > >>> #include > >>> > >>> int main(void) > >>> { > >>> printf("%x\n", glXGetCurrentContext()); > >>> glGetString(GL_VENDOR); > >>> return 0; > >>> } > >>> > >>> (must be compiled with -lGL and -lX11 options) > >> > >>> --- openjdk/jdk/src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java.old 2010-08-30 11:47:11.000000000 +0200 > >>> --- openjdk/jdk/src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java 2010-08-30 11:47:11.000000000 +0200 > >>> @@ -120,12 +120,15 @@ > >>> new GLXGetConfigInfo(device.getScreen(), visualnum); > >>> rq.flushAndInvokeNow(action); > >>> cfginfo = action.getConfigInfo(); > >>> - OGLContext.setScratchSurface(cfginfo); > >>> - rq.flushAndInvokeNow(new Runnable() { > >>> - public void run() { > >>> - ids[0] = OGLContext.getOGLIdString(); > >>> - } > >>> - }); > >>> + // System.out.println("GLXGetConfigInfo: " + cfginfo); > >>> + if (cfginfo != 0L) { > >>> + OGLContext.setScratchSurface(cfginfo); > >>> + rq.flushAndInvokeNow(new Runnable() { > >>> + public void run() { > >>> + ids[0] = OGLContext.getOGLIdString(); > >>> + } > >>> + }); > >>> + } > >>> } finally { > >>> rq.unlock(); > >>> } > >> Thanks, > >> -- > >> Andrew :) > >> > >> Free Java Software Engineer > >> Red Hat, Inc. (http://www.redhat.com) > >> > >> Support Free Java! > >> Contribute to GNU Classpath and the OpenJDK > >> http://www.gnu.org/software/classpath > >> http://openjdk.java.net > >> PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > >> Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 > > > > Likewise, > > > > changeset: 995:0c856354b669 > > user: tdv > > date: Thu Feb 26 13:38:38 2009 -0800 > > summary: 6791612: OGLBat tests are failed in jdk 7 b42 > > http://hg.openjdk.java.net/jdk7/jdk7/jdk/rev/0c856354b669 > > > > should be exported and replace opengl-jni-fix.patch with > > patches/openjdk/6791612-opengl-jni-fix.patch > > Done for IcedTea6 HEAD and IcedTea6-1.9 -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From dj at lucasit.com Wed Sep 1 19:59:05 2010 From: dj at lucasit.com (DJ Lucas) Date: Wed, 01 Sep 2010 21:59:05 -0500 Subject: Expired CAs causing testsuite failures Message-ID: <4C7F12F9.6040803@lucasit.com> Guys, just a heads up, not sure if any of you are responsible for maintaining the CAs for your respective distros, but I found that upstream Mozilla has two certs that cause issues with jtreg in nss-3.12.7.0 (though they still exist in mozilla-central for 3.12.8.0). I had removed expired ones previously, but found a new one and still the Equifax one when I updated tonight. Those are the certs with OpenSSL-1.0 hash of 8f111d69 and f2cce23a, with the following header information (resp): Certificate: Data: Version: 3 (0x2) Serial Number: 66 (0x42) Signature Algorithm: md5WithRSAEncryption Issuer: C=US, O=Equifax Secure Inc., CN=Equifax Secure Global eBusiness CA-1 Validity Not Before: Jul 31 00:00:01 2004 GMT Not After : Sep 2 00:00:01 2004 GMT Subject: CN=MD5 Collisions Inc. (http://www.phreedom.org/md5) and Certificate: Data: Version: 3 (0x2) Serial Number: 961510791 (0x394f7d87) Signature Algorithm: sha1WithRSAEncryption Issuer: C=WW, O=beTRUSTed, CN=beTRUSTed Root CAs, CN=beTRUSTed Root CA Validity Not Before: Jun 20 14:21:04 2000 GMT Not After : Jun 20 13:21:04 2010 GMT Subject: C=WW, O=beTRUSTed, CN=beTRUSTed Root CAs, CN=beTRUSTed Root CA Not sure whether they should be blindly removed (but I'd assume so). The Jun 20, 2010 is understandable (nss-3.12.7 was released prior to expiration). As soon as I figure out where to send, I will send an inquiry upstream, but just wanted to give you all a heads up about possible testsuite failures as a result of those expired CAs if you or your distros are pulling your CAs from Mozilla. -- DJ Lucas -- This message has been scanned for viruses and dangerous content, and is believed to be clean. From ptisnovs at redhat.com Thu Sep 2 01:01:56 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Thu, 02 Sep 2010 10:01:56 +0200 Subject: Expired CAs causing testsuite failures In-Reply-To: <4C7F12F9.6040803@lucasit.com> References: <4C7F12F9.6040803@lucasit.com> Message-ID: <4C7F59F4.50608@redhat.com> DJ Lucas wrote: > Guys, just a heads up, not sure if any of you are responsible for > maintaining the CAs for your respective distros, but I found that > upstream Mozilla has two certs that cause issues with jtreg in > nss-3.12.7.0 (though they still exist in mozilla-central for 3.12.8.0). > I had removed expired ones previously, but found a new one and still > the Equifax one when I updated tonight. Those are the certs with > OpenSSL-1.0 hash of 8f111d69 and f2cce23a, with the following header > information (resp): DJ Lucas, thanks for this important information. I'm going to look from what data certificates are generated on Fedoras and RHELs. Pavel > > Certificate: > Data: > Version: 3 (0x2) > Serial Number: 66 (0x42) > Signature Algorithm: md5WithRSAEncryption > Issuer: C=US, O=Equifax Secure Inc., CN=Equifax Secure Global > eBusiness CA-1 > Validity > Not Before: Jul 31 00:00:01 2004 GMT > Not After : Sep 2 00:00:01 2004 GMT > Subject: CN=MD5 Collisions Inc. (http://www.phreedom.org/md5) > > and > > Certificate: > Data: > Version: 3 (0x2) > Serial Number: 961510791 (0x394f7d87) > Signature Algorithm: sha1WithRSAEncryption > Issuer: C=WW, O=beTRUSTed, CN=beTRUSTed Root CAs, CN=beTRUSTed > Root CA > Validity > Not Before: Jun 20 14:21:04 2000 GMT > Not After : Jun 20 13:21:04 2010 GMT > Subject: C=WW, O=beTRUSTed, CN=beTRUSTed Root CAs, CN=beTRUSTed > Root CA > > Not sure whether they should be blindly removed (but I'd assume so). > The Jun 20, 2010 is understandable (nss-3.12.7 was released prior to > expiration). As soon as I figure out where to send, I will send an > inquiry upstream, but just wanted to give you all a heads up about > possible testsuite failures as a result of those expired CAs if you or > your distros are pulling your CAs from Mozilla. > > -- DJ Lucas > From bugzilla-daemon at icedtea.classpath.org Thu Sep 2 03:02:14 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 02 Sep 2010 10:02:14 +0000 Subject: [Bug 534] zero doesn't work on sparc linux Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=534 ------- Comment #7 from gbenson at redhat.com 2010-09-02 10:02 ------- The problem is that the {,SET_}{LOCALS,STACK}_{LONG,DOUBLE}* macros in bytecodeInterpreter_zero.hpp are causing unaligned accesses. Bizarrely, the macros in there are identical to those in bytecodeInterpreter_sparc.hpp, which presumably worked. I tried adding __attribute__ ((packed)) to the VMJavaVal64 union, which should inform the compiler that it cannot make any assumption as to the alignment of the data, but still it crashes. So I don't know what to do about this one... -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Thu Sep 2 03:19:00 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 02 Sep 2010 10:19:00 +0000 Subject: [Bug 534] zero doesn't work on sparc linux Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=534 ------- Comment #8 from aph at redhat.com 2010-09-02 10:18 ------- #define SET_STACK_DOUBLE(value, offset) (((VMJavaVal64*)&topOfStack[-(offset)])->d = (value)) should be do { VMJavaVal64 x = value; memcpy(&topOfStack[-(offset)]->d, &value, sizeof VMJavaVal64); } while (0) ... etc. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Thu Sep 2 03:30:45 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 02 Sep 2010 10:30:45 +0000 Subject: [Bug 534] zero doesn't work on sparc linux Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=534 ------- Comment #9 from gbenson at redhat.com 2010-09-02 10:30 ------- Why doesn't adding __attribute__ ((packed)) to VMJavaVal64 work? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ahughes at redhat.com Thu Sep 2 03:54:47 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Thu, 2 Sep 2010 11:54:47 +0100 Subject: Expired CAs causing testsuite failures In-Reply-To: <4C7F12F9.6040803@lucasit.com> References: <4C7F12F9.6040803@lucasit.com> Message-ID: <20100902105447.GA6509@bree.middle-earth.co.uk> On 21:59 Wed 01 Sep , DJ Lucas wrote: > Guys, just a heads up, not sure if any of you are responsible for > maintaining the CAs for your respective distros, but I found that > upstream Mozilla has two certs that cause issues with jtreg in > nss-3.12.7.0 (though they still exist in mozilla-central for 3.12.8.0). > I had removed expired ones previously, but found a new one and still > the Equifax one when I updated tonight. Those are the certs with > OpenSSL-1.0 hash of 8f111d69 and f2cce23a, with the following header > information (resp): > > Certificate: > Data: > Version: 3 (0x2) > Serial Number: 66 (0x42) > Signature Algorithm: md5WithRSAEncryption > Issuer: C=US, O=Equifax Secure Inc., CN=Equifax Secure Global > eBusiness CA-1 > Validity > Not Before: Jul 31 00:00:01 2004 GMT > Not After : Sep 2 00:00:01 2004 GMT > Subject: CN=MD5 Collisions Inc. (http://www.phreedom.org/md5) > I think the Equifax expiry might explain why I've seen issues downloading the JAXP and JAXWS bundles from dev.java.net. > and > > Certificate: > Data: > Version: 3 (0x2) > Serial Number: 961510791 (0x394f7d87) > Signature Algorithm: sha1WithRSAEncryption > Issuer: C=WW, O=beTRUSTed, CN=beTRUSTed Root CAs, CN=beTRUSTed > Root CA > Validity > Not Before: Jun 20 14:21:04 2000 GMT > Not After : Jun 20 13:21:04 2010 GMT > Subject: C=WW, O=beTRUSTed, CN=beTRUSTed Root CAs, CN=beTRUSTed > Root CA > > Not sure whether they should be blindly removed (but I'd assume so). > The Jun 20, 2010 is understandable (nss-3.12.7 was released prior to > expiration). As soon as I figure out where to send, I will send an > inquiry upstream, but just wanted to give you all a heads up about > possible testsuite failures as a result of those expired CAs if you or > your distros are pulling your CAs from Mozilla. > > -- DJ Lucas > > -- > This message has been scanned for viruses and > dangerous content, and is believed to be clean. > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Thu Sep 2 03:55:05 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 02 Sep 2010 10:55:05 +0000 Subject: [Bug 534] zero doesn't work on sparc linux Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=534 ------- Comment #10 from aph at redhat.com 2010-09-02 10:55 ------- I'm not really sure why it doesn't work. But anyway, it surely makes more sense simply to write this macro in legal C++ rather than try to work around the bug with attributes. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Thu Sep 2 04:30:33 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 02 Sep 2010 11:30:33 +0000 Subject: [Bug 539] New: Norwegian common authorization system BankID does not work with IcedTea Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=539 Summary: Norwegian common authorization system BankID does not work with IcedTea Product: IcedTea Version: 6-1.8.1 Platform: all OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea6 AssignedTo: unassigned at icedtea.classpath.org ReportedBy: ingvar at linpro.no Several Norwegian banks have a common authorization system called "BankID", http://www.bankid.no/ . BankID has a large audience in Norway, probably some hundred thousand users or more. Using BankID, the client part is accessed via a java applet in a web browser. It works well on Linux with Java from sun.com, both on i386 and x86_64. It does not work with IcedTea. I have tested this on Fedora 12 and 13, both i386 and x86_64 versions tested. $ rpm -qf /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java java-1.6.0-openjdk-1.6.0.0-42.b18.fc13.x86_64 $ java -version java version "1.6.0_18" OpenJDK Runtime Environment (IcedTea6 1.8.1) (fedora-42.b18.fc13-x86_64) OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode) On accessing the BankID applet, it reports "success", but one does not aqquire a login ticket or whatever access right mechanism they use. I have reported the problem to the BankID developers. They answered that they may test BankID with IcedTea/OpenJDK in later versions, but they won't for now. While this is a bit difficult to work further on, as the developers of BankID won't use time on this at the moment, I thought it was worth reporting, according to http://icedtea.classpath.org/wiki/FrequentlyAskedQuestions#What_does_and_doesn.27t_work_in_IcedTea.3F : "If you find anything that does work with any other JDK6 implementation, but that fails to work with icedtea we would like to know about it. Please file a bug report" Also note that you can't get BankID without a Norwegian bank account, so doing testing on this might be difficult. The nsplugin on firefox reports this to stdout: *** NSPlugin Viewer *** WARNING: unhandled variable 18 () in NPN_GetValue() java version "1.6.0_18" OpenJDK Runtime Environment (IcedTea6 1.8.1) (fedora-42.b18.fc13-x86_64) OpenJDK 64-Bit Server VM (build 14.0-b16, mixed mode) Java version : 1.6.0_18 Java vendor : Sun Microsystems Inc. Java vendor url : http://java.sun.com/ Java class version : 50.0 OS NAME : Linux OS Arch : amd64 OS Version : 2.6.33.5-124.fc13.x86_64 BankID client version: 4.0.27 java.lang.IllegalMonitorStateException at java.util.concurrent.locks.ReentrantLock$Sync.tryRelease(ReentrantLock.java:155) at java.util.concurrent.locks.AbstractQueuedSynchronizer.release(AbstractQueuedSynchronizer.java:1262) at java.util.concurrent.locks.ReentrantLock.unlock(ReentrantLock.java:459) at java.util.concurrent.PriorityBlockingQueue.take(PriorityBlockingQueue.java:257) at no.bbs.bankid.client.gui.by.run(Unknown Source) at java.lang.Thread.run(Thread.java:636) -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Thu Sep 2 04:54:17 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 02 Sep 2010 11:54:17 +0000 Subject: [Bug 539] Norwegian common authorization system BankID does not work with IcedTea Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=539 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | Component|IcedTea6 |NPPlugin Platform|all |x86_64 ------- Comment #1 from gnu_andrew at member.fsf.org 2010-09-02 11:54 ------- Reassigning to plugin component and appropriate developer. As you mention, this is pretty hard for us to work on without access to the system. FWIW, the failure is from: if (Thread.currentThread() != getExclusiveOwnerThread()) throw new IllegalMonitorStateException(); i.e. the queue is being unlocked by a thread other than the one that locked it. 'If the current thread is the holder of this lock then the hold count is decremented. If the hold count is now zero then the lock is released. If the current thread is not the holder of this lock then {@link IllegalMonitorStateException} is thrown.' The BankID developers may be depending on undocumented threading properties of the proprietary Oracle plugin. Deepak, are there any plugin fixes not in 1.8.1? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From ptisnovs at icedtea.classpath.org Thu Sep 2 04:56:48 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 02 Sep 2010 11:56:48 +0000 Subject: /hg/icedtea6: New regression test added for checking if OpenGL c... Message-ID: changeset a6b05ef50569 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=a6b05ef50569 author: ptisnovs date: Thu Sep 02 13:54:31 2010 +0200 New regression test added for checking if OpenGL context is properly initialized. diffstat: 3 files changed, 54 insertions(+), 1 deletion(-) ChangeLog | 6 +++ Makefile.am | 3 + patches/icedtea-jtreg-OpenGLContextInit.patch | 46 +++++++++++++++++++++++++ diffs (76 lines): diff -r 423423aec247 -r a6b05ef50569 ChangeLog --- a/ChangeLog Wed Sep 01 11:50:21 2010 +0200 +++ b/ChangeLog Thu Sep 02 13:54:31 2010 +0200 @@ -1,3 +1,9 @@ 2010-09-01 Pavel Tisnovsky + + * Makefile.am: Add new patch. + * patches/icedtea-jtreg-OpenGLContextInit.patch: + New regression test added for checking if OpenGL context is properly initialized. + 2010-09-01 Pavel Tisnovsky * Makefile.am: Add two new patches, removed one unused patch. diff -r 423423aec247 -r a6b05ef50569 Makefile.am --- a/Makefile.am Wed Sep 01 11:50:21 2010 +0200 +++ b/Makefile.am Thu Sep 02 13:54:31 2010 +0200 @@ -292,7 +292,8 @@ ICEDTEA_PATCHES = \ patches/openjdk/6954424-opentype_javadoc.patch \ patches/openjdk/6438179-systray_check.patch \ patches/openjdk/6951319-sparc_build_fixes.patch \ - patches/icedtea-too-many-args.patch + patches/icedtea-too-many-args.patch \ + patches/icedtea-jtreg-OpenGLContextInit.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 423423aec247 -r a6b05ef50569 patches/icedtea-jtreg-OpenGLContextInit.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-jtreg-OpenGLContextInit.patch Thu Sep 02 13:54:31 2010 +0200 @@ -0,0 +1,46 @@ +--- /dev/null 2010-06-29 11:10:08.737208357 +0200 ++++ openjdk/jdk/test/sun/java2d/OpenGL/OpenGLContextInit.java 2010-09-01 16:27:44.000000000 +0200 +@@ -0,0 +1,43 @@ ++/* ++ * Copyright 2010 Red Hat, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ */ ++ ++ ++/* ++ * @test ++ * @bug 6755274 6791612 ++ * @summary This test check if OpenGL context is properly initialized. ++ * @run main/othervm -Dsun.java2d.opengl=True OpenGLContextInit -ignore ++ * @author ptisnovs ++ */ ++ ++import javax.swing.JFrame; ++ ++public class OpenGLContextInit extends JFrame { ++ public OpenGLContextInit() ++ { ++ System.out.println("Nothing happens"); ++ } ++ ++ public static void main(String[] args) ++ { ++ OpenGLContextInit t = new OpenGLContextInit(); ++ System.out.println("Test Passed."); ++ } ++} ++ From ptisnovs at icedtea.classpath.org Thu Sep 2 04:59:47 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 02 Sep 2010 11:59:47 +0000 Subject: /hg/release/icedtea6-1.9: New regression test added for checking... Message-ID: changeset 147db73653f7 in /hg/release/icedtea6-1.9 details: http://icedtea.classpath.org/hg/release/icedtea6-1.9?cmd=changeset;node=147db73653f7 author: ptisnovs date: Thu Sep 02 13:59:32 2010 +0200 New regression test added for checking if OpenGL context is properly initialized. diffstat: 3 files changed, 54 insertions(+), 1 deletion(-) ChangeLog | 6 +++ Makefile.am | 3 + patches/icedtea-jtreg-OpenGLContextInit.patch | 46 +++++++++++++++++++++++++ diffs (76 lines): diff -r 6bd935443e1d -r 147db73653f7 ChangeLog --- a/ChangeLog Wed Sep 01 11:56:38 2010 +0200 +++ b/ChangeLog Thu Sep 02 13:59:32 2010 +0200 @@ -1,3 +1,9 @@ 2010-09-01 Pavel Tisnovsky + + * Makefile.am: Add new patch. + * patches/icedtea-jtreg-OpenGLContextInit.patch: + New regression test added for checking if OpenGL context is properly initialized. + 2010-09-01 Pavel Tisnovsky * Makefile.am: Add two new patches, removed one unused patch. diff -r 6bd935443e1d -r 147db73653f7 Makefile.am --- a/Makefile.am Wed Sep 01 11:56:38 2010 +0200 +++ b/Makefile.am Thu Sep 02 13:59:32 2010 +0200 @@ -291,7 +291,8 @@ ICEDTEA_PATCHES = \ patches/ipv4-mapped-ipv6-addresses.patch \ patches/openjdk/6795060-icu_crash.patch \ patches/openjdk/6951319-sparc_build_fixes.patch \ - patches/icedtea-too-many-args.patch + patches/icedtea-too-many-args.patch \ + patches/icedtea-jtreg-OpenGLContextInit.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 6bd935443e1d -r 147db73653f7 patches/icedtea-jtreg-OpenGLContextInit.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-jtreg-OpenGLContextInit.patch Thu Sep 02 13:59:32 2010 +0200 @@ -0,0 +1,46 @@ +--- /dev/null 2010-06-29 11:10:08.737208357 +0200 ++++ openjdk/jdk/test/sun/java2d/OpenGL/OpenGLContextInit.java 2010-09-01 16:27:44.000000000 +0200 +@@ -0,0 +1,43 @@ ++/* ++ * Copyright 2010 Red Hat, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ */ ++ ++ ++/* ++ * @test ++ * @bug 6755274 6791612 ++ * @summary This test check if OpenGL context is properly initialized. ++ * @run main/othervm -Dsun.java2d.opengl=True OpenGLContextInit -ignore ++ * @author ptisnovs ++ */ ++ ++import javax.swing.JFrame; ++ ++public class OpenGLContextInit extends JFrame { ++ public OpenGLContextInit() ++ { ++ System.out.println("Nothing happens"); ++ } ++ ++ public static void main(String[] args) ++ { ++ OpenGLContextInit t = new OpenGLContextInit(); ++ System.out.println("Test Passed."); ++ } ++} ++ From bugzilla-daemon at icedtea.classpath.org Fri Sep 3 00:50:58 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 03 Sep 2010 07:50:58 +0000 Subject: [Bug 540] New: when jconsole try to connect remote target, target JVM down Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=540 Summary: when jconsole try to connect remote target, target JVM down Product: IcedTea Version: unspecified Platform: arm OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea6 AssignedTo: unassigned at icedtea.classpath.org ReportedBy: rreedd555 at gmail.com Hello, When jconsole try to connect remote target, target JVM down. And JAVA_OPTS and CATALINA_OPTS are not configure. The JVM from openJDK-6-jre-headless debian package. host java(windowsXP) java version "1.6.0_20" Java(TM) SE Runtime Environment (build 1.6.0_20-b02) Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode, sharing) target java OpenJDK Core VM (1.6.0_0-b11) for linux-arm JRE (1.6.0_0-b11) built on Jan 18 2009 21:47:39 by "buildd" with gcc 4.3.3 20090110 (prerelease) target machine OS:lenny/sid uname:Linux 2.6.34.1 #1 Mon Aug 9 13:26:25 JST 2010 armv5tel libc:glibc 2.7 NPTL 2.7 --hs_err_pid1696.log-- Could not embedded here. Please see this, http://gist.github.com/raw/563563/92fe3d8ce8efde1a34d12d19d32b1aa5af5923bc/hs_err_pid1696.log --catalina.out-- # An unexpected error has been detected by Java Runtime Environment: # # Internal Error (os_linux_zero.cpp:157), pid=1696, tid=1735849104 # Error: caught unhandled signal 11 # # Java VM: OpenJDK Core VM (1.6.0_0-b11 interpreted mode linux-arm) # An error report file with more information is saved as: # /root/hs_err_pid1696.log -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ptisnovs at icedtea.classpath.org Fri Sep 3 01:58:28 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 03 Sep 2010 08:58:28 +0000 Subject: /hg/icedtea6: Fixed indentation, changed spaces to tab. Message-ID: changeset dfc3c1061ec7 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=dfc3c1061ec7 author: ptisnovs date: Fri Sep 03 11:00:55 2010 +0200 Fixed indentation, changed spaces to tab. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ Makefile.am | 2 +- diffs (23 lines): diff -r a6b05ef50569 -r dfc3c1061ec7 ChangeLog --- a/ChangeLog Thu Sep 02 13:54:31 2010 +0200 +++ b/ChangeLog Fri Sep 03 11:00:55 2010 +0200 @@ -1,3 +1,7 @@ 2010-09-02 Pavel Tisnovsky + + * Makefile.am: Fixed indentation, changes spaces to tab. + 2010-09-02 Pavel Tisnovsky * Makefile.am: Add new patch. diff -r a6b05ef50569 -r dfc3c1061ec7 Makefile.am --- a/Makefile.am Thu Sep 02 13:54:31 2010 +0200 +++ b/Makefile.am Fri Sep 03 11:00:55 2010 +0200 @@ -293,7 +293,7 @@ ICEDTEA_PATCHES = \ patches/openjdk/6438179-systray_check.patch \ patches/openjdk/6951319-sparc_build_fixes.patch \ patches/icedtea-too-many-args.patch \ - patches/icedtea-jtreg-OpenGLContextInit.patch + patches/icedtea-jtreg-OpenGLContextInit.patch if WITH_RHINO ICEDTEA_PATCHES += \ From ptisnovs at icedtea.classpath.org Fri Sep 3 01:58:34 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 03 Sep 2010 08:58:34 +0000 Subject: /hg/release/icedtea6-1.9: Fixed indentation, changed spaces to tab. Message-ID: changeset 7b05619e7069 in /hg/release/icedtea6-1.9 details: http://icedtea.classpath.org/hg/release/icedtea6-1.9?cmd=changeset;node=7b05619e7069 author: ptisnovs date: Fri Sep 03 11:02:16 2010 +0200 Fixed indentation, changed spaces to tab. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ Makefile.am | 2 +- diffs (23 lines): diff -r 147db73653f7 -r 7b05619e7069 ChangeLog --- a/ChangeLog Thu Sep 02 13:59:32 2010 +0200 +++ b/ChangeLog Fri Sep 03 11:02:16 2010 +0200 @@ -1,3 +1,7 @@ 2010-09-02 Pavel Tisnovsky + + * Makefile.am: Fixed indentation, changes spaces to tab. + 2010-09-02 Pavel Tisnovsky * Makefile.am: Add new patch. diff -r 147db73653f7 -r 7b05619e7069 Makefile.am --- a/Makefile.am Thu Sep 02 13:59:32 2010 +0200 +++ b/Makefile.am Fri Sep 03 11:02:16 2010 +0200 @@ -292,7 +292,7 @@ ICEDTEA_PATCHES = \ patches/openjdk/6795060-icu_crash.patch \ patches/openjdk/6951319-sparc_build_fixes.patch \ patches/icedtea-too-many-args.patch \ - patches/icedtea-jtreg-OpenGLContextInit.patch + patches/icedtea-jtreg-OpenGLContextInit.patch if WITH_RHINO ICEDTEA_PATCHES += \ From bugzilla-daemon at icedtea.classpath.org Fri Sep 3 03:08:35 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 03 Sep 2010 10:08:35 +0000 Subject: [Bug 540] > > Cheers, > > Markwhen jconsole try to connect remote target, target JVM down Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=540 aph at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|when jconsole try to connect|> > Cheers, > > Markwhen |remote target, target JVM |jconsole try to connect |down |remote target, target JVM | |down ------- Comment #1 from aph at redhat.com 2010-09-03 10:08 ------- There's not really enough information here. Please tell us exactly the commands you used. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Sep 3 12:44:09 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 03 Sep 2010 19:44:09 +0000 Subject: [Bug 540] > > Cheers, > > Markwhen jconsole try to connect remote target, target JVM down Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=540 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Component|IcedTea6 |Zero ------- Comment #2 from gnu_andrew at member.fsf.org 2010-09-03 19:44 ------- In addition to Andrew's comment, this looks like a very old version. Can you please try with 1.8.1, the latest release, or HEAD? It may have already been resolved. Thanks. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Sep 3 12:44:26 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 03 Sep 2010 19:44:26 +0000 Subject: [Bug 540] when jconsole try to connect remote target, target JVM down Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=540 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|> > Cheers, > > Markwhen |when jconsole try to connect |jconsole try to connect |remote target, target JVM |remote target, target JVM |down |down | -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ahughes at redhat.com Fri Sep 3 16:25:35 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Sat, 4 Sep 2010 00:25:35 +0100 Subject: [1.7 & 1.8 BRANCH APPROVAL]: Backport 6539464: Math functions produce inconsistent results Message-ID: <20100903232535.GD11124@rivendell.middle-earth.co.uk> Applies to hs14 only. hs16 (1.7 & 1.8 --with-hotspot-build=hs16) and hs17 (1.9, HEAD) have this fix. changeset: 1981:0b63ff75d44a tag: tip user: Andrew John Hughes date: Sat Sep 04 00:21:46 2010 +0100 files: ChangeLog Makefile.am NEWS patches/hotspot/original/6539464-consistent-math.patch description: S6539464, RH500077: Ensure Math functions return consistent results. 2010-09-03 Andrew John Hughes * Makefile.am: Add new patch. * patches/hotspot/original/6539464-consistent-math.patch: Backport fix for S6539464 which ensures Math functions return consistent results. * NEWS: Updated. Ok for 1.7 & 1.8? -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ahughes at redhat.com Fri Sep 3 16:56:11 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Sat, 4 Sep 2010 00:56:11 +0100 Subject: [1.7 & 1.8 BRANCH APPROVAL]: Backport 6539464: Math functions produce inconsistent results In-Reply-To: <20100903232535.GD11124@rivendell.middle-earth.co.uk> References: <20100903232535.GD11124@rivendell.middle-earth.co.uk> Message-ID: <20100903235611.GF11124@rivendell.middle-earth.co.uk> On 00:25 Sat 04 Sep , Dr Andrew John Hughes wrote: > Applies to hs14 only. hs16 (1.7 & 1.8 --with-hotspot-build=hs16) and hs17 (1.9, HEAD) have this fix. > > changeset: 1981:0b63ff75d44a > tag: tip > user: Andrew John Hughes > date: Sat Sep 04 00:21:46 2010 +0100 > files: ChangeLog Makefile.am NEWS patches/hotspot/original/6539464-consistent-math.patch > description: > S6539464, RH500077: Ensure Math functions return consistent results. > > 2010-09-03 Andrew John Hughes > > * Makefile.am: Add new patch. > * patches/hotspot/original/6539464-consistent-math.patch: > Backport fix for S6539464 which ensures Math functions > return consistent results. > * NEWS: Updated. > > Ok for 1.7 & 1.8? > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > Support Free Java! > Contribute to GNU Classpath and the OpenJDK > http://www.gnu.org/software/classpath > http://openjdk.java.net > PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 The patch is simply http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/819880572f09. No changes. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From dj at lucasit.com Sat Sep 4 18:30:39 2010 From: dj at lucasit.com (DJ Lucas) Date: Sat, 04 Sep 2010 20:30:39 -0500 Subject: /hg/icedtea6: Backport of 6755274 a 6791612 patches to fix OpenG... In-Reply-To: References: Message-ID: <4C82F2BF.3050904@lucasit.com> On 09/01/2010 04:50 AM, ptisnovs at icedtea.classpath.org wrote: > changeset 423423aec247 in /hg/icedtea6 > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=423423aec247 > author: ptisnovs > date: Wed Sep 01 11:50:21 2010 +0200 > > Backport of 6755274 a 6791612 patches to fix OpenGL-related > failures. Just a heads up, in 7 there are some tests that were excluded specifically due to errors that these patches address (or so says the comment in test/jtreg/excludelist.jdk.jtx (java.lang.UnsatisfiedLinkError)). I haven't tested on 7 as I wont be interested in 7 until a couple of weeks following the 1.9 release, but they might be able to be put back into place now. # Failed due to java.lang.UnsatisfiedLinkError: sun.java2d.opengl.OGLContext.getOGLIdString()Ljava/lang/String -- DJ -- This message has been scanned for viruses and dangerous content, and is believed to be clean. From dj at lucasit.com Sat Sep 4 18:57:55 2010 From: dj at lucasit.com (DJ Lucas) Date: Sat, 04 Sep 2010 20:57:55 -0500 Subject: Bug ID #6361557 test - backport request Message-ID: <4C82F923.5090306@lucasit.com> Hello, com/sun/net/httpserver/bugs/B6361557.java That particular bug was closed invalid http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6361557 As was this one (which is marked as duplicate of the above bug) http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6402102 Actually, it apperas that the testcase was invalid and has been fixed in openjdk-7: http://hg.openjdk.java.net/jdk7/jdk7/jdk/rev/4d72d0ec83f5 It doesn't apply directly as the 1000 limit isn't included when that change occurred (or it was elsewhere at the time). Probably should go to OpenJDK list, but since you are approaching release, I figured I'd bring it up here first and see if maybe it can be fixed before the release of 1.9. I'll be trying to get the remaining 24 failures/errors into order (at least accounted for) over this weekend as I am kid free for a change. -- DJ Lucas -- This message has been scanned for viruses and dangerous content, and is believed to be clean. From bugzilla-daemon at icedtea.classpath.org Sun Sep 5 20:43:25 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 06 Sep 2010 03:43:25 +0000 Subject: [Bug 540] when jconsole try to connect remote target, target JVM down Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=540 ------- Comment #3 from rreedd555 at gmail.com 2010-09-06 03:43 ------- Thanks Andrew and Andrew, Taget machine setting of catalina.sh. JAVA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9004 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false" Host machine run command:jconsloe 10.10.10.22:9004 And I'm going to try openjdk-6-jre-headless (6b18-1.8.1-1). Regard, (In reply to comment #2) > In addition to Andrew's comment, this looks like a very old version. Can you > please try with 1.8.1, the latest release, or HEAD? It may have already been > resolved. > > Thanks. > -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ptisnovs at redhat.com Mon Sep 6 01:16:20 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Mon, 06 Sep 2010 10:16:20 +0200 Subject: [1.7 & 1.8 BRANCH APPROVAL]: Backport 6539464: Math functions produce inconsistent results In-Reply-To: <20100903235611.GF11124@rivendell.middle-earth.co.uk> References: <20100903232535.GD11124@rivendell.middle-earth.co.uk> <20100903235611.GF11124@rivendell.middle-earth.co.uk> Message-ID: <4C84A354.20806@redhat.com> Dr Andrew John Hughes wrote: > On 00:25 Sat 04 Sep , Dr Andrew John Hughes wrote: >> Applies to hs14 only. hs16 (1.7 & 1.8 --with-hotspot-build=hs16) and hs17 (1.9, HEAD) have this fix. >> >> changeset: 1981:0b63ff75d44a >> tag: tip >> user: Andrew John Hughes >> date: Sat Sep 04 00:21:46 2010 +0100 >> files: ChangeLog Makefile.am NEWS patches/hotspot/original/6539464-consistent-math.patch >> description: >> S6539464, RH500077: Ensure Math functions return consistent results. >> >> 2010-09-03 Andrew John Hughes >> >> * Makefile.am: Add new patch. >> * patches/hotspot/original/6539464-consistent-math.patch: >> Backport fix for S6539464 which ensures Math functions >> return consistent results. >> * NEWS: Updated. >> >> Ok for 1.7 & 1.8? Hi Andrew, should I run our usual tests before you push this changes to 1.7 and 1.8? (just to be sure :-) Pavel >> -- >> Andrew :) >> >> Free Java Software Engineer >> Red Hat, Inc. (http://www.redhat.com) >> >> Support Free Java! >> Contribute to GNU Classpath and the OpenJDK >> http://www.gnu.org/software/classpath >> http://openjdk.java.net >> PGP Key: 94EFD9D8 (http://subkeys.pgp.net) >> Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 > > The patch is simply http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/819880572f09. No changes. From andrew at icedtea.classpath.org Mon Sep 6 05:17:48 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Mon, 06 Sep 2010 12:17:48 +0000 Subject: /hg/icedtea6-hg: 18 new changesets Message-ID: changeset 00d9b2c78bc4 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=00d9b2c78bc4 author: Andrew John Hughes date: Fri Aug 13 20:00:48 2010 +0100 Make rt.jar update dependent on bootstrapping, not the existence of sun.awt.Toolkit. 2010-08-13 Andrew John Hughes * Makefile.am: Replace conditionals on LACKS_SUN_AWT_TOOLKIT with ones on BOOTSTRAPPING. If we are bootstrapping, we don't trust the system JDK and update rt.jar with newly built classes, regardless of whether it's an Oracle-based JDK or not. * configure.ac: Remove check for sun.awt.Toolkit. changeset 552e98f1c215 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=552e98f1c215 author: Andrew John Hughes date: Fri Aug 13 23:28:38 2010 +0100 Only patch the OpenGL headers when javah exhibits Classpath bug #40188. 2010-08-13 Andrew John Hughes * patches/ecj/javah.patch: Moved to... * Makefile.am: Apply patch to OpenGL headers only if javah exhibits Classpath bug 40188. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40188 * patches/ecj/cp40188-opengl.patch: here. changeset fe7d70ac2b1a in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=fe7d70ac2b1a author: omajid date: Fri Aug 20 17:06:32 2010 -0400 netx: check for possible null in splash screen code 2010-08-19 Omair Majid Fixes rhbz601281 * NEWS: Update with this fix. * netx/net/sourceforge/jnlp/JNLPSplashScreen.java (setSplashImageURL): Check for possible null. changeset fa8c9bfd3da5 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=fa8c9bfd3da5 author: omajid date: Fri Aug 20 17:22:24 2010 -0400 netx: parse update elements in jnlp files 2010-08-20 Omair Majid * netx/net/sourceforge/jnlp/JNLPFile.java (getUpdate): New method. Returns the parsed UpdateDesc. (parse): Call parser.getUpdate. * netx/net/sourceforge/jnlp/Parser.java (getUpdate): New method. Parses a node to find elements. * netx/net/sourceforge/jnlp/UpdateDesc.java: New class. (UpdateDesc): New method. Creates a new UpdateDesc. (getPolicy): New method. Returns the policy attribute of this update. (getCheck): New method. Returns the check attribute for this update. * netx/net/sourceforge/jnlp/resources/Messages.properties: Add PTwoUpdates error. changeset 518927fb2498 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=518927fb2498 author: Andrew Su date: Mon Aug 23 15:23:46 2010 -0400 2010-08-23 Andrew Su * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java (parse): Removed parsing for unknown tag. changeset 6f017e9047ab in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=6f017e9047ab author: Andrew John Hughes date: Tue Aug 24 23:19:33 2010 +0100 Include NimbusLookAndFeel as one of the bootstrap classes to avoid conflicts with older versions in previous IcedTea6 releases. 2010-08-24 Andrew John Hughes * Makefile.am: Compile NimbusLookAndFeel as a bootstrap class so the older version from IcedTea6 1.8 is not used when bootstrapping with it. changeset 1fc64b023005 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=1fc64b023005 author: omajid date: Wed Aug 25 15:49:56 2010 -0400 Backport S6438179: XToolkit.isTraySupported() result has nothing to do with the system tray 2010-08-25 Omair Majid Fixes RH569121, S6438179 * NEWS: Update with new backport. * Makefile.am (ICEDTEA_PATCHES): Apply new patch. * patches/openjdk/6438179-systray_check.patch: Backport of S6438179. changeset 627620efacc8 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=627620efacc8 author: ptisnovs date: Thu Aug 26 11:03:17 2010 +0200 Fixed missing JNI link to native function OGLContext.getOGLIdString() which causes many OpenGL-related regression tests to fail. changeset ead30a628023 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=ead30a628023 author: Deepak Bhole date: Fri Aug 27 13:59:35 2010 -0400 Fix rhbz#560193 Process nested jars in applet code only if size > 0 bytes. changeset bf50b9b4cfa8 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=bf50b9b4cfa8 author: doko at ubuntu.com date: Fri Aug 27 23:46:48 2010 +0200 Bump cacao version to changeset including build fixes for ARM and S390 2010-08-27 Matthias Klose * Makefile.am: Bump cacao version to changeset including build fixes for ARM and S390. * patches/cacao/version-parsing.patch: Remove, applied upstream. changeset b1cf18e3cb6c in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=b1cf18e3cb6c author: doko at ubuntu.com date: Fri Aug 27 23:59:00 2010 +0200 Fix hotspot build with small SC_ARG_MAX 2010-08-27 Matthias Klose * patches/icedtea-too-many-args.diff: Fix build failure with small SC_ARG_MAX. * Makefile.am (ICEDTEA_PATCHES): Apply the above. * patches/ecj/icedtea-hotspot.patch: Update. changeset 133ae13dda61 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=133ae13dda61 author: Andrew John Hughes date: Fri Aug 27 23:39:58 2010 +0100 PR398: hotspot hs16 / 6b17 build failure on sparc 2010-08-27 Andrew John Hughes PR398, S6951319: * Makefile.am: Add new patch. * patches/openjdk/6951319-sparc_build_fixes.patch: Backport of 6951319 to fix build issues on GNU/Linux+SPARC. * patches/systemtap.patch: Rerolled against 6951319. * NEWS: Updated. changeset 17e622c24432 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=17e622c24432 author: doko at ubuntu.com date: Sat Aug 28 12:58:17 2010 +0200 Add missing file patches/icedtea-too-many-args.patch changeset 423423aec247 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=423423aec247 author: ptisnovs date: Wed Sep 01 11:50:21 2010 +0200 Backport of 6755274 a 6791612 patches to fix OpenGL-related failures. changeset a6b05ef50569 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=a6b05ef50569 author: ptisnovs date: Thu Sep 02 13:54:31 2010 +0200 New regression test added for checking if OpenGL context is properly initialized. changeset dfc3c1061ec7 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=dfc3c1061ec7 author: ptisnovs date: Fri Sep 03 11:00:55 2010 +0200 Fixed indentation, changed spaces to tab. changeset 4ccee81e878c in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=4ccee81e878c author: Andrew John Hughes date: Sun Sep 05 20:25:14 2010 +0100 Merge changeset 4d346d8d7d27 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=4d346d8d7d27 author: Andrew John Hughes date: Mon Sep 06 13:16:57 2010 +0100 Update JAXP tarball. Drop patch for 6438179, as applied upstream. Drop portions of 6951319 applied upstream. 2010-09-05 Andrew John Hughes * patches/openjdk/6438179-systray_check.patch: Dropped, applied upstream. * Makefile.am: Drop above patch and those brought back by merge. * patches/openjdk/6951319-sparc_build_fixes.patch: Remove upstreamed parts. diffstat: 29 files changed, 1321 insertions(+), 1819 deletions(-) ChangeLog | 178 +- Makefile.am | 39 NEWS | 4 acinclude.m4 | 59 configure.ac | 2 netx/net/sourceforge/jnlp/JNLPFile.java | 10 netx/net/sourceforge/jnlp/JNLPSplashScreen.java | 6 netx/net/sourceforge/jnlp/Parser.java | 50 netx/net/sourceforge/jnlp/UpdateDesc.java | 70 netx/net/sourceforge/jnlp/resources/Messages.properties | 1 netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java | 7 patches/cacao/version-parsing.patch | 11 patches/ecj/cp40188-opengl.patch | 92 + patches/ecj/icedtea-hotspot.patch | 14 patches/ecj/javah.patch | 92 - patches/icedtea-jtreg-OpenGLContextInit.patch | 46 patches/icedtea-jtreg-jrunscript.patch | 12 patches/icedtea-too-many-args.patch | 46 patches/openjdk/4356282-opentype.patch | 227 -- patches/openjdk/6678385-window_movement_crasher.patch | 1241 -------------- patches/openjdk/6755274-glgetstring-crash.patch | 56 patches/openjdk/6791612-opengl-jni-fix.patch | 27 patches/openjdk/6795060-icu_crash.patch | 95 - patches/openjdk/6951319-sparc_build_fixes.patch | 618 ++++++ patches/openjdk/6954424-opentype_javadoc.patch | 23 patches/openjdk/6961732-negative_leading.patch | 45 patches/systemtap.patch | 33 plugin/icedteanp/IcedTeaNPPlugin.cc | 2 plugin/icedteanp/java/sun/applet/PluginAppletViewer.java | 34 diffs (truncated from 3570 to 500 lines): diff -r c73c4672031a -r 4d346d8d7d27 ChangeLog --- a/ChangeLog Tue Aug 10 14:52:56 2010 -0400 +++ b/ChangeLog Mon Sep 06 13:16:57 2010 +0100 @@ -1,3 +1,165 @@ 2010-08-09 Omair Majid + + * patches/openjdk/6438179-systray_check.patch: + Dropped, applied upstream. + * Makefile.am: Drop above patch and those brought + back by merge. Update JAXP tarball. + * patches/openjdk/6951319-sparc_build_fixes.patch: + Remove upstreamed parts. + +2010-09-03 Pavel Tisnovsky + + * Makefile.am: Fixed indentation, changes spaces to tab. + +2010-09-02 Pavel Tisnovsky + + * Makefile.am: Add new patch. + * patches/icedtea-jtreg-OpenGLContextInit.patch: + New regression test added for checking if OpenGL context is properly initialized. + +2010-09-01 Pavel Tisnovsky + + * Makefile.am: Add two new patches, removed one unused patch. + * patches/openjdk/6755274-glgetstring-crash.patch: + * patches/openjdk/6791612-opengl-jni-fix.patch: + Backport of 6755274 and 6791612 patches to fix OpenGL-related failures + (improper OpenGL initialization and missing link to native functions) + +2010-08-27 Andrew John Hughes + + PR398, S6951319: + * Makefile.am: Add new patch. + * patches/openjdk/6951319-sparc_build_fixes.patch: + Backport of 6951319 to fix build issues on GNU/Linux+SPARC. + * patches/systemtap.patch: Rerolled against 6951319. + * NEWS: Updated. + +2010-08-27 Matthias Klose + + * patches/icedtea-too-many-args.diff: Fix build failure with + small SC_ARG_MAX. + * Makefile.am (ICEDTEA_PATCHES): Apply the above. + * patches/ecj/icedtea-hotspot.patch: Update. + +2010-08-27 Matthias Klose + + * Makefile.am: Bump cacao version to changeset including build + fixes for ARM and S390. + * patches/cacao/version-parsing.patch: Remove, applied upstream. + +2010-08-27 Deepak Bhole + + Fixes rhbz#560193 + * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java + (activateJars): Process nested jar only if size > 0 bytes. + * plugin/icedteanp/IcedTeaNPPlugin.cc: Fixed file name in header. + +2010-08-26 Pavel Tisnovsky + + * Makefile.am: Add patch. + * patches/opengl-jni-fix.patch: + Fixed missing JNI link to native function + OGLContext.getOGLIdString() which causes + many OpenGL-related regression tests to fail. + +2010-08-25 Omair Majid + + Fixes RH569121, S6438179 + * NEWS: Update with new backport. + * Makefile.am (ICEDTEA_PATCHES): Apply new patch. + * patches/openjdk/6438179-systray_check.patch: Backport of S6438179. + +2010-08-24 Andrew John Hughes + + * Makefile.am: Compile NimbusLookAndFeel as a + bootstrap class so the older version from + IcedTea6 1.8 is not used when bootstrapping + with it. + +2010-08-23 Andrew Su + + * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java + (parse): Removed parsing for unknown tag. + +2010-08-20 Omair Majid + + * netx/net/sourceforge/jnlp/JNLPFile.java + (getUpdate): New method. Returns the parsed UpdateDesc. + (parse): Call parser.getUpdate. + * netx/net/sourceforge/jnlp/Parser.java + (getUpdate): New method. Parses a node to find elements. + * netx/net/sourceforge/jnlp/UpdateDesc.java: New class. + (UpdateDesc): New method. Creates a new UpdateDesc. + (getPolicy): New method. Returns the policy attribute of this update. + (getCheck): New method. Returns the check attribute for this update. + * netx/net/sourceforge/jnlp/resources/Messages.properties: + Add PTwoUpdates error. + +2010-08-19 Omair Majid + + Fixes rhbz601281 + * NEWS: Update with this fix. + * netx/net/sourceforge/jnlp/JNLPSplashScreen.java + (setSplashImageURL): Check for possible null. + +2010-08-13 Andrew John Hughes + + * patches/ecj/javah.patch: Moved to... + * Makefile.am: Apply patch to OpenGL headers + only if javah exhibits Classpath bug 40188. + http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40188 + * patches/ecj/cp40188-opengl.patch: here. + +2009-05-19 Andrew John Hughes + + * acinclude.m4: + (IT_JAVAH): Renamed from IT_CP39408_JAVAH. + Add test for PR40188. + * configure.ac: + Make full bootstrap the default again. Rename + IT_CP39408_JAVAH to IT_JAVAH. + +2009-03-18 Andrew John Hughes + + * acinclude.m4: + (IT_CP39408_JAVAH): Add classpath specification + to JAVAC invocation to handle buggy ecjs. + +2009-03-17 Andrew John Hughes + + * acinclude.m4: + (IT_CP39408_JAVAH): New test for Classpath + bug 39408. + * configure.ac: Enable new test. Result + as yet unused. + +2010-08-13 Andrew John Hughes + + * Makefile.am: + Replace conditionals on LACKS_SUN_AWT_TOOLKIT + with ones on BOOTSTRAPPING. If we are bootstrapping, + we don't trust the system JDK and update rt.jar + with newly built classes, regardless of whether it's + an Oracle-based JDK or not. + * configure.ac: + Remove check for sun.awt.Toolkit. + +2010-08-12 Andrew John Hughes + + * patches/openjdk/4356282-opentype.patch, + * patches/openjdk/6795060-icu_crash.patch, + * patches/openjdk/6954424-opentype_javadoc.patch: + Dropped, applied upstream. + * Makefile.am: + Remove above patches. + +2010-08-12 Andrew John Hughes + + * patches/openjdk/6678385-window_movement_crasher.patch: + Dropped, applied upstream. + * Makefile.am: + Remove above patch. + 2010-08-09 Omair Majid * NEWS: Update with OpenType support. @@ -38,7 +200,7 @@ 2010-08-09 Deepak Bhole @@ -350,6 +512,12 @@ 2010-07-28 Matthias Klose * NEWS: Add 1.8.1 entry. + +2010-07-26 Andrew John Hughes + + * patches/icedtea-jtreg-jrunscript.patch: + Regenerate after 50002bfcff96 from dcubed being + added to OpenJDK6. 2010-07-26 Andrew John Hughes @@ -799,6 +967,12 @@ 2010-07-08 Andrew John Hughes + + * patches/openjdk/6961732.patch: + Dropped, applied upstream. + * Makefile.am: Remove above patch. 2010-07-06 Andrew John Hughes @@ -9092,7 +9266,7 @@ 2009-04-07 Omair Majid - * patches/icedtea-jtreg-jrunscript.patch: New patch. Replaces + * patches/icedtea-jtreg-jrunscript.patch: New patch. Replaces jrunscriptTest.sh with a java version that isnt picky about int vs double changes. * Makefile.am (ICEDTEA_PATCHES): Apply the above. diff -r c73c4672031a -r 4d346d8d7d27 Makefile.am --- a/Makefile.am Tue Aug 10 14:52:56 2010 -0400 +++ b/Makefile.am Mon Sep 06 13:16:57 2010 +0100 @@ -5,8 +5,8 @@ OPENJDK_VERSION = b20 OPENJDK_VERSION = b20 OPENJDK_URL = http://download.java.net/openjdk/jdk6/promoted/$(OPENJDK_VERSION)/ -CACAO_VERSION = dd4532afd08a -CACAO_SHA256SUM = fc876403aeb46c6c16693cfc75ba0a2e581f7a98ddd02ac7f2bf4fc5c20765b4 +CACAO_VERSION = e321b101a9ee +CACAO_SHA256SUM = 46bc5b6212c199dc4a3dbebe6386fe15a8248625a5dffa17115aab394a298444 CACAO_BASE_URL = http://mips.complang.tuwien.ac.at CACAO_URL = $(CACAO_BASE_URL)/hg/cacao/archive/$(CACAO_VERSION).tar.bz2 CACAO_SRC_ZIP = cacao-$(CACAO_VERSION).tar.bz2 @@ -17,9 +17,9 @@ JAF_DROP_URL = https://jax-ws.dev.java.n JAF_DROP_URL = https://jax-ws.dev.java.net/files/documents/4202/150725 JAF_DROP_ZIP = jdk6-jaf-b20.zip JAF_DROP_SHA256SUM = 78c7b5c9d6271e88ee46abadd018a61f1e9645f8936cc8df1617e5f4f5074012 -JAXP_DROP_URL = https://jaxp.dev.java.net/files/documents/913/150648 -JAXP_DROP_ZIP = jdk6-jaxp-b20.zip -JAXP_DROP_SHA256SUM = d097627d4059d488c5a09d4e33cec275a193d4d8bc0fea8ef4f1337170904156 +JAXP_DROP_URL = https://jaxp.dev.java.net/files/documents/913/152561 +JAXP_DROP_ZIP = jaxp-1_4_4.zip +JAXP_DROP_SHA256SUM = 10b203bec5b7d3dd8f515a9e098f80abc316faf977bcc220b56efe3dc6e9e5e9 OPENJDK_HG_URL = http://hg.openjdk.java.net/jdk6/jdk6 @@ -91,6 +91,7 @@ ICEDTEA_BOOTSTRAP_CLASSES = \ ICEDTEA_BOOTSTRAP_CLASSES = \ $(SHARE)/javax/swing/plaf/basic/BasicDirectoryModel.java \ $(SHARE)/javax/management/StandardMBean.java \ + $(SHARE)/com/sun/java/swing/plaf/nimbus/NimbusLookAndFeel.java \ $(NETX_BOOTSTRAP_CLASSES) # Flags @@ -275,8 +276,6 @@ ICEDTEA_PATCHES = \ patches/icedtea-jtreg-httpTest.patch \ patches/arm.patch \ patches/shark-debug-option.patch \ - patches/openjdk/6678385-window_movement_crasher.patch \ - patches/openjdk/6961732-negative_leading.patch \ patches/debug-dir.patch \ patches/no-sync.patch \ patches/icedtea-override-redirect-metacity.patch \ @@ -286,9 +285,9 @@ ICEDTEA_PATCHES = \ patches/fonts-rhel.patch \ patches/fonts-gentoo.patch \ patches/ipv4-mapped-ipv6-addresses.patch \ - patches/openjdk/6795060-icu_crash.patch \ - patches/openjdk/4356282-opentype.patch \ - patches/openjdk/6954424-opentype_javadoc.patch + patches/openjdk/6951319-sparc_build_fixes.patch \ + patches/icedtea-too-many-args.patch \ + patches/icedtea-jtreg-OpenGLContextInit.patch if WITH_RHINO ICEDTEA_PATCHES += \ @@ -305,8 +304,7 @@ ICEDTEA_PATCHES += \ patches/cacao/launcher.patch \ patches/cacao/arm-arch-defines.patch \ patches/cacao/jsig.patch \ - patches/cacao/memory.patch \ - patches/cacao/version-parsing.patch + patches/cacao/memory.patch endif if WITH_CACAO @@ -323,7 +321,9 @@ if ENABLE_XRENDER if ENABLE_XRENDER ICEDTEA_PATCHES += patches/openjdk/6725214-direct3d-01.patch \ patches/openjdk/6307603-xrender-01.patch \ - patches/openjdk/6961633-xrender-02.patch + patches/openjdk/6961633-xrender-02.patch \ + patches/openjdk/6791612-opengl-jni-fix.patch \ + patches/openjdk/6755274-glgetstring-crash.patch endif if ENABLE_NIO2 @@ -365,9 +365,10 @@ endif endif if ENABLE_XRENDER -ICEDTEA_ECJ_PATCHES += \ - patches/ecj/needs-6.patch \ - patches/ecj/javah.patch +ICEDTEA_ECJ_PATCHES += patches/ecj/needs-6.patch +if CP40188_JAVAH +ICEDTEA_ECJ_PATCHES += patches/ecj/cp40188-opengl.patch +endif endif if !HAS_PAX @@ -2068,7 +2069,7 @@ rt-source-files.txt: $(OPENJDK_ECJ_TREE) done stamps/rt-class-files.stamp: $(INITIAL_BOOTSTRAP_LINK_STAMP) rt-source-files.txt -if LACKS_SUN_AWT_TOOLKIT +if BOOTSTRAPPING mkdir -p lib/rt $(BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) -d lib/rt \ -sourcepath $(SOURCEPATH_DIRS) -bootclasspath \'\' \ @@ -2083,7 +2084,7 @@ clean-rt: rm -f stamps/rt-class-files.stamp rm -f stamps/rt.stamp rm -f rt-source-files.txt -if LACKS_SUN_AWT_TOOLKIT +if BOOTSTRAPPING if [ -e $(ECJ_BOOT_DIR) ] ; then \ cp $(SYSTEM_JDK_DIR)/jre/lib/rt.jar $(ECJ_BOOT_DIR)/jre/lib/rt.jar ; \ fi @@ -2091,7 +2092,7 @@ endif stamps/rt.stamp: stamps/rt-class-files.stamp mkdir -p stamps -if LACKS_SUN_AWT_TOOLKIT +if BOOTSTRAPPING $(BOOT_DIR)/bin/jar uf $(RUNTIME) -C lib/rt com -C lib/rt java \ -C lib/rt javax -C lib/rt sun if ENABLE_NIO2 diff -r c73c4672031a -r 4d346d8d7d27 NEWS --- a/NEWS Tue Aug 10 14:52:56 2010 -0400 +++ b/NEWS Mon Sep 06 13:16:57 2010 +0100 @@ -12,6 +12,10 @@ New in release 1.10 (2010-XX-XX): * Backports from OpenJDK6 - S4356282, RH525870: RFE: T2K should be used to rasterize CID/CFF fonts - S6954424: Support OpenType/CFF fonts in JDK 7 + - S6438179: XToolkit.isTraySupported() result has nothing to do with the system tray + - S6951319: enable solaris builds using Sun Studio 12 update 1 (fixes PR398) +* NetX + - RH601281: Possible NullPointerException in splash screen code New in release 1.9 (2010-XX-XX): diff -r c73c4672031a -r 4d346d8d7d27 acinclude.m4 --- a/acinclude.m4 Tue Aug 10 14:52:56 2010 -0400 +++ b/acinclude.m4 Mon Sep 06 13:16:57 2010 +0100 @@ -1515,3 +1515,62 @@ AM_CONDITIONAL([HAS_PAX], test x"${it_cv AM_CONDITIONAL([HAS_PAX], test x"${it_cv_pax}" = "xyes") AC_PROVIDE([$0])dnl ]) + +AC_DEFUN([IT_JAVAH],[ +AC_CACHE_CHECK([if $JAVAH exhibits Classpath bug 39408], it_cv_cp39408_javah, [ +SUPERCLASS=Test.java +SUBCLASS=TestImpl.java +SUB=$(echo $SUBCLASS|sed 's#\.java##') +SUBHEADER=$(echo $SUBCLASS|sed 's#\.java#.h#') +mkdir tmp.$$ +cd tmp.$$ +cat << \EOF > $SUPERCLASS +/* [#]line __oline__ "configure" */ +public class Test +{ + public static final int POTATO = 0; + public static final int CABBAGE = 1; +} +EOF +cat << \EOF > $SUBCLASS +/* [#]line __oline__ "configure" */ +public class TestImpl + extends Test +{ + public native void doStuff(); +} +EOF +if $JAVAC -cp . $JAVACFLAGS $SUBCLASS >&AS_MESSAGE_LOG_FD 2>&1; then + if $JAVAH -classpath . $SUB >&AS_MESSAGE_LOG_FD 2>&1; then + if cat $SUBHEADER | grep POTATO >&AS_MESSAGE_LOG_FD 2>&1; then + it_cv_cp39408_javah=no; + else + it_cv_cp39408_javah=yes; + fi + else + AC_MSG_ERROR([The Java header generator $JAVAH failed]) + echo "configure: failed program was:" >&AC_FD_CC + cat $SUBCLASS >&AC_FD_CC + fi +else + AC_MSG_ERROR([The Java compiler $JAVAC failed]) + echo "configure: failed program was:" >&AC_FD_CC + cat $SUBCLASS >&AC_FD_CC +fi +]) +AC_CACHE_CHECK([if $JAVAH exhibits Classpath bug 40188], it_cv_cp40188_javah, [ + if test -e $SUBHEADER ; then + if cat $SUBHEADER | grep TestImpl_POTATO >&AS_MESSAGE_LOG_FD 2>&1; then + it_cv_cp40188_javah=no; + else + it_cv_cp40188_javah=yes; + fi + fi +]) +rm -f $SUBCLASS $SUPERCLASS $SUBHEADER *.class +cd .. +rmdir tmp.$$ +AM_CONDITIONAL([CP39408_JAVAH], test x"${it_cv_cp39408_javah}" = "xyes") +AM_CONDITIONAL([CP40188_JAVAH], test x"${it_cv_cp40188_javah}" = "xyes") +AC_PROVIDE([$0])dnl +]) diff -r c73c4672031a -r 4d346d8d7d27 configure.ac --- a/configure.ac Tue Aug 10 14:52:56 2010 -0400 +++ b/configure.ac Mon Sep 06 13:16:57 2010 +0100 @@ -178,9 +178,9 @@ ENABLE_HG ENABLE_HG AC_CHECK_WITH_HG_REVISION AC_CHECK_WITH_TZDATA_DIR -IT_CHECK_FOR_CLASS([SUN_AWT_TOOLKIT], [sun.awt.SunToolkit]) IT_GETDTDTYPE_CHECK IT_CHECK_XULRUNNER_VERSION +IT_JAVAH dnl pkgconfig cannot be used to find these headers and libraries. AC_CHECK_HEADERS([cups/cups.h cups/ppd.h],[] diff -r c73c4672031a -r 4d346d8d7d27 netx/net/sourceforge/jnlp/JNLPFile.java --- a/netx/net/sourceforge/jnlp/JNLPFile.java Tue Aug 10 14:52:56 2010 -0400 +++ b/netx/net/sourceforge/jnlp/JNLPFile.java Mon Sep 06 13:16:57 2010 +0100 @@ -82,6 +82,8 @@ public class JNLPFile { /** information */ protected List info; + + protected UpdateDesc update; /** resources */ protected List resources; @@ -345,6 +347,13 @@ public class JNLPFile { } /** + * Returns the update section of the JNLP file. + */ + public UpdateDesc getUpdate() { + return update; + } + + /** * Returns the security section of the JNLP file. */ public SecurityDesc getSecurity() { @@ -561,6 +570,7 @@ public class JNLPFile { codeBase = parser.getCodeBase(); sourceLocation = parser.getFileLocation() != null ? parser.getFileLocation() : location; info = parser.getInfo(root); + update = parser.getUpdate(root); resources = parser.getResources(root, false); // false == not a j2se/java resources section launchType = parser.getLauncher(root); security = parser.getSecurity(root); diff -r c73c4672031a -r 4d346d8d7d27 netx/net/sourceforge/jnlp/JNLPSplashScreen.java --- a/netx/net/sourceforge/jnlp/JNLPSplashScreen.java Tue Aug 10 14:52:56 2010 -0400 +++ b/netx/net/sourceforge/jnlp/JNLPSplashScreen.java Mon Sep 06 13:16:57 2010 +0100 @@ -44,6 +44,12 @@ public class JNLPSplashScreen extends JF try { splashImage = ImageIO.read(resourceTracker .getCacheFile(splashImageUrl)); + if (splashImage == null) { + if (JNLPRuntime.isDebug()) { + System.err.println("Error loading splash image: " + url); + } + return; + } } catch (IOException e) { if (JNLPRuntime.isDebug()) { System.err.println("Error loading splash image: " + url); diff -r c73c4672031a -r 4d346d8d7d27 netx/net/sourceforge/jnlp/Parser.java --- a/netx/net/sourceforge/jnlp/Parser.java Tue Aug 10 14:52:56 2010 -0400 +++ b/netx/net/sourceforge/jnlp/Parser.java Mon Sep 06 13:16:57 2010 +0100 @@ -25,6 +25,8 @@ import java.util.*; //import org.w3c.dom.*; // class for using Tiny XML | NanoXML //import org.xml.sax.*; //import gd.xml.tiny.*; +import net.sourceforge.jnlp.UpdateDesc.Check; +import net.sourceforge.jnlp.UpdateDesc.Policy; import net.sourceforge.jnlp.runtime.JNLPRuntime; import net.sourceforge.nanoxml.*; @@ -176,6 +178,53 @@ class Parser { */ public Version getSpecVersion() { return spec; + } + + public UpdateDesc getUpdate(Node parent) throws ParseException { + UpdateDesc updateDesc = null; + Node child = parent.getFirstChild(); + while (child != null) { + if (child.getNodeName().equals("update")) { + if (strict && updateDesc != null) { From ahughes at redhat.com Mon Sep 6 07:13:40 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Mon, 6 Sep 2010 15:13:40 +0100 Subject: [1.7 & 1.8 BRANCH APPROVAL]: Backport 6539464: Math functions produce inconsistent results In-Reply-To: <4C84A354.20806@redhat.com> References: <20100903232535.GD11124@rivendell.middle-earth.co.uk> <20100903235611.GF11124@rivendell.middle-earth.co.uk> <4C84A354.20806@redhat.com> Message-ID: <20100906141340.GB26788@bree.middle-earth.co.uk> On 10:16 Mon 06 Sep , Pavel Tisnovsky wrote: > Dr Andrew John Hughes wrote: > > On 00:25 Sat 04 Sep , Dr Andrew John Hughes wrote: > >> Applies to hs14 only. hs16 (1.7 & 1.8 --with-hotspot-build=hs16) and hs17 (1.9, HEAD) have this fix. > >> > >> changeset: 1981:0b63ff75d44a > >> tag: tip > >> user: Andrew John Hughes > >> date: Sat Sep 04 00:21:46 2010 +0100 > >> files: ChangeLog Makefile.am NEWS patches/hotspot/original/6539464-consistent-math.patch > >> description: > >> S6539464, RH500077: Ensure Math functions return consistent results. > >> > >> 2010-09-03 Andrew John Hughes > >> > >> * Makefile.am: Add new patch. > >> * patches/hotspot/original/6539464-consistent-math.patch: > >> Backport fix for S6539464 which ensures Math functions > >> return consistent results. > >> * NEWS: Updated. > >> > >> Ok for 1.7 & 1.8? > > Hi Andrew, > > should I run our usual tests before you push this changes to 1.7 and > 1.8? (just to be sure :-) > I take it you mean testing them with this patch applied locally? Yes, that sounds like a good idea. I've attached the patches for each version. > Pavel > > > >> -- > >> Andrew :) > >> > >> Free Java Software Engineer > >> Red Hat, Inc. (http://www.redhat.com) > >> > >> Support Free Java! > >> Contribute to GNU Classpath and the OpenJDK > >> http://www.gnu.org/software/classpath > >> http://openjdk.java.net > >> PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > >> Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 > > > > The patch is simply http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/819880572f09. No changes. > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 -------------- next part -------------- # HG changeset patch # User Andrew John Hughes # Date 1283556106 -3600 # Node ID 0b63ff75d44a751a20b0b085079820f0fcc3253b # Parent e508d944ca9dbc16812f2c64e16e1d0c7b26a891 S6539464, RH500077: Ensure Math functions return consistent results. 2010-09-03 Andrew John Hughes * Makefile.am: Add new patch. * patches/hotspot/original/6539464-consistent-math.patch: Backport fix for S6539464 which ensures Math functions return consistent results. * NEWS: Updated. diff -r e508d944ca9d -r 0b63ff75d44a ChangeLog --- a/ChangeLog Fri Aug 27 14:46:25 2010 -0400 +++ b/ChangeLog Sat Sep 04 00:21:46 2010 +0100 @@ -1,3 +1,11 @@ +2010-09-03 Andrew John Hughes + + * Makefile.am: Add new patch. + * patches/hotspot/original/6539464-consistent-math.patch: + Backport fix for S6539464 which ensures Math functions + return consistent results. + * NEWS: Updated. + 2010-08-27 Deepak Bhole Fixes rhbz#560193 diff -r e508d944ca9d -r 0b63ff75d44a Makefile.am --- a/Makefile.am Fri Aug 27 14:46:25 2010 -0400 +++ b/Makefile.am Sat Sep 04 00:21:46 2010 +0100 @@ -402,7 +402,8 @@ patches/hotspot/original/icedtea-6778657-f2i-overflow.patch \ patches/hotspot/original/icedtea-6791168.patch \ patches/hotspot/original/icedtea-6793825-includedb.patch \ - patches/openjdk/6822370-reentrantreadwritelock.patch + patches/openjdk/6822370-reentrantreadwritelock.patch \ + patches/hotspot/original/6539464-consistent-math.patch endif if HAS_PAX diff -r e508d944ca9d -r 0b63ff75d44a NEWS --- a/NEWS Fri Aug 27 14:46:25 2010 -0400 +++ b/NEWS Sat Sep 04 00:21:46 2010 +0100 @@ -4,6 +4,7 @@ - G244901: Skip test_gamma on hardened (PaX-enabled) kernels - G266295: Provide font configuration for Gentoo. - Provide font configuration for RHEL 6. + - S6539464, RH500077: Ensure java.lang.Math functions provide consistent results. * NetX - Fix browser command in BasicService.showDocument(URL) - Run programs that inherit main(String[]) in their main-class diff -r e508d944ca9d -r 0b63ff75d44a patches/hotspot/original/6539464-consistent-math.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/original/6539464-consistent-math.patch Sat Sep 04 00:21:46 2010 +0100 @@ -0,0 +1,79 @@ +# HG changeset patch +# User never +# Date 1239043997 25200 +# Node ID 819880572f0972750d759c1fa6f8705c33b42172 +# Parent 1f2abec697143b7575318be7db855e5e9f893e69 +6539464: Math.log() produces inconsistent results between successive runs. +Reviewed-by: kvn + +diff -r 1f2abec69714 -r 819880572f09 src/cpu/x86/vm/templateInterpreter_x86_64.cpp +--- openjdk.orig/hotspot/src/cpu/x86/vm/templateInterpreter_x86_64.cpp Fri Apr 03 18:51:31 2009 -0700 ++++ openjdk/hotspot/src/cpu/x86/vm/templateInterpreter_x86_64.cpp Mon Apr 06 11:53:17 2009 -0700 +@@ -1393,12 +1393,13 @@ + case Interpreter::empty : entry_point = ((InterpreterGenerator*) this)->generate_empty_entry(); break; + case Interpreter::accessor : entry_point = ((InterpreterGenerator*) this)->generate_accessor_entry(); break; + case Interpreter::abstract : entry_point = ((InterpreterGenerator*) this)->generate_abstract_entry(); break; +- case Interpreter::java_lang_math_sin : break; +- case Interpreter::java_lang_math_cos : break; +- case Interpreter::java_lang_math_tan : break; +- case Interpreter::java_lang_math_abs : break; +- case Interpreter::java_lang_math_log : break; +- case Interpreter::java_lang_math_log10 : break; ++ ++ case Interpreter::java_lang_math_sin : // fall thru ++ case Interpreter::java_lang_math_cos : // fall thru ++ case Interpreter::java_lang_math_tan : // fall thru ++ case Interpreter::java_lang_math_abs : // fall thru ++ case Interpreter::java_lang_math_log : // fall thru ++ case Interpreter::java_lang_math_log10 : // fall thru + case Interpreter::java_lang_math_sqrt : entry_point = ((InterpreterGenerator*) this)->generate_math_entry(kind); break; + default : ShouldNotReachHere(); break; + } +diff -r 1f2abec69714 -r 819880572f09 test/compiler/6539464/Test.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6539464/Test.java Mon Apr 06 11:53:17 2009 -0700 +@@ -0,0 +1,44 @@ ++/* ++ * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/** ++ * @test ++ * @bug 6539464 ++ * @summary Math.log() produces inconsistent results between successive runs. ++ * ++ * @run main/othervm -Xcomp -XX:CompileOnly=Test.main Test ++ */ ++ ++public class Test { ++ static double log_value = 17197; ++ static double log_result = Math.log(log_value); ++ ++ public static void main(String[] args) throws Exception { ++ for (int i = 0; i < 1000000; i++) { ++ double log_result2 = Math.log(log_value); ++ if (log_result2 != log_result) { ++ throw new InternalError("Math.log produces inconsistent results: " + log_result2 + " != " + log_result); ++ } ++ } ++ } ++} -------------- next part -------------- # HG changeset patch # User Andrew John Hughes # Date 1283780918 -3600 # Node ID 4e8e7394fd77e69579a24da117bf36668ceb0878 # Parent 59c86078a67605e66f4b5e4bed080ac6686209c6 S6539464, RH500077: Ensure Math functions return consistent results. 2010-09-03 Andrew John Hughes * Makefile.am: Add new patch. * patches/hotspot/original/6539464-consistent-math.patch: Backport fix for S6539464 which ensures Math functions return consistent results. * NEWS: Updated. diff -r 59c86078a676 -r 4e8e7394fd77 ChangeLog --- a/ChangeLog Sun Aug 29 12:54:00 2010 +0200 +++ b/ChangeLog Mon Sep 06 14:48:38 2010 +0100 @@ -1,3 +1,11 @@ +2010-09-03 Andrew John Hughes + + * Makefile.am: Add new patch. + * patches/hotspot/original/6539464-consistent-math.patch: + Backport fix for S6539464 which ensures Math functions + return consistent results. + * NEWS: Updated. + 2010-08-27 Andrew John Hughes Matthias Klose diff -r 59c86078a676 -r 4e8e7394fd77 Makefile.am --- a/Makefile.am Sun Aug 29 12:54:00 2010 +0200 +++ b/Makefile.am Mon Sep 06 14:48:38 2010 +0100 @@ -400,7 +400,8 @@ patches/hotspot/original/icedtea-6778657-f2i-overflow.patch \ patches/hotspot/original/icedtea-6791168.patch \ patches/hotspot/original/icedtea-6793825-includedb.patch \ - patches/openjdk/6822370-reentrantreadwritelock.patch + patches/openjdk/6822370-reentrantreadwritelock.patch \ + patches/hotspot/original/6539464-consistent-math.patch endif if HAS_PAX diff -r 59c86078a676 -r 4e8e7394fd77 NEWS --- a/NEWS Sun Aug 29 12:54:00 2010 +0200 +++ b/NEWS Mon Sep 06 14:48:38 2010 +0100 @@ -5,6 +5,7 @@ - G266295: Provide font configuration for Gentoo. - Provide font configuration for RHEL 6. - S6951319: enable solaris builds using Sun Studio 12 update 1 (fixes PR398) + - S6539464, RH500077: Ensure java.lang.Math functions provide consistent results. - NetX: - Fix browser command in BasicService.showDocument(URL) - Run programs that inherit main(String[]) in their main-class diff -r 59c86078a676 -r 4e8e7394fd77 patches/hotspot/original/6539464-consistent-math.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/original/6539464-consistent-math.patch Mon Sep 06 14:48:38 2010 +0100 @@ -0,0 +1,79 @@ +# HG changeset patch +# User never +# Date 1239043997 25200 +# Node ID 819880572f0972750d759c1fa6f8705c33b42172 +# Parent 1f2abec697143b7575318be7db855e5e9f893e69 +6539464: Math.log() produces inconsistent results between successive runs. +Reviewed-by: kvn + +diff -r 1f2abec69714 -r 819880572f09 src/cpu/x86/vm/templateInterpreter_x86_64.cpp +--- openjdk.orig/hotspot/src/cpu/x86/vm/templateInterpreter_x86_64.cpp Fri Apr 03 18:51:31 2009 -0700 ++++ openjdk/hotspot/src/cpu/x86/vm/templateInterpreter_x86_64.cpp Mon Apr 06 11:53:17 2009 -0700 +@@ -1393,12 +1393,13 @@ + case Interpreter::empty : entry_point = ((InterpreterGenerator*) this)->generate_empty_entry(); break; + case Interpreter::accessor : entry_point = ((InterpreterGenerator*) this)->generate_accessor_entry(); break; + case Interpreter::abstract : entry_point = ((InterpreterGenerator*) this)->generate_abstract_entry(); break; +- case Interpreter::java_lang_math_sin : break; +- case Interpreter::java_lang_math_cos : break; +- case Interpreter::java_lang_math_tan : break; +- case Interpreter::java_lang_math_abs : break; +- case Interpreter::java_lang_math_log : break; +- case Interpreter::java_lang_math_log10 : break; ++ ++ case Interpreter::java_lang_math_sin : // fall thru ++ case Interpreter::java_lang_math_cos : // fall thru ++ case Interpreter::java_lang_math_tan : // fall thru ++ case Interpreter::java_lang_math_abs : // fall thru ++ case Interpreter::java_lang_math_log : // fall thru ++ case Interpreter::java_lang_math_log10 : // fall thru + case Interpreter::java_lang_math_sqrt : entry_point = ((InterpreterGenerator*) this)->generate_math_entry(kind); break; + default : ShouldNotReachHere(); break; + } +diff -r 1f2abec69714 -r 819880572f09 test/compiler/6539464/Test.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6539464/Test.java Mon Apr 06 11:53:17 2009 -0700 +@@ -0,0 +1,44 @@ ++/* ++ * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/** ++ * @test ++ * @bug 6539464 ++ * @summary Math.log() produces inconsistent results between successive runs. ++ * ++ * @run main/othervm -Xcomp -XX:CompileOnly=Test.main Test ++ */ ++ ++public class Test { ++ static double log_value = 17197; ++ static double log_result = Math.log(log_value); ++ ++ public static void main(String[] args) throws Exception { ++ for (int i = 0; i < 1000000; i++) { ++ double log_result2 = Math.log(log_value); ++ if (log_result2 != log_result) { ++ throw new InternalError("Math.log produces inconsistent results: " + log_result2 + " != " + log_result); ++ } ++ } ++ } ++} From ptisnovs at icedtea.classpath.org Mon Sep 6 07:56:16 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Mon, 06 Sep 2010 14:56:16 +0000 Subject: /hg/gfx-test: Added support for zoomed images rendering, first v... Message-ID: changeset 8ab660713623 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=8ab660713623 author: Pavel Tisnovsky date: Mon Sep 06 16:56:33 2010 +0200 Added support for zoomed images rendering, first version of test reporter. diffstat: 31 files changed, 434 insertions(+), 12 deletions(-) Makefile | 16 +- src/org/gfxtest/framework/GfxTest.java | 62 +++++++- src/org/gfxtest/framework/TestImage.java | 25 ++- src/org/gfxtest/framework/annotations/Zoom.java | 53 +++++++ src/org/gfxtest/reporter/Reporter.java | 128 +++++++++++++++++ src/org/gfxtest/reporter/ReporterConfiguration.java | 98 +++++++++++++ src/org/gfxtest/reporter/TestResult.java | 38 +++++ src/org/gfxtest/testsuites/BlankImage.java | 1 src/org/gfxtest/testsuites/DashedCircles.java | 1 src/org/gfxtest/testsuites/DashedEllipses.java | 1 src/org/gfxtest/testsuites/DashedLines.java | 1 src/org/gfxtest/testsuites/DashedPolylines.java | 1 src/org/gfxtest/testsuites/DashedRectangles.java | 1 src/org/gfxtest/testsuites/FilledArcs.java | 1 src/org/gfxtest/testsuites/FilledCircles.java | 1 src/org/gfxtest/testsuites/FilledEllipses.java | 1 src/org/gfxtest/testsuites/FilledPolygons.java | 1 src/org/gfxtest/testsuites/FilledRectangles.java | 1 src/org/gfxtest/testsuites/FilledRoundRectangles.java | 1 src/org/gfxtest/testsuites/Normal3DRectangles.java | 3 src/org/gfxtest/testsuites/NormalArcs.java | 1 src/org/gfxtest/testsuites/NormalCircles.java | 1 src/org/gfxtest/testsuites/NormalEllipses.java | 1 src/org/gfxtest/testsuites/NormalLines.java | 1 src/org/gfxtest/testsuites/NormalPolygons.java | 1 src/org/gfxtest/testsuites/NormalPolylines.java | 1 src/org/gfxtest/testsuites/NormalRectangles.java | 1 src/org/gfxtest/testsuites/NormalRoundRectangles.java | 1 src/org/gfxtest/testsuites/ScaledLines.java | 1 src/org/gfxtest/testsuites/ScaledPolylines.java | 1 src/org/gfxtest/testsuites/ScaledRectangles.java | 1 diffs (truncated from 834 to 500 lines): diff -r 6a72cc4964cc -r 8ab660713623 Makefile --- a/Makefile Tue Aug 10 13:59:14 2010 +0200 +++ b/Makefile Mon Sep 06 16:56:33 2010 +0200 @@ -41,9 +41,12 @@ OUTPUT=output OUTPUT=output SAMPLES=samples RESULTS=results + COMMON_DIR=org/gfxtest/common FRAMEWORK_DIR=org/gfxtest/framework TESTSUITE_DIR=org/gfxtest/testsuites +REPORTER_DIR=org/gfxtest/reporter + TEST_PACKAGE=org.gfxtest.testsuites RUN_OPTIONS=-w=640 -h=480 -t=rgb TESTED_JAVA=/usr/java/default/bin/java @@ -54,6 +57,9 @@ FRAMEWORK_CLASSES = \ $(CLASSES)/$(COMMON_DIR)/InvalidParameterValueException.class \ $(CLASSES)/$(COMMON_DIR)/ConfigurationException.class \ $(CLASSES)/$(COMMON_DIR)/Configuration.class \ + $(CLASSES)/$(REPORTER_DIR)/TestResult.class \ + $(CLASSES)/$(REPORTER_DIR)/ReporterConfiguration.class \ + $(CLASSES)/$(REPORTER_DIR)/Reporter.class \ $(CLASSES)/$(FRAMEWORK_DIR)/annotations/GraphicsPrimitives.class \ $(CLASSES)/$(FRAMEWORK_DIR)/annotations/GraphicsPrimitive.class \ $(CLASSES)/$(FRAMEWORK_DIR)/annotations/RenderStyles.class \ @@ -62,6 +68,7 @@ FRAMEWORK_CLASSES = \ $(CLASSES)/$(FRAMEWORK_DIR)/annotations/TestType.class \ $(CLASSES)/$(FRAMEWORK_DIR)/annotations/Transformations.class \ $(CLASSES)/$(FRAMEWORK_DIR)/annotations/Transformation.class \ + $(CLASSES)/$(FRAMEWORK_DIR)/annotations/Zoom.class \ $(CLASSES)/$(FRAMEWORK_DIR)/EntityRenderingStyle.class \ $(CLASSES)/$(FRAMEWORK_DIR)/TestResult.class \ $(CLASSES)/$(FRAMEWORK_DIR)/ParameterNotFoundException.class \ @@ -127,7 +134,7 @@ TESTSUITES = $(shell ls -1 src/org/gfxte SAMPLE_IMAGES = $(shell ls -1 src/org/gfxtest/testsuites | sed -n -e 's/\([A-Za-z0-9]*\)\.java/samples\/\1/p') -all: build sample_images runtests compareresults +all: build sample_images runtests compareresults report build: $(CLASSES)/stamp $(OUTPUT)/stamp gfxtest.jar @@ -156,6 +163,9 @@ test_suites: $(TESTSUITE_CLASSES) $(CLASSES)/$(TESTSUITE_DIR)/%.class: $(SOURCEPATH)/$(TESTSUITE_DIR)/%.java $(JAVAC) -d $(CLASSES) -sourcepath src/ $< +$(CLASSES)/$(REPORTER_DIR)/%.class: $(SOURCEPATH)/$(REPORTER_DIR)/%.java + $(JAVAC) -d $(CLASSES) -sourcepath src/ $< + gfxtest.jar: $(FRAMEWORK_CLASSES) $(TESTSUITE_CLASSES) jar cvf gfxtest.jar -C $(CLASSES) . @@ -172,7 +182,7 @@ runtests: gfxtest.jar $(TESTSUITES) mkdir -p $@ $(REFERENCE_JAVA) -cp gfxtest.jar $(TEST_PACKAGE).$(subst samples/,,$@) $(RUN_OPTIONS) -o=$@ -# for output/NormalLines the internal macros are set: +# for output/NormalLines the internal macros are set to following: # $@ - results/NormalLines # $< - output/NormalLines # $* - NormalLines @@ -186,6 +196,8 @@ compareresults: $(COMPARE_RESULTS) cp results.html $(RESULTS) mkdir -p masks +report: gfxtest.jar + java -cp gfxtest.jar org.gfxtest.reporter.Reporter -i=$(RESULTS) -o=$(RESULTS) cleanall: clean clean-output clean-results clean-samples clean-all: cleanall diff -r 6a72cc4964cc -r 8ab660713623 src/org/gfxtest/framework/GfxTest.java --- a/src/org/gfxtest/framework/GfxTest.java Tue Aug 10 13:59:14 2010 +0200 +++ b/src/org/gfxtest/framework/GfxTest.java Mon Sep 06 16:56:33 2010 +0200 @@ -48,6 +48,7 @@ import java.lang.reflect.Method; import java.lang.reflect.Method; import org.gfxtest.common.ConfigurationException; +import org.gfxtest.framework.annotations.Zoom; public abstract class GfxTest { @@ -354,14 +355,15 @@ public abstract class GfxTest { String testName = "test" + testNumber; //$NON-NLS-1$ this.log.logBegin(testName); - TestImage image = new TestImage(configuration); + int zoom = getZoom(); + TestImage image = new TestImage(configuration, zoom); Graphics2D graphics = image.getGraphics(); logCurrentRenderingStyle(entityRenderingStyle); drawEntity(image, graphics, testNumber, entityRenderingStyle); graphics.dispose(); try { - image.writeImage(configuration, this.suiteName, testName); + writeZoomedImage(configuration, image, testName, zoom); } catch (IOException e) { @@ -389,7 +391,8 @@ public abstract class GfxTest if (method.getName().startsWith("test")) //$NON-NLS-1$ { this.log.logBegin(methodName); - TestImage image = new TestImage(configuration); + int zoom = getZoom(); + TestImage image = new TestImage(configuration, zoom); Graphics2D gc = image.getGraphics(); TestResult result = null; try @@ -407,7 +410,7 @@ public abstract class GfxTest logTestResult(result); try { - image.writeImage(configuration, this.suiteName, methodName); + writeZoomedImage(configuration, image, methodName, zoom); } catch (IOException e) { @@ -416,6 +419,57 @@ public abstract class GfxTest this.log.logEnd(methodName); } } + } + + private void writeZoomedImage(GfxTestConfiguration configuration, TestImage sourceImage, String methodName, int zoom) throws IOException + { + if (zoom == 1) + { + sourceImage.writeImage(configuration, this.suiteName, methodName); + } + else + { + TestImage destinationImage = new TestImage(configuration, 1); + zoomImage(sourceImage, zoom, destinationImage); + drawGrid(destinationImage, zoom); + destinationImage.writeImage(configuration, this.suiteName, methodName); + } + } + + private void zoomImage(TestImage sourceImage, int zoom, TestImage destinationImage) + { + for (int y = 0; y < destinationImage.getHeight(); y++) + { + for (int x = 0; x < destinationImage.getWidth(); x++) + { + destinationImage.setRGB(x, y, sourceImage.getRGB(x / zoom, y / zoom)); + } + } + } + + private void drawGrid(TestImage image, int zoom) + { + Graphics2D g = image.getGraphics(); + g.setColor(Color.GRAY); + for (int x = 0; x < image.getWidth(); x += zoom) + { + g.drawLine(x, 0, x, image.getHeight() - 1); + } + for (int y = 0; y < image.getWidth(); y += zoom) + { + g.drawLine(0, y, image.getWidth() - 1, y); + } + } + + /** + * Returns zoom set by annotation. + * + * @return actual zoom value + */ + private int getZoom() + { + Zoom zoom = this.getClass().getAnnotation(Zoom.class); + return zoom == null ? 1 : zoom.value(); } /** diff -r 6a72cc4964cc -r 8ab660713623 src/org/gfxtest/framework/TestImage.java --- a/src/org/gfxtest/framework/TestImage.java Tue Aug 10 13:59:14 2010 +0200 +++ b/src/org/gfxtest/framework/TestImage.java Mon Sep 06 16:56:33 2010 +0200 @@ -54,22 +54,27 @@ public class TestImage private static final int GRID_SIZE = 20; private BufferedImage image = null; - public TestImage(GfxTestConfiguration configuration) + public TestImage(GfxTestConfiguration configuration, int zoom) { this.log = new Log(this.getClass().getName(), true); - this.createImage(configuration); + this.createImage(configuration, zoom); } /** * Create new buffered image with given width, height and image type. * @param configuration configuration of current test suite + * @param zoom zoom factor * @return */ - public void createImage(GfxTestConfiguration configuration) + public void createImage(GfxTestConfiguration configuration, int zoom) { - this.image = new BufferedImage(configuration.getImageWidth(), configuration.getImageHeight(), configuration.getImageType()); + this.image = new BufferedImage(configuration.getImageWidth() / zoom, configuration.getImageHeight() / zoom, + configuration.getImageType()); this.clearImage(); - this.drawGrid(); + if (zoom == 1) + { + this.drawGrid(); + } } protected void clearImage() @@ -157,4 +162,14 @@ public class TestImage { return this.getHeight() >> 1; } + + public int getRGB(int x, int y) + { + return this.image.getRGB(x, y); + } + + public void setRGB(int x, int y, int rgb) + { + this.image.setRGB(x, y, rgb); + } } diff -r 6a72cc4964cc -r 8ab660713623 src/org/gfxtest/framework/annotations/Zoom.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/framework/annotations/Zoom.java Mon Sep 06 16:56:33 2010 +0200 @@ -0,0 +1,53 @@ +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.framework.annotations; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + + at Retention(RetentionPolicy.RUNTIME) + at Target(ElementType.TYPE) +public @interface Zoom +{ + int value(); +} diff -r 6a72cc4964cc -r 8ab660713623 src/org/gfxtest/reporter/Reporter.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/reporter/Reporter.java Mon Sep 06 16:56:33 2010 +0200 @@ -0,0 +1,128 @@ +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.reporter; + +import java.io.File; +import java.util.HashMap; +import java.util.Map; + +import org.gfxtest.common.ConfigurationException; +import org.gfxtest.framework.Log; + +/** + * Test reporter main class. + * + * @author Pavel Tisnovsky + */ +public class Reporter +{ + private Log log = null; + + private ReporterConfiguration configuration = null; + + @SuppressWarnings("nls") + private final String[] SPECTESTS = new String[] {"BlankImage"}; + + @SuppressWarnings("nls") + private final String[] ENTITIES = new String[] {"Line", "Polyline", "Polygon", "Rectangle", "Circle", "Ellipse", "Arc"}; + + @SuppressWarnings("nls") + private final String[] STYLES = new String[] {"Normal", "Filled", "Dashed", "Scaled"}; + + /** + * Write report writer duration to the log file. + * + * @param t1 time when the test suite has been started + * @param t2 time when the test suite was completed + */ + private void printDuration(long t1, long t2) + { + this.log.logSet("duration", Long.valueOf(t2-t1)); //$NON-NLS-1$ + } + + private void doReport(String[] args) + { + long t1 = System.currentTimeMillis(); + this.log = new Log(this.getClass().getName(), true); + this.log.logBegin("report"); //$NON-NLS-1$ + try + { + this.configuration = new ReporterConfiguration(args, this.log); + Map testResults = readAllTestResults(); + } + catch (ConfigurationException e) + { + e.printStackTrace(); + } + finally + { + long t2 = System.currentTimeMillis(); + this.log.logEnd("report"); //$NON-NLS-1$ + printDuration(t1, t2); + } + } + + private Map readAllTestResults() + { + Map results = new HashMap(); + File inputDir = this.configuration.getInputPath(); + + if (inputDir == null || !inputDir.isDirectory()) + { + return results; + } + for (String resultDir : inputDir.list()) + { + System.out.println("***" + resultDir); + } + return results; + } + + /** + * @param args + */ + public static void main(String[] args) + { + new Reporter().doReport(args); + } + + +} diff -r 6a72cc4964cc -r 8ab660713623 src/org/gfxtest/reporter/ReporterConfiguration.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/reporter/ReporterConfiguration.java Mon Sep 06 16:56:33 2010 +0200 @@ -0,0 +1,98 @@ +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.reporter; + +import java.io.File; +import java.util.Map; + +import org.gfxtest.common.Configuration; +import org.gfxtest.common.ConfigurationException; +import org.gfxtest.framework.Log; + +/** + * Configuration for graphics tests reporter. + * + * @author Pavel Tisnovsky + */ +public class ReporterConfiguration extends Configuration +{ + /** + * Path to reports generated by Lupic.jar. + */ + private File inputPath; + + /** + * Path to generated output files. + */ + private File outputPath; + + public ReporterConfiguration(String[] args, Log log) throws ConfigurationException + { + super(args, log); + } + + @SuppressWarnings("nls") + @Override + protected void printParameters() + { + this.log.logSet("input path", this.inputPath); + this.log.logSet("output path", this.outputPath); + } + From ptisnovs at redhat.com Mon Sep 6 08:21:18 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Mon, 06 Sep 2010 17:21:18 +0200 Subject: [1.7 & 1.8 BRANCH APPROVAL]: Backport 6539464: Math functions produce inconsistent results In-Reply-To: <20100906141340.GB26788@bree.middle-earth.co.uk> References: <20100903232535.GD11124@rivendell.middle-earth.co.uk> <20100903235611.GF11124@rivendell.middle-earth.co.uk> <4C84A354.20806@redhat.com> <20100906141340.GB26788@bree.middle-earth.co.uk> Message-ID: <4C8506EE.4090802@redhat.com> Dr Andrew John Hughes wrote: > On 10:16 Mon 06 Sep , Pavel Tisnovsky wrote: >> Dr Andrew John Hughes wrote: >>> On 00:25 Sat 04 Sep , Dr Andrew John Hughes wrote: >>>> Applies to hs14 only. hs16 (1.7 & 1.8 --with-hotspot-build=hs16) and hs17 (1.9, HEAD) have this fix. >>>> >>>> changeset: 1981:0b63ff75d44a >>>> tag: tip >>>> user: Andrew John Hughes >>>> date: Sat Sep 04 00:21:46 2010 +0100 >>>> files: ChangeLog Makefile.am NEWS patches/hotspot/original/6539464-consistent-math.patch >>>> description: >>>> S6539464, RH500077: Ensure Math functions return consistent results. >>>> >>>> 2010-09-03 Andrew John Hughes >>>> >>>> * Makefile.am: Add new patch. >>>> * patches/hotspot/original/6539464-consistent-math.patch: >>>> Backport fix for S6539464 which ensures Math functions >>>> return consistent results. >>>> * NEWS: Updated. >>>> >>>> Ok for 1.7 & 1.8? >> Hi Andrew, >> >> should I run our usual tests before you push this changes to 1.7 and >> 1.8? (just to be sure :-) >> > > I take it you mean testing them with this patch applied locally? Yeah that's precisely what I intended. > Yes, > that sounds like a good idea. I've attached the patches for each version. Thank you very much, I just started testing patched 1.7 and 1.8 on RHEL5 (where we are supporting 1.7.4) and on Fedoras. > >> Pavel >> >> >>>> -- >>>> Andrew :) >>>> >>>> Free Java Software Engineer >>>> Red Hat, Inc. (http://www.redhat.com) >>>> >>>> Support Free Java! >>>> Contribute to GNU Classpath and the OpenJDK >>>> http://www.gnu.org/software/classpath >>>> http://openjdk.java.net >>>> PGP Key: 94EFD9D8 (http://subkeys.pgp.net) >>>> Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 >>> The patch is simply http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/819880572f09. No changes. > From ptisnovs at icedtea.classpath.org Mon Sep 6 09:19:54 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Mon, 06 Sep 2010 16:19:54 +0000 Subject: /hg/gfx-test: Added new test for checking antialiased lines rend... Message-ID: changeset 44b7fc94cdca in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=44b7fc94cdca author: Pavel Tisnovsky date: Mon Sep 06 18:20:13 2010 +0200 Added new test for checking antialiased lines rendering. diffstat: 4 files changed, 148 insertions(+) Makefile | 2 src/org/gfxtest/framework/TestImage.java | 5 src/org/gfxtest/framework/annotations/RenderStyles.java | 1 src/org/gfxtest/testsuites/AALines.java | 140 +++++++++++++++ diffs (185 lines): diff -r 8ab660713623 -r 44b7fc94cdca Makefile --- a/Makefile Mon Sep 06 16:56:33 2010 +0200 +++ b/Makefile Mon Sep 06 18:20:13 2010 +0200 @@ -78,6 +78,7 @@ FRAMEWORK_CLASSES = \ $(CLASSES)/$(FRAMEWORK_DIR)/Log.class TESTSUITE_CLASSES = \ + $(CLASSES)/$(TESTSUITE_DIR)/AALines.class \ $(CLASSES)/$(TESTSUITE_DIR)/BlankImage.class \ $(CLASSES)/$(TESTSUITE_DIR)/NormalArcs.class \ $(CLASSES)/$(TESTSUITE_DIR)/NormalLines.class \ @@ -104,6 +105,7 @@ TESTSUITE_CLASSES = \ $(CLASSES)/$(TESTSUITE_DIR)/DashedRectangles.class COMPARE_RESULTS = \ + $(RESULTS)/AALines \ $(RESULTS)/BlankImage \ $(RESULTS)/NormalArcs \ $(RESULTS)/NormalLines \ diff -r 8ab660713623 -r 44b7fc94cdca src/org/gfxtest/framework/TestImage.java --- a/src/org/gfxtest/framework/TestImage.java Mon Sep 06 16:56:33 2010 +0200 +++ b/src/org/gfxtest/framework/TestImage.java Mon Sep 06 18:20:13 2010 +0200 @@ -172,4 +172,9 @@ public class TestImage { this.image.setRGB(x, y, rgb); } + + public BufferedImage getImage() + { + return this.image; + } } diff -r 8ab660713623 -r 44b7fc94cdca src/org/gfxtest/framework/annotations/RenderStyles.java --- a/src/org/gfxtest/framework/annotations/RenderStyles.java Mon Sep 06 16:56:33 2010 +0200 +++ b/src/org/gfxtest/framework/annotations/RenderStyles.java Mon Sep 06 18:20:13 2010 +0200 @@ -46,4 +46,5 @@ public enum RenderStyles NORMAL, DASH, FILL, + NORMAL_AA, } diff -r 8ab660713623 -r 44b7fc94cdca src/org/gfxtest/testsuites/AALines.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/testsuites/AALines.java Mon Sep 06 18:20:13 2010 +0200 @@ -0,0 +1,140 @@ +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.testsuites; + +import java.awt.Color; +import java.awt.Graphics2D; +import java.awt.RenderingHints; +import java.awt.image.BufferedImage; + +import org.gfxtest.framework.*; +import org.gfxtest.framework.annotations.*; + + at TestType(TestTypes.RENDER_TEST) + at GraphicsPrimitive(GraphicsPrimitives.LINE) + at RenderStyle(RenderStyles.NORMAL_AA) + at Transformation(Transformations.NONE) + at Zoom(16) +public class AALines extends GfxTest +{ + private static void drawLine(BufferedImage img, Graphics2D g, int x1, int y1, int x2, int y2, Color color) + { + g.setColor(color); + g.drawLine(x1, y1, x2, y2); + img.setRGB(x1, y1, 0xff0000); + img.setRGB(x2, y2, 0xff0000); + } + + private void drawHorizontalJaggedLines(BufferedImage image, Graphics2D graphics) + { + drawLine(image, graphics, 3, 3, 36, 4, Color.BLACK); + drawLine(image, graphics, 3, 9, 36, 10, Color.YELLOW); + drawLine(image, graphics, 3, 15, 36, 16, Color.MAGENTA); + drawLine(image, graphics, 3, 21, 36, 20, Color.BLUE); + drawLine(image, graphics, 3, 26, 36, 25, Color.GRAY); + } + + private void drawVerticalJaggedLines(BufferedImage image, Graphics2D graphics) + { + drawLine(image, graphics, 3, 3, 4, 26, Color.BLACK); + drawLine(image, graphics, 11, 3, 12, 26, Color.YELLOW); + drawLine(image, graphics, 19, 3, 20, 26, Color.MAGENTA); + drawLine(image, graphics, 27, 3, 28, 26, Color.BLUE); + drawLine(image, graphics, 35, 3, 34, 26, Color.GRAY); + } + + private void setAA1(Graphics2D graphics) + { + graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); + } + + private void setAA2(Graphics2D graphics) + { + graphics.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); + graphics.setRenderingHint(RenderingHints.KEY_FRACTIONALMETRICS, RenderingHints.VALUE_FRACTIONALMETRICS_ON); + } + + public TestResult test0(TestImage image, Graphics2D graphics) + { + drawVerticalJaggedLines(image.getImage(), graphics); + return TestResult.PASSED; + } + + public TestResult test1(TestImage image, Graphics2D graphics) + { + drawHorizontalJaggedLines(image.getImage(), graphics); + return TestResult.PASSED; + } + + public TestResult test2(TestImage image, Graphics2D graphics) + { + setAA1(graphics); + drawVerticalJaggedLines(image.getImage(), graphics); + return TestResult.PASSED; + } + + public TestResult test3(TestImage image, Graphics2D graphics) + { + setAA1(graphics); + drawHorizontalJaggedLines(image.getImage(), graphics); + return TestResult.PASSED; + } + + public TestResult test4(TestImage image, Graphics2D graphics) + { + setAA2(graphics); + drawVerticalJaggedLines(image.getImage(), graphics); + return TestResult.PASSED; + } + + public TestResult test5(TestImage image, Graphics2D graphics) + { + setAA2(graphics); + drawHorizontalJaggedLines(image.getImage(), graphics); + return TestResult.PASSED; + } + + public static void main(String[] args) + { + new AALines().runTestSuite(args); + } + +} From doko at icedtea.classpath.org Mon Sep 6 11:53:29 2010 From: doko at icedtea.classpath.org (doko at icedtea.classpath.org) Date: Mon, 06 Sep 2010 18:53:29 +0000 Subject: /hg/release/icedtea6-1.7: 2010-08-27 Andrew John Hughes changeset b24b8735bb51 in /hg/release/icedtea6-1.7 details: http://icedtea.classpath.org/hg/release/icedtea6-1.7?cmd=changeset;node=b24b8735bb51 author: doko at ubuntu.com date: Mon Sep 06 20:51:16 2010 +0200 2010-08-27 Andrew John Hughes Matthias Klose PR398, S6951319: * Makefile.am: Add new patch. * patches/hotspot/hs16/6951319-sparc_build_fixes.patch: Backport of 6951319 to fix build issues on GNU/Linux+SPARC. * NEWS: Updated. diffstat: 4 files changed, 594 insertions(+), 1 deletion(-) ChangeLog | 9 Makefile.am | 3 NEWS | 1 patches/hotspot/hs16/6951319-sparc_build_fixes.patch | 582 ++++++++++++++++++ diffs (truncated from 626 to 500 lines): diff -r e508d944ca9d -r b24b8735bb51 ChangeLog --- a/ChangeLog Fri Aug 27 14:46:25 2010 -0400 +++ b/ChangeLog Mon Sep 06 20:51:16 2010 +0200 @@ -1,3 +1,12 @@ 2010-08-27 Deepak Bhole + Matthias Klose + + PR398, S6951319: + * Makefile.am: Add new patch. + * patches/hotspot/hs16/6951319-sparc_build_fixes.patch: + Backport of 6951319 to fix build issues on GNU/Linux+SPARC. + * NEWS: Updated. + 2010-08-27 Deepak Bhole Fixes rhbz#560193 diff -r e508d944ca9d -r b24b8735bb51 Makefile.am --- a/Makefile.am Fri Aug 27 14:46:25 2010 -0400 +++ b/Makefile.am Mon Sep 06 20:51:16 2010 +0200 @@ -396,7 +396,8 @@ if WITH_ALT_HSBUILD if WITH_ALT_HSBUILD ICEDTEA_PATCHES += patches/hotspot/$(HSBUILD)/openjdk-6886353-ignore_deoptimizealot.patch \ patches/hotspot/$(HSBUILD)/zero.patch \ - patches/hotspot/$(HSBUILD)/shark.patch + patches/hotspot/$(HSBUILD)/shark.patch \ + patches/hotspot/$(HSBUILD)/6951319-sparc_build_fixes.patch else ICEDTEA_PATCHES += patches/hotspot/original/icedtea-6778662-lib64.patch \ patches/hotspot/original/icedtea-6778657-f2i-overflow.patch \ diff -r e508d944ca9d -r b24b8735bb51 NEWS --- a/NEWS Fri Aug 27 14:46:25 2010 -0400 +++ b/NEWS Mon Sep 06 20:51:16 2010 +0200 @@ -4,6 +4,7 @@ New in release 1.7.5 (XXXX-XX-XX): - G244901: Skip test_gamma on hardened (PaX-enabled) kernels - G266295: Provide font configuration for Gentoo. - Provide font configuration for RHEL 6. + - S6951319: enable solaris builds using Sun Studio 12 update 1 (fixes PR398). * NetX - Fix browser command in BasicService.showDocument(URL) - Run programs that inherit main(String[]) in their main-class diff -r e508d944ca9d -r b24b8735bb51 patches/hotspot/hs16/6951319-sparc_build_fixes.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/hs16/6951319-sparc_build_fixes.patch Mon Sep 06 20:51:16 2010 +0200 @@ -0,0 +1,582 @@ +# HG changeset patch +# User jcoomes +# Date 1282936351 -3600 +# Node ID 379b95785a1faacbe5261b7517159718e139e57b +# Parent 13f94cc872531ff5b81d1551edf7145f73864c74 +6951319: enable solaris builds using Sun Studio 12 update 1 +Reviewed-by: kamg, ysr, dholmes, johnc + +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/amd64.make +--- openjdk.orig/hotspot/make/solaris/makefiles/amd64.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/amd64.make Fri Aug 27 20:12:31 2010 +0100 +@@ -33,14 +33,8 @@ + # + ifeq ("${Platform_compiler}", "sparcWorks") + +-# Temporary until C++ compiler is fixed +- +-# _lwp_create_interpose must have a frame +-OPT_CFLAGS/os_solaris_x86_64.o = -xO1 +- + # Temporary until SS10 C++ compiler is fixed + OPT_CFLAGS/generateOptoStub.o = -xO2 +-OPT_CFLAGS/thread.o = -xO2 + + else + +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/fastdebug.make +--- openjdk.orig/hotspot/make/solaris/makefiles/fastdebug.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/fastdebug.make Fri Aug 27 20:12:31 2010 +0100 +@@ -36,15 +36,15 @@ + ifeq ("${Platform_compiler}", "sparcWorks") + OPT_CFLAGS/SLOWER = -xO2 + +-# Problem with SS12 compiler, dtrace doesn't like the .o files (bug 6693876) + ifeq ($(COMPILER_REV_NUMERIC), 509) +- # To avoid jvm98 crash +- OPT_CFLAGS/instanceKlass.o = $(OPT_CFLAGS/SLOWER) +- # Not clear this workaround could be skipped in some cases. +- OPT_CFLAGS/vmGCOperations.o = $(OPT_CFLAGS/SLOWER) +- OPT_CFLAGS/java.o = $(OPT_CFLAGS/SLOWER) +- OPT_CFLAGS/jni.o = $(OPT_CFLAGS/SLOWER) +-endif ++# To avoid jvm98 crash ++OPT_CFLAGS/instanceKlass.o = $(OPT_CFLAGS/SLOWER) ++endif # COMPILER_NUMERIC_REV == 509 ++ ++ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1) ++# dtrace cannot handle tail call optimization (6672627, 6693876) ++OPT_CFLAGS/jni.o = $(OPT_CFLAGS/DEFAULT) $(OPT_CCFLAGS/NO_TAIL_CALL_OPT) ++endif # COMPILER_NUMERIC_REV >= 509 + + ifeq ($(COMPILER_REV_NUMERIC), 505) + # CC 5.5 has bug 4908364 with -xO4 (Fixed in 5.6) +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/i486.make +--- openjdk.orig/hotspot/make/solaris/makefiles/i486.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/i486.make Fri Aug 27 20:12:31 2010 +0100 +@@ -33,25 +33,6 @@ + # Special case flags for compilers and compiler versions on i486. + # + ifeq ("${Platform_compiler}", "sparcWorks") +- +-# _lwp_create_interpose must have a frame +-OPT_CFLAGS/os_solaris_x86.o = -xO1 +-else +- +-ifeq ("${Platform_compiler}", "gcc") +-# gcc +-# _lwp_create_interpose must have a frame +-OPT_CFLAGS/os_solaris_x86.o = -fno-omit-frame-pointer +-# +-else +-# error +-_JUNK2_ := $(shell echo >&2 \ +- "*** ERROR: this compiler is not yet supported by this code base!") +- @exit 1 +-endif +-endif +- +-ifeq ("${Platform_compiler}", "sparcWorks") + # ILD is gone as of SS11 (5.8), not supported in SS10 (5.7) + ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \< 507), 1) + # +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/optimized.make +--- openjdk.orig/hotspot/make/solaris/makefiles/optimized.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/optimized.make Fri Aug 27 20:12:31 2010 +0100 +@@ -32,13 +32,10 @@ + # (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files) + ifeq ("${Platform_compiler}", "sparcWorks") + +-# Problem with SS12 compiler, dtrace doesn't like the .o files (bug 6693876) +-ifeq ($(COMPILER_REV_NUMERIC),509) +- # Not clear this workaround could be skipped in some cases. +- OPT_CFLAGS/vmGCOperations.o = $(OPT_CFLAGS/SLOWER) -g +- OPT_CFLAGS/java.o = $(OPT_CFLAGS/SLOWER) -g +- OPT_CFLAGS/jni.o = $(OPT_CFLAGS/SLOWER) -g +-endif ++ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1) ++# dtrace cannot handle tail call optimization (6672627, 6693876) ++OPT_CFLAGS/jni.o = $(OPT_CFLAGS/DEFAULT) $(OPT_CCFLAGS/NO_TAIL_CALL_OPT) ++endif # COMPILER_NUMERIC_REV >= 509 + + # Workaround SS11 bug 6345274 (all platforms) (Fixed in SS11 patch and SS12) + ifeq ($(COMPILER_REV_NUMERIC),508) +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/product.make +--- openjdk.orig/hotspot/make/solaris/makefiles/product.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/product.make Fri Aug 27 20:12:31 2010 +0100 +@@ -40,13 +40,10 @@ + # (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files) + ifeq ("${Platform_compiler}", "sparcWorks") + +-# Problem with SS12 compiler, dtrace doesn't like the .o files (bug 6693876) +-ifeq ($(COMPILER_REV_NUMERIC),509) +- # Not clear this workaround could be skipped in some cases. +- OPT_CFLAGS/vmGCOperations.o = $(OPT_CFLAGS/SLOWER) -g +- OPT_CFLAGS/java.o = $(OPT_CFLAGS/SLOWER) -g +- OPT_CFLAGS/jni.o = $(OPT_CFLAGS/SLOWER) -g +-endif ++ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1) ++# dtrace cannot handle tail call optimization (6672627, 6693876) ++OPT_CFLAGS/jni.o = $(OPT_CFLAGS/DEFAULT) $(OPT_CCFLAGS/NO_TAIL_CALL_OPT) ++endif # COMPILER_NUMERIC_REV >= 509 + + # Workaround SS11 bug 6345274 (all platforms) (Fixed in SS11 patch and SS12) + ifeq ($(COMPILER_REV_NUMERIC),508) +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/sparcWorks.make +--- openjdk.orig/hotspot/make/solaris/makefiles/sparcWorks.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/sparcWorks.make Fri Aug 27 20:12:31 2010 +0100 +@@ -48,27 +48,33 @@ + # Pick which compiler is validated + ifeq ($(JRE_RELEASE_VER),1.6.0) + # Validated compiler for JDK6 is SS11 (5.8) +- VALIDATED_COMPILER_REV := 5.8 +- VALIDATED_C_COMPILER_REV := 5.8 ++ VALIDATED_COMPILER_REVS := 5.8 ++ VALIDATED_C_COMPILER_REVS := 5.8 + else +- # Validated compiler for JDK7 is SS12 (5.9) +- VALIDATED_COMPILER_REV := 5.9 +- VALIDATED_C_COMPILER_REV := 5.9 ++ # Validated compilers for JDK7 are SS12 (5.9) or SS12 update 1 (5.10) ++ VALIDATED_COMPILER_REVS := 5.9 5.10 ++ VALIDATED_C_COMPILER_REVS := 5.9 5.10 + endif + +-# Warning messages about not using the above validated version +-ENFORCE_COMPILER_REV${ENFORCE_COMPILER_REV} := ${VALIDATED_COMPILER_REV} +-ifneq (${COMPILER_REV},${ENFORCE_COMPILER_REV}) +-dummy_target_to_enforce_compiler_rev:=\ +-$(shell echo >&2 WARNING: You are using CC version ${COMPILER_REV} \ +-and should be using version ${ENFORCE_COMPILER_REV}. Set ENFORCE_COMPILER_REV=${COMPILER_REV} to avoid this warning.) ++# Warning messages about not using the above validated versions ++ENFORCE_COMPILER_REV${ENFORCE_COMPILER_REV} := $(strip ${VALIDATED_COMPILER_REVS}) ++ifeq ($(filter ${ENFORCE_COMPILER_REV},${COMPILER_REV}),) ++PRINTABLE_CC_REVS := $(subst $(shell echo ' '), or ,${ENFORCE_COMPILER_REV}) ++dummy_var_to_enforce_compiler_rev := $(shell \ ++ echo >&2 WARNING: You are using CC version ${COMPILER_REV} and \ ++ should be using version ${PRINTABLE_CC_REVS}.; \ ++ echo >&2 Set ENFORCE_COMPILER_REV=${COMPILER_REV} to avoid this \ ++ warning.) + endif + +-ENFORCE_C_COMPILER_REV${ENFORCE_C_COMPILER_REV} := ${VALIDATED_C_COMPILER_REV} +-ifneq (${C_COMPILER_REV},${ENFORCE_C_COMPILER_REV}) +-dummy_target_to_enforce_c_compiler_rev:=\ +-$(shell echo >&2 WARNING: You are using cc version ${C_COMPILER_REV} \ +-and should be using version ${ENFORCE_C_COMPILER_REV}. Set ENFORCE_C_COMPILER_REV=${C_COMPILER_REV} to avoid this warning.) ++ENFORCE_C_COMPILER_REV${ENFORCE_C_COMPILER_REV} := $(strip ${VALIDATED_C_COMPILER_REVS}) ++ifeq ($(filter ${ENFORCE_C_COMPILER_REV},${C_COMPILER_REV}),) ++PRINTABLE_C_REVS := $(subst $(shell echo ' '), or ,${ENFORCE_C_COMPILER_REV}) ++dummy_var_to_enforce_c_compiler_rev := $(shell \ ++ echo >&2 WARNING: You are using cc version ${C_COMPILER_REV} and \ ++ should be using version ${PRINTABLE_C_REVS}.; \ ++ echo >&2 Set ENFORCE_C_COMPILER_REV=${C_COMPILER_REV} to avoid this \ ++ warning.) + endif + + COMPILER_REV_NUMERIC := $(shell echo $(COMPILER_REV) | awk -F. '{ print $$1 * 100 + $$2 }') +@@ -139,6 +145,13 @@ + OPT_CFLAGS/O2=-xO2 + OPT_CFLAGS/NOOPT=-xO1 + ++ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1) ++ifeq ($(Platform_arch), x86) ++OPT_CFLAGS/NO_TAIL_CALL_OPT = -Wu,-O~yz ++OPT_CCFLAGS/NO_TAIL_CALL_OPT = -Qoption ube -O~yz ++endif # Platform_arch == x86 ++endif # COMPILER_REV_NUMERIC >= 509 ++ + ################################################# + # Begin current (>=5.6) Forte compiler options # + ################################################# +@@ -181,10 +194,7 @@ + + ifeq ("${Platform_arch_model}", "x86_32") + +-OPT_CFLAGS=-xtarget=pentium $(EXTRA_OPT_CFLAGS) +- +-# UBE (CC 5.5) has bug 4923569 with -xO4 +-OPT_CFLAGS+=-xO3 ++OPT_CFLAGS=-xtarget=pentium -xO4 $(EXTRA_OPT_CFLAGS) + + endif # 32bit x86 + +@@ -461,7 +471,7 @@ + # The -g0 setting allows the C++ frontend to inline, which is a big win. + + # Special global options for SS12 +-ifeq ($(COMPILER_REV_NUMERIC),509) ++ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1) + # There appears to be multiple issues with the new Dwarf2 debug format, so + # we tell the compiler to use the older 'stabs' debug format all the time. + # Note that this needs to be used in optimized compiles too to be 100%. +diff -r 13f94cc87253 -r 379b95785a1f src/cpu/sparc/vm/assembler_sparc.hpp +--- openjdk.orig/hotspot/src/cpu/sparc/vm/assembler_sparc.hpp Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/src/cpu/sparc/vm/assembler_sparc.hpp Fri Aug 27 20:12:31 2010 +0100 +@@ -2239,7 +2239,7 @@ + AddressLiteral constant_oop_address(jobject obj); // find_index + inline void set_oop (jobject obj, Register d); // uses allocate_oop_address + inline void set_oop_constant (jobject obj, Register d); // uses constant_oop_address +- inline void set_oop (AddressLiteral& obj_addr, Register d); // same as load_address ++ inline void set_oop (const AddressLiteral& obj_addr, Register d); // same as load_address + + void set_narrow_oop( jobject obj, Register d ); + +diff -r 13f94cc87253 -r 379b95785a1f src/cpu/sparc/vm/assembler_sparc.inline.hpp +--- openjdk.orig/hotspot/src/cpu/sparc/vm/assembler_sparc.inline.hpp Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/src/cpu/sparc/vm/assembler_sparc.inline.hpp Fri Aug 27 20:12:31 2010 +0100 +@@ -707,7 +707,7 @@ + } + + +-inline void MacroAssembler::set_oop(AddressLiteral& obj_addr, Register d) { ++inline void MacroAssembler::set_oop(const AddressLiteral& obj_addr, Register d) { + assert(obj_addr.rspec().type() == relocInfo::oop_type, "must be an oop reloc"); + set(obj_addr, d); + } +diff -r 13f94cc87253 -r 379b95785a1f src/os_cpu/solaris_x86/vm/atomic_solaris_x86.inline.hpp +--- openjdk.orig/hotspot/src/os_cpu/solaris_x86/vm/atomic_solaris_x86.inline.hpp Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/src/os_cpu/solaris_x86/vm/atomic_solaris_x86.inline.hpp Fri Aug 27 20:12:31 2010 +0100 +@@ -47,40 +47,56 @@ + // For Sun Studio - implementation is in solaris_x86_[32/64].il. + // For gcc - implementation is just below. + +-extern "C" jint _Atomic_add(jint add_value, volatile jint* dest, int mp); +-extern "C" jint _Atomic_xchg(jint exchange_value, volatile jint* dest); +-extern "C" jint _Atomic_cmpxchg(jint exchange_value, volatile jint* dest, jint compare_value, int mp); +-extern "C" jlong _Atomic_cmpxchg_long(jlong exchange_value, volatile jlong* dest, jlong compare_value, int mp); ++// The lock prefix can be omitted for certain instructions on uniprocessors; to ++// facilitate this, os::is_MP() is passed as an additional argument. 64-bit ++// processors are assumed to be multi-threaded and/or multi-core, so the extra ++// argument is unnecessary. ++#ifndef _LP64 ++#define IS_MP_DECL() , int is_mp ++#define IS_MP_ARG() , (int) os::is_MP() ++#else ++#define IS_MP_DECL() ++#define IS_MP_ARG() ++#endif // _LP64 ++ ++extern "C" { ++ jint _Atomic_add(jint add_value, volatile jint* dest IS_MP_DECL()); ++ jint _Atomic_xchg(jint exchange_value, volatile jint* dest); ++ jint _Atomic_cmpxchg(jint exchange_value, volatile jint* dest, ++ jint compare_value IS_MP_DECL()); ++ jlong _Atomic_cmpxchg_long(jlong exchange_value, volatile jlong* dest, ++ jlong compare_value IS_MP_DECL()); ++} + + inline jint Atomic::add (jint add_value, volatile jint* dest) { +- return _Atomic_add(add_value, dest, (int) os::is_MP()); ++ return _Atomic_add(add_value, dest IS_MP_ARG()); ++} ++ ++inline jint Atomic::xchg (jint exchange_value, volatile jint* dest) { ++ return _Atomic_xchg(exchange_value, dest); + } + + inline jint Atomic::cmpxchg (jint exchange_value, volatile jint* dest, jint compare_value) { +- return _Atomic_cmpxchg(exchange_value, dest, compare_value, (int) os::is_MP()); ++ return _Atomic_cmpxchg(exchange_value, dest, compare_value IS_MP_ARG()); + } + + inline jlong Atomic::cmpxchg (jlong exchange_value, volatile jlong* dest, jlong compare_value) { +- return _Atomic_cmpxchg_long(exchange_value, dest, compare_value, (int) os::is_MP()); ++ return _Atomic_cmpxchg_long(exchange_value, dest, compare_value IS_MP_ARG()); + } + + + #ifdef AMD64 + inline void Atomic::store (jlong store_value, jlong* dest) { *dest = store_value; } + inline void Atomic::store (jlong store_value, volatile jlong* dest) { *dest = store_value; } +-extern "C" jlong _Atomic_add_long(jlong add_value, volatile jlong* dest, int mp); ++extern "C" jlong _Atomic_add_long(jlong add_value, volatile jlong* dest); + extern "C" jlong _Atomic_xchg_long(jlong exchange_value, volatile jlong* dest); + + inline intptr_t Atomic::add_ptr(intptr_t add_value, volatile intptr_t* dest) { +- return (intptr_t)_Atomic_add_long((jlong)add_value, (volatile jlong*)dest, (int) os::is_MP()); ++ return (intptr_t)_Atomic_add_long((jlong)add_value, (volatile jlong*)dest); + } + + inline void* Atomic::add_ptr(intptr_t add_value, volatile void* dest) { +- return (void*)_Atomic_add_long((jlong)add_value, (volatile jlong*)dest, (int) os::is_MP()); +-} +- +-inline jint Atomic::xchg (jint exchange_value, volatile jint* dest) { +- return _Atomic_xchg(exchange_value, dest); ++ return (void*)_Atomic_add_long((jlong)add_value, (volatile jlong*)dest); + } + + inline intptr_t Atomic::xchg_ptr(intptr_t exchange_value, volatile intptr_t* dest) { +@@ -92,11 +108,11 @@ + } + + inline intptr_t Atomic::cmpxchg_ptr(intptr_t exchange_value, volatile intptr_t* dest, intptr_t compare_value) { +- return (intptr_t)_Atomic_cmpxchg_long((jlong)exchange_value, (volatile jlong*)dest, (jlong)compare_value, (int) os::is_MP()); ++ return (intptr_t)_Atomic_cmpxchg_long((jlong)exchange_value, (volatile jlong*)dest, (jlong)compare_value); + } + + inline void* Atomic::cmpxchg_ptr(void* exchange_value, volatile void* dest, void* compare_value) { +- return (void*)_Atomic_cmpxchg_long((jlong)exchange_value, (volatile jlong*)dest, (jlong)compare_value, (int) os::is_MP()); ++ return (void*)_Atomic_cmpxchg_long((jlong)exchange_value, (volatile jlong*)dest, (jlong)compare_value); + } + + inline jlong Atomic::load(volatile jlong* src) { return *src; } +@@ -111,13 +127,6 @@ + return (void*)add((jint)add_value, (volatile jint*)dest); + } + +-inline jint Atomic::xchg (jint exchange_value, volatile jint* dest) { +- // We noticed a CC5.5 bug (4894807), so keep calling the stub just to be safe. +- // Will use the inline template version after 4894807 is fixed. +- // return _Atomic_xchg(exchange_value, dest); +- return (*os::atomic_xchg_func)(exchange_value, dest); +-} +- + inline intptr_t Atomic::xchg_ptr(intptr_t exchange_value, volatile intptr_t* dest) { + return (intptr_t)xchg((jint)exchange_value, (volatile jint*)dest); + } +@@ -179,9 +188,6 @@ + #endif // AMD64 + + inline jint _Atomic_xchg(jint exchange_value, volatile jint* dest) { +- +- // 32bit version originally did nothing!! +- + __asm__ __volatile__ ("xchgl (%2),%0" + : "=r" (exchange_value) + : "0" (exchange_value), "r" (dest) +diff -r 13f94cc87253 -r 379b95785a1f src/os_cpu/solaris_x86/vm/solaris_x86_32.il +--- openjdk.orig/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.il Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.il Fri Aug 27 20:12:31 2010 +0100 +@@ -50,10 +50,12 @@ + movl 4(%esp), %edx // dest + movl %eax, %ecx + cmpl $0, 8(%esp) // MP test +- je 1f +- lock +-1: xaddl %eax, (%edx) +- addl %ecx, %eax ++ jne 1f ++ xaddl %eax, (%edx) ++ jmp 2f ++1: lock ++ xaddl %eax, (%edx) ++2: addl %ecx, %eax + .end + + // Support for jint Atomic::xchg(jint exchange_value, volatile jint* dest). +@@ -72,9 +74,12 @@ + movl 0(%esp), %ecx // exchange_value + movl 4(%esp), %edx // dest + cmp $0, 12(%esp) // MP test +- je 1f +- lock +-1: cmpxchgl %ecx, (%edx) ++ jne 1f ++ cmpxchgl %ecx, (%edx) ++ jmp 2f ++1: lock ++ cmpxchgl %ecx, (%edx) ++2: + .end + + // Support for jlong Atomic::cmpxchg(jlong exchange_value, +@@ -90,10 +95,12 @@ + movl 8(%esp), %ebx // exchange_value (low) + movl 12(%esp), %ecx // exchange_high (high) + cmp $0, 28(%esp) // MP test +- je 1f +- lock +-1: cmpxchg8b (%edi) +- popl %edi ++ jne 1f ++ cmpxchg8b (%edi) ++ jmp 2f ++1: lock ++ cmpxchg8b (%edi) ++2: popl %edi + popl %ebx + .end + +diff -r 13f94cc87253 -r 379b95785a1f src/os_cpu/solaris_x86/vm/solaris_x86_64.il +--- openjdk.orig/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.il Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.il Fri Aug 27 20:12:31 2010 +0100 +@@ -37,24 +37,18 @@ + .end + + // Support for jint Atomic::add(jint add_value, volatile jint* dest) +- // An additional bool (os::is_MP()) is passed as the last argument. +- .inline _Atomic_add,3 ++ .inline _Atomic_add,2 + movl %edi, %eax // save add_value for return +- testl %edx, %edx // MP test +- je 1f + lock +-1: xaddl %edi, (%rsi) ++ xaddl %edi, (%rsi) + addl %edi, %eax + .end + + // Support for jlong Atomic::add(jlong add_value, volatile jlong* dest) +- // An additional bool (os::is_MP()) is passed as the last argument. +- .inline _Atomic_add_long,3 ++ .inline _Atomic_add_long,2 + movq %rdi, %rax // save add_value for return +- testq %rdx, %rdx // MP test +- je 1f + lock +-1: xaddq %rdi, (%rsi) ++ xaddq %rdi, (%rsi) + addq %rdi, %rax + .end + +@@ -73,25 +67,19 @@ + // Support for jint Atomic::cmpxchg(jint exchange_value, + // volatile jint *dest, + // jint compare_value) +- // An additional bool (os::is_MP()) is passed as the last argument. +- .inline _Atomic_cmpxchg,4 ++ .inline _Atomic_cmpxchg,3 + movl %edx, %eax // compare_value +- testl %ecx, %ecx // MP test +- je 1f + lock +-1: cmpxchgl %edi, (%rsi) ++ cmpxchgl %edi, (%rsi) + .end + + // Support for jlong Atomic::cmpxchg(jlong exchange_value, + // volatile jlong* dest, + // jlong compare_value) +- // An additional bool (os::is_MP()) is passed as the last argument. +- .inline _Atomic_cmpxchg_long,6 ++ .inline _Atomic_cmpxchg_long,3 + movq %rdx, %rax // compare_value +- testq %rcx, %rcx // MP test From andrew at icedtea.classpath.org Mon Sep 6 15:52:24 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Mon, 06 Sep 2010 22:52:24 +0000 Subject: /hg/icedtea: Bump to build 106. Message-ID: changeset a58071a38743 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=a58071a38743 author: Andrew John Hughes date: Mon Sep 06 23:52:04 2010 +0100 Bump to build 106. 2010-09-06 Andrew John Hughes Bump to b106. * ergo.c.in, * jvm.cfg.in: Removed. * patches/boot/icedtea-hotspot-default.patch: Split into test_gamma.patch and tools.jar.patch. * patches/hotspot/default/icedtea-shark-build.patch, * patches/hotspot/default/icedtea-shark.patch: Dropped, Shark now upstream. * patches/icedtea-doc-headers.patch: Dropped, documentation licensing has changed completely due to Sun->Oracle changes. * patches/icedtea-shark-build.patch: Dropped. * patches/xrender/icedtea-001.patch, * patches/xrender/icedtea-002.patch, * patches/xrender/icedtea-003.patch, * patches/xrender/icedtea-004.patch, * patches/xrender/icedtea-005.patch, * patches/xrender/icedtea-006.patch, * patches/xrender/icedtea-007.patch, * patches/xrender/icedtea-008.patch, * patches/xrender/icedtea-009.patch: Dropped, XRender extension now upstream. * ports/hotspot/make/linux/makefiles/shark.make, * ports/hotspot/make/linux/platform_zero.in, * ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp, * ports/hotspot/src/share/vm/includeDB_shark, * ports/hotspot/src/share/vm/shark/llvmHeaders.hpp, * ports/hotspot/src/share/vm/shark/llvmValue.hpp, * ports/hotspot/src/share/vm/shark/sharkBlock.cpp, * ports/hotspot/src/share/vm/shark/sharkBlock.hpp, * ports/hotspot/src/share/vm/shark/sharkBuilder.cpp, * ports/hotspot/src/share/vm/shark/sharkBuilder.hpp, * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, * ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp, * ports/hotspot/src/share/vm/shark/sharkCompiler.cpp, * ports/hotspot/src/share/vm/shark/sharkCompiler.hpp, * ports/hotspot/src/share/vm/shark/sharkConstant.cpp, * ports/hotspot/src/share/vm/shark/sharkConstant.hpp, * ports/hotspot/src/share/vm/shark/sharkContext.cpp, * ports/hotspot/src/share/vm/shark/sharkContext.hpp, * ports/hotspot/src/share/vm/shark/sharkEntry.hpp, * ports/hotspot/src/share/vm/shark/sharkFunction.cpp, * ports/hotspot/src/share/vm/shark/sharkFunction.hpp, * ports/hotspot/src/share/vm/shark/sharkInliner.cpp, * ports/hotspot/src/share/vm/shark/sharkInliner.hpp, * ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp, * ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp, * ports/hotspot/src/share/vm/shark/sharkInvariants.cpp, * ports/hotspot/src/share/vm/shark/sharkInvariants.hpp, * ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp, * ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp, * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp, * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp, * ports/hotspot/src/share/vm/shark/sharkRuntime.cpp, * ports/hotspot/src/share/vm/shark/sharkRuntime.hpp, * ports/hotspot/src/share/vm/shark/sharkStack.cpp, * ports/hotspot/src/share/vm/shark/sharkStack.hpp, * ports/hotspot/src/share/vm/shark/sharkState.cpp, * ports/hotspot/src/share/vm/shark/sharkState.hpp, * ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp, * ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp, * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp, * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp, * ports/hotspot/src/share/vm/shark/sharkType.hpp, * ports/hotspot/src/share/vm/shark/sharkValue.cpp, * ports/hotspot/src/share/vm/shark/sharkValue.hpp, * ports/hotspot/src/share/vm/shark/shark_globals.cpp, * ports/hotspot/src/share/vm/shark/shark_globals.hpp: Dropped, Shark now upstream. * Makefile.am: Bump to b106 changesets and new JAXWS and JAXP drops. (JAF_DROP_URL): Added to make JAF independent of JAXWS. (ICEDTEA_BOOTSTRAP_CLASSES): Add additional classes needed to bootstrap; java.nio.file.SimpleFileVisitor and javax.management.modelmbean.ModelMBeanInfo. (ICEDTEA_PATCHES): Drop upstream patches. (XRENDER_PATCHES): Removed. (ICEDTEA_BOOT_PATCHES): Add new bootstrap patches. (ICEDTEA_SHARK_BUILD): Set to 'true' not 'yes' for upstream Shark. (ICEDTEA_ENV): Pass SHARK_BUILD not ICEDTEA_SHARK_BUILD for upstream Shark. (download- jaf-drop): Use JAF_DROP_URL instead of JAXWS_DROP_URL. (ports): Removed. (clean-ports): Likewise. (generated): Depend on extract, not ports. (clean-extract- openjdk): Don't call clean-ports. (bootstrap-directory- stage1): Create lib/modules directory. (hotspot-ports): Removed. * acinclude.m4: Don't generate jvm.cfg and ergo.c. * configure.ac: Drop --enable-xrender option. * generated/java/lang/UNIXProcess.java: Updated, including ProcessBuilder workaround. * patches/boot/break-processbuilder-dependency.patch: Prevent UNIXProcess having a dependency on package-private classes in java.lang.ProcessBuilder which only exist in Oracle's implementation. * patches/boot/ecj-diamond.patch: Add new cases of <> usage. * patches/boot/icedtea-jaxp-dependency.patch: Regenerated. * patches/boot/revert-6973616.patch: Revert 1.6 requirement introduced by 6973616. * patches/boot/symbols.patch: Regenerated. * patches/boot/test_gamma.patch: Split from icedtea-hotspot- default.patch. * patches/boot/tools.jar.patch: Likewise, and regenerated due to addition of module directory test. * patches/hotspot/default/icedtea-gcc-suffix.patch, * patches/icedtea-alpha-fixes.patch, * patches/icedtea-clean-crypto.patch, * patches/icedtea-demos.patch, * patches/icedtea-freetypeversion.patch, * patches/icedtea-javafiles.patch, * patches/icedtea-linker-libs-order.patch, * patches/icedtea-print-lsb-release.patch, * patches/icedtea-rhino.patch, * patches/icedtea-sunsrc.patch, * patches/icedtea-systemtap.patch, * patches/icedtea-testenv.patch: * patches/sh4-support.patch: Regenerated. * patches/systemtap-alloc-size-workaround.patch: Patch not added by previous commit. diffstat: 89 files changed, 917 insertions(+), 25821 deletions(-) ChangeLog | 126 Makefile.am | 113 acinclude.m4 | 2 configure.ac | 8 ergo.c.in | 58 generated/java/lang/UNIXProcess.java | 363 - jvm.cfg.in | 44 patches/boot/break-processbuilder-dependency.patch | 136 patches/boot/ecj-diamond.patch | 83 patches/boot/icedtea-hotspot-default.patch | 51 patches/boot/icedtea-jaxp-dependency.patch | 12 patches/boot/revert-6973616.patch | 12 patches/boot/symbols.patch | 10 patches/boot/test_gamma.patch | 39 patches/boot/tools.jar.patch | 14 patches/hotspot/default/icedtea-gcc-suffix.patch | 24 patches/hotspot/default/icedtea-shark-build.patch | 252 patches/hotspot/default/icedtea-shark.patch | 384 - patches/icedtea-alpha-fixes.patch | 48 patches/icedtea-clean-crypto.patch | 46 patches/icedtea-demos.patch | 6 patches/icedtea-doc-headers.patch | 192 patches/icedtea-freetypeversion.patch | 7 patches/icedtea-javafiles.patch | 32 patches/icedtea-linker-libs-order.patch | 18 patches/icedtea-print-lsb-release.patch | 19 patches/icedtea-rhino.patch | 68 patches/icedtea-shark-build.patch | 51 patches/icedtea-sunsrc.patch | 18 patches/icedtea-systemtap.patch | 37 patches/icedtea-testenv.patch | 18 patches/sh4-support.patch | 92 patches/systemtap-alloc-size-workaround.patch | 17 patches/xrender/icedtea-001.patch | 5277 --------------- patches/xrender/icedtea-002.patch | 5159 -------------- patches/xrender/icedtea-003.patch | 70 patches/xrender/icedtea-004.patch | 79 patches/xrender/icedtea-005.patch | 11 patches/xrender/icedtea-006.patch | 295 patches/xrender/icedtea-007.patch | 1142 --- patches/xrender/icedtea-008.patch | 131 patches/xrender/icedtea-009.patch | 170 ports/hotspot/make/linux/makefiles/shark.make | 32 ports/hotspot/make/linux/platform_zero.in | 17 ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp | 63 ports/hotspot/src/share/vm/includeDB_shark | 369 - ports/hotspot/src/share/vm/shark/llvmHeaders.hpp | 82 ports/hotspot/src/share/vm/shark/llvmValue.hpp | 62 ports/hotspot/src/share/vm/shark/sharkBlock.cpp | 1260 --- ports/hotspot/src/share/vm/shark/sharkBlock.hpp | 281 ports/hotspot/src/share/vm/shark/sharkBuilder.cpp | 591 - ports/hotspot/src/share/vm/shark/sharkBuilder.hpp | 209 ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp | 259 ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp | 417 - ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp | 87 ports/hotspot/src/share/vm/shark/sharkCompiler.cpp | 340 ports/hotspot/src/share/vm/shark/sharkCompiler.hpp | 119 ports/hotspot/src/share/vm/shark/sharkConstant.cpp | 128 ports/hotspot/src/share/vm/shark/sharkConstant.hpp | 64 ports/hotspot/src/share/vm/shark/sharkContext.cpp | 180 ports/hotspot/src/share/vm/shark/sharkContext.hpp | 187 ports/hotspot/src/share/vm/shark/sharkEntry.hpp | 58 ports/hotspot/src/share/vm/shark/sharkFunction.cpp | 188 ports/hotspot/src/share/vm/shark/sharkFunction.hpp | 111 ports/hotspot/src/share/vm/shark/sharkInliner.cpp | 749 -- ports/hotspot/src/share/vm/shark/sharkInliner.hpp | 32 ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp | 277 ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp | 54 ports/hotspot/src/share/vm/shark/sharkInvariants.cpp | 37 ports/hotspot/src/share/vm/shark/sharkInvariants.hpp | 167 ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp | 116 ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp | 88 ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp | 352 - ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp | 182 ports/hotspot/src/share/vm/shark/sharkRuntime.cpp | 251 ports/hotspot/src/share/vm/shark/sharkRuntime.hpp | 83 ports/hotspot/src/share/vm/shark/sharkStack.cpp | 263 ports/hotspot/src/share/vm/shark/sharkStack.hpp | 290 ports/hotspot/src/share/vm/shark/sharkState.cpp | 389 - ports/hotspot/src/share/vm/shark/sharkState.hpp | 188 ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp | 99 ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp | 75 ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp | 1991 ----- ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp | 430 - ports/hotspot/src/share/vm/shark/sharkType.hpp | 112 ports/hotspot/src/share/vm/shark/sharkValue.cpp | 260 ports/hotspot/src/share/vm/shark/sharkValue.hpp | 332 ports/hotspot/src/share/vm/shark/shark_globals.cpp | 29 ports/hotspot/src/share/vm/shark/shark_globals.hpp | 54 diffs (truncated from 27837 to 500 lines): diff -r 90b892525f1b -r a58071a38743 ChangeLog --- a/ChangeLog Thu Aug 05 14:12:08 2010 +0200 +++ b/ChangeLog Mon Sep 06 23:52:04 2010 +0100 @@ -1,3 +1,127 @@ 2010-08-05 Xerxes R??nby + + Bump to b106. + * ergo.c.in, + * jvm.cfg.in: Removed. + * patches/boot/icedtea-hotspot-default.patch: Split + into test_gamma.patch and tools.jar.patch. + * patches/hotspot/default/icedtea-shark-build.patch, + * patches/hotspot/default/icedtea-shark.patch: + Dropped, Shark now upstream. + * patches/icedtea-doc-headers.patch: Dropped, + documentation licensing has changed completely due + to Sun->Oracle changes. + * patches/icedtea-shark-build.patch: Dropped. + * patches/xrender/icedtea-001.patch, + * patches/xrender/icedtea-002.patch, + * patches/xrender/icedtea-003.patch, + * patches/xrender/icedtea-004.patch, + * patches/xrender/icedtea-005.patch, + * patches/xrender/icedtea-006.patch, + * patches/xrender/icedtea-007.patch, + * patches/xrender/icedtea-008.patch, + * patches/xrender/icedtea-009.patch: + Dropped, XRender extension now upstream. + * ports/hotspot/make/linux/makefiles/shark.make, + * ports/hotspot/make/linux/platform_zero.in, + * ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp, + * ports/hotspot/src/share/vm/includeDB_shark, + * ports/hotspot/src/share/vm/shark/llvmHeaders.hpp, + * ports/hotspot/src/share/vm/shark/llvmValue.hpp, + * ports/hotspot/src/share/vm/shark/sharkBlock.cpp, + * ports/hotspot/src/share/vm/shark/sharkBlock.hpp, + * ports/hotspot/src/share/vm/shark/sharkBuilder.cpp, + * ports/hotspot/src/share/vm/shark/sharkBuilder.hpp, + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, + * ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp, + * ports/hotspot/src/share/vm/shark/sharkCompiler.cpp, + * ports/hotspot/src/share/vm/shark/sharkCompiler.hpp, + * ports/hotspot/src/share/vm/shark/sharkConstant.cpp, + * ports/hotspot/src/share/vm/shark/sharkConstant.hpp, + * ports/hotspot/src/share/vm/shark/sharkContext.cpp, + * ports/hotspot/src/share/vm/shark/sharkContext.hpp, + * ports/hotspot/src/share/vm/shark/sharkEntry.hpp, + * ports/hotspot/src/share/vm/shark/sharkFunction.cpp, + * ports/hotspot/src/share/vm/shark/sharkFunction.hpp, + * ports/hotspot/src/share/vm/shark/sharkInliner.cpp, + * ports/hotspot/src/share/vm/shark/sharkInliner.hpp, + * ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp, + * ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp, + * ports/hotspot/src/share/vm/shark/sharkInvariants.cpp, + * ports/hotspot/src/share/vm/shark/sharkInvariants.hpp, + * ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp, + * ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp, + * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp, + * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp, + * ports/hotspot/src/share/vm/shark/sharkRuntime.cpp, + * ports/hotspot/src/share/vm/shark/sharkRuntime.hpp, + * ports/hotspot/src/share/vm/shark/sharkStack.cpp, + * ports/hotspot/src/share/vm/shark/sharkStack.hpp, + * ports/hotspot/src/share/vm/shark/sharkState.cpp, + * ports/hotspot/src/share/vm/shark/sharkState.hpp, + * ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp, + * ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp, + * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp, + * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp, + * ports/hotspot/src/share/vm/shark/sharkType.hpp, + * ports/hotspot/src/share/vm/shark/sharkValue.cpp, + * ports/hotspot/src/share/vm/shark/sharkValue.hpp, + * ports/hotspot/src/share/vm/shark/shark_globals.cpp, + * ports/hotspot/src/share/vm/shark/shark_globals.hpp: + Dropped, Shark now upstream. + * Makefile.am: + Bump to b106 changesets and new JAXWS and JAXP drops. + (JAF_DROP_URL): Added to make JAF independent of JAXWS. + (ICEDTEA_BOOTSTRAP_CLASSES): Add additional classes + needed to bootstrap; java.nio.file.SimpleFileVisitor + and javax.management.modelmbean.ModelMBeanInfo. + (ICEDTEA_PATCHES): Drop upstream patches. + (XRENDER_PATCHES): Removed. + (ICEDTEA_BOOT_PATCHES): Add new bootstrap patches. + (ICEDTEA_SHARK_BUILD): Set to 'true' not 'yes' for + upstream Shark. + (ICEDTEA_ENV): Pass SHARK_BUILD not ICEDTEA_SHARK_BUILD + for upstream Shark. + (download-jaf-drop): Use JAF_DROP_URL instead of JAXWS_DROP_URL. + (ports): Removed. + (clean-ports): Likewise. + (generated): Depend on extract, not ports. + (clean-extract-openjdk): Don't call clean-ports. + (bootstrap-directory-stage1): Create lib/modules directory. + (hotspot-ports): Removed. + * acinclude.m4: Don't generate jvm.cfg and ergo.c. + * configure.ac: Drop --enable-xrender option. + * generated/java/lang/UNIXProcess.java: Updated, including + ProcessBuilder workaround. + * patches/boot/break-processbuilder-dependency.patch: + Prevent UNIXProcess having a dependency on package-private + classes in java.lang.ProcessBuilder which only exist in + Oracle's implementation. + * patches/boot/ecj-diamond.patch: Add new cases of <> usage. + * patches/boot/icedtea-jaxp-dependency.patch: Regenerated. + * patches/boot/revert-6973616.patch: Revert 1.6 requirement + introduced by 6973616. + * patches/boot/symbols.patch: Regenerated. + * patches/boot/test_gamma.patch: Split from icedtea-hotspot-default.patch. + * patches/boot/tools.jar.patch: Likewise, and regenerated + due to addition of module directory test. + * patches/hotspot/default/icedtea-gcc-suffix.patch, + * patches/icedtea-alpha-fixes.patch, + * patches/icedtea-clean-crypto.patch, + * patches/icedtea-demos.patch, + * patches/icedtea-freetypeversion.patch, + * patches/icedtea-javafiles.patch, + * patches/icedtea-linker-libs-order.patch, + * patches/icedtea-print-lsb-release.patch, + * patches/icedtea-rhino.patch, + * patches/icedtea-sunsrc.patch, + * patches/icedtea-systemtap.patch, + * patches/icedtea-testenv.patch: + * patches/sh4-support.patch: Regenerated. + * patches/systemtap-alloc-size-workaround.patch: + Patch not added by previous commit. + 2010-08-05 Xerxes R??nby * NEWS: Updated with correct suffix for the @@ -22,7 +146,7 @@ 2010-08-05 Xerxes R??nby * NEWS: Updated for Shark OSR fix. - + 2010-08-05 Xerxes R??nby * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp diff -r 90b892525f1b -r a58071a38743 Makefile.am --- a/Makefile.am Thu Aug 05 14:12:08 2010 +0200 +++ b/Makefile.am Mon Sep 06 23:52:04 2010 +0100 @@ -1,22 +1,22 @@ # Dependencies -OPENJDK_VERSION = b89 +OPENJDK_VERSION = b106 -CORBA_CHANGESET = e805b4155d76 -HOTSPOT_CHANGESET = a393ff93e7e5 -JAXP_CHANGESET = 826bafcb6c4a -JAXWS_CHANGESET = 1661166c82dc -JDK_CHANGESET = 2017795af50a -LANGTOOLS_CHANGESET = 681f1f51926f -OPENJDK_CHANGESET = 195fcceefddc +CORBA_CHANGESET = 00a2834117ff +HOTSPOT_CHANGESET = a30c85eed5d5 +JAXP_CHANGESET = 679653c22ae1 +JAXWS_CHANGESET = 191a3ec51d79 +JDK_CHANGESET = a094068f4c7b +LANGTOOLS_CHANGESET = 68035813467d +OPENJDK_CHANGESET = b79fce47b7c6 -CORBA_SHA256SUM = 870e2eac993a4eef48197ed7309cab176b56a994add1de215a026599052627cb -HOTSPOT_SHA256SUM = 995d64e272ecde0e00b69e36371bc7f8a82638c1f598c956f98e10538e41d695 -JAXP_SHA256SUM = 42d004e51a1f01d146ad230ce48996ddf8da3719fe571a41653f431d6b2e8a7b -JAXWS_SHA256SUM = 4523909cd46fd61b5c6670bf932099d5899236a37a4058e7b2bcb855e503a0e4 -JDK_SHA256SUM = 1efc1939a8fae211752369b710d2c549cbc8ec74de4724c2898e772bdba98a3c -LANGTOOLS_SHA256SUM = 5ff6f2a6d15403ed8d948a07204904f6ce60e363bd0516e22f1cae830aba84f8 -OPENJDK_SHA256SUM = 93c536e6bc4e962050a00321e88e694fc4e0000e2ad887b8de22830bfda2649f +CORBA_SHA256SUM = 5648b189c94df46bbec9bc7c8640957befffbde68ff7ef9f8f8de9bd7fbe8e7d +HOTSPOT_SHA256SUM = 93f71928d061f86f6a18f224f92ac217ea4dcc324183b029ece9a862c445714d +JAXP_SHA256SUM = c7d58a5dd2859ccb8b2d0897a26ce9b37895f530a94a5912179afc25cc1d14ea +JAXWS_SHA256SUM = 6fd65fd23c085c9c89f904da1b6448460af32d97d76bb0ba49630ee61d70a4d6 +JDK_SHA256SUM = 8b20e0686667a03cf028d57695b4bc2196c51db2d9c0873db7694624c384c446 +LANGTOOLS_SHA256SUM = 81b48f5f5782e62b0555735be24e294d3274c48fa1e027a63eb005465a505385 +OPENJDK_SHA256SUM = edb332586e2442bdbd4eed19c059535ade56dba5b436257031a0e5e827b89f12 CACAO_VERSION = 66e762d869dd CACAO_SHA256SUM = 9a558ffb69479f2d31995bdeb90cd2abc616050e76a6be7263c72e2e302ca4e6 @@ -24,14 +24,15 @@ CACAO_URL = $(CACAO_BASE_URL)/$(CACAO_VE CACAO_URL = $(CACAO_BASE_URL)/$(CACAO_VERSION).tar.bz2 CACAO_SRC_ZIP = cacao-$(CACAO_VERSION).tar.bz2 -JAXWS_DROP_URL = http://kenai.com/projects/jdk7-drops/downloads/download -JAXWS_DROP_ZIP = jdk7-jaxws-2009_09_28.zip -JAXWS_DROP_SHA256SUM = 272756b999e9ae2435da8d58e259562e61126e1c5b1f9421fe65423217cef8fd +JAXWS_DROP_URL = https://jax-ws.dev.java.net/files/documents/4202/150896 +JAXWS_DROP_ZIP = jdk7-jaxws-b100.zip +JAXWS_DROP_SHA256SUM = 06e5f564430954211322fca353b0b8d916ffa8ae051412b7d9b5a5398090d887 +JAF_DROP_URL = http://kenai.com/projects/jdk7-drops/downloads/download JAF_DROP_ZIP = jdk7-jaf-2009_08_28.zip JAF_DROP_SHA256SUM = 8c81940b3017c0058367d7e7453123442f2cdd77c2bfe74acd9035f97e4db8e8 -JAXP_DROP_URL = https://jaxp.dev.java.net/files/documents/913/147490 -JAXP_DROP_ZIP = jdk7-jaxp-m6.zip -JAXP_DROP_SHA256SUM = 3d9eb7ae71f5365e2a786ba270413c6cb7dc8d1137f56995c087908b3df8446c +JAXP_DROP_URL = https://jaxp.dev.java.net/files/documents/913/150785 +JAXP_DROP_ZIP = jdk7-jaxp-m7.zip +JAXP_DROP_SHA256SUM = d097627d4059d488c5a09d4e33cec275a193d4d8bc0fea8ef4f1337170904156 ICEDTEA_HG_URL = http://hg.openjdk.java.net/icedtea/jdk7 OPENJDK_HG_URL = http://hg.openjdk.java.net/jdk7/jdk7 @@ -151,6 +152,8 @@ ICEDTEA_BOOTSTRAP_CLASSES = \ ICEDTEA_BOOTSTRAP_CLASSES = \ $(SHARE)/javax/swing/plaf/basic/BasicDirectoryModel.java \ $(SHARE)/javax/management/StandardMBean.java \ + $(SHARE)/java/nio/file/SimpleFileVisitor.java \ + $(SHARE)/javax/management/modelmbean/ModelMBeanInfo.java \ $(NETX_BOOTSTRAP_CLASSES) endif @@ -303,8 +306,6 @@ ICEDTEA_PATCHES = \ patches/hotspot/$(HSBUILD)/icedtea-sparc-ptracefix.patch \ patches/hotspot/$(HSBUILD)/icedtea-sparc-trapsfix.patch \ patches/icedtea-override-redirect-metacity.patch \ - patches/icedtea-shark-build.patch \ - patches/hotspot/$(HSBUILD)/icedtea-shark-build.patch \ patches/icedtea-security-updates.patch \ patches/icedtea-hotspot-gcc-pr36917.patch \ patches/icedtea-alpha-fixes.patch \ @@ -313,7 +314,6 @@ ICEDTEA_PATCHES = \ patches/hotspot/$(HSBUILD)/icedtea-use-idx_t.patch \ patches/hotspot/$(HSBUILD)/icedtea-params-cast-size_t.patch \ patches/icedtea-clean-crypto.patch \ - patches/hotspot/$(HSBUILD)/icedtea-shark.patch \ $(GCC_PATCH) \ patches/cacao/arch.patch \ patches/icedtea-signed-types.patch \ @@ -324,7 +324,6 @@ ICEDTEA_PATCHES = \ patches/icedtea-testenv.patch \ patches/icedtea-samejvm-safe.patch \ patches/icedtea-pr261.patch \ - patches/icedtea-doc-headers.patch \ patches/hotspot/$(HSBUILD)/icedtea-parisc-opt.patch \ patches/security/icedtea-6592792.patch \ patches/security/icedtea-6733959.patch \ @@ -367,14 +366,6 @@ if ENABLE_PULSE_JAVA if ENABLE_PULSE_JAVA ICEDTEA_PATCHES += \ patches/icedtea-pulse-soundproperties.patch -endif - -if ENABLE_XRENDER -# match against $(abs_top_srcdir) and then remove it again, -# because stamps/patch.stamp target will also add it -XRENDER_PATCHES = patches/xrender/icedtea-???.patch -XRENDER_PATCH_FILES = $(sort $(wildcard $(abs_top_srcdir)/$(XRENDER_PATCHES))) -ICEDTEA_PATCHES += $(sort $(subst $(abs_top_srcdir)/,,$(XRENDER_PATCH_FILES))) endif if !USE_CVMI @@ -420,12 +411,15 @@ ICEDTEA_BOOT_PATCHES = patches/boot/ant- patches/boot/javah.patch \ patches/boot/symbols.patch \ patches/boot/tobin.patch \ - patches/boot/icedtea-hotspot-$(HSBUILD).patch \ + patches/boot/test_gamma.patch \ + patches/boot/tools.jar.patch \ patches/boot/icedtea-jopt.patch \ patches/boot/icedtea-dyn.patch \ patches/boot/icedtea-jaxp-dependency.patch \ patches/boot/genstubs-nofork.patch \ - patches/boot/getannotation-cast.patch + patches/boot/getannotation-cast.patch \ + patches/boot/break-processbuilder-dependency.patch \ + patches/boot/revert-6973616.patch if CP39408_JAVAH ICEDTEA_BOOT_PATCHES += patches/boot/icedtea-pr39408.patch @@ -468,13 +462,9 @@ JAXWS_PATCHES = patches/boot/jaxws-getdt # OpenJDK build environment. if ZERO_BUILD ICEDTEA_ZERO_BUILD = true -else - ICEDTEA_ZERO_BUILD = endif if SHARK_BUILD - ICEDTEA_SHARK_BUILD = yes -else - ICEDTEA_SHARK_BUILD = + ICEDTEA_SHARK_BUILD = true endif JDK_UPDATE_VERSION = $(shell echo $(OPENJDK_VERSION) | sed -e "s/^b//") @@ -507,7 +497,7 @@ ICEDTEA_ENV = \ CLASSPATH="" \ LD_LIBRARY_PATH="" \ ZERO_BUILD="$(ICEDTEA_ZERO_BUILD)" \ - ICEDTEA_SHARK_BUILD="$(ICEDTEA_SHARK_BUILD)" \ + SHARK_BUILD="$(ICEDTEA_SHARK_BUILD)" \ ZERO_LIBARCH="$(ZERO_LIBARCH)" \ ARCH_DATA_MODEL="$(ZERO_BITSPERWORD)" \ ZERO_ENDIANNESS="$(ZERO_ENDIANNESS)" \ @@ -898,7 +888,7 @@ endif then \ mv drops/$(JAF_DROP_ZIP) drops/$(JAF_DROP_ZIP).old ; \ fi ; \ - $(WGET) $(JAXWS_DROP_URL)/$(JAF_DROP_ZIP) -O drops/$(JAF_DROP_ZIP); \ + $(WGET) $(JAF_DROP_URL)/$(JAF_DROP_ZIP) -O drops/$(JAF_DROP_ZIP); \ if ! echo "$(JAF_DROP_SHA256SUM) drops/$(JAF_DROP_ZIP)" \ | $(SHA256SUM) --check ; \ then echo "ERROR: Bad download of jaf drop zip"; false; \ @@ -1269,7 +1259,7 @@ endif touch $@ clean-extract-openjdk: clean-overlay clean-versioning \ - clean-ports clean-patch-fsg + clean-patch-fsg rm -rf openjdk rm -f stamps/extract-openjdk.stamp @@ -1315,39 +1305,7 @@ clean-extract-jaxws: mkdir -p stamps rm -f stamps/extract-jaxws.stamp -# Link ports sources into tree -stamps/ports.stamp: stamps/extract.stamp - for target in $(abs_top_srcdir)/ports/hotspot/make/*/platform_zero.in \ - $(abs_top_srcdir)/ports/hotspot/make/*/makefiles/* \ - $(abs_top_srcdir)/ports/hotspot/src/cpu/zero/vm/* \ - $(abs_top_srcdir)/ports/hotspot/src/share/vm/*; do \ - link=$$(dirname $$target | sed 's/^.*ports/openjdk/'); \ - ln -sfv $$target $$link; \ - done - if ! test "x$(WITH_CACAO)" = "xno" ; then \ - mkdir -p openjdk/jdk/src/solaris/bin/$(BUILD_ARCH_DIR) ; \ - ln -sf $(abs_top_builddir)/jvm.cfg \ - openjdk/jdk/src/solaris/bin/$(BUILD_ARCH_DIR)/jvm.cfg ; \ - fi - if ! test "x$(WITH_CACAO)" = "xno"; then \ - ln -sf $(abs_top_builddir)/ergo.c \ - openjdk/jdk/src/solaris/bin/ergo_$(BUILD_ARCH_DIR).c; \ - fi - mkdir -p stamps - touch $@ - -clean-ports: - for target in $(abs_top_srcdir)/ports/hotspot/make/*/makefiles/* \ - $(abs_top_srcdir)/ports/hotspot/src/cpu/zero/vm/* \ - $(abs_top_srcdir)/ports/hotspot/src/share/vm/*; do \ - link=$$(echo $$target | sed 's/^.*ports/openjdk/'|sed "s#hotspot/build#hotspot/make#"); \ - rm -rf $$link; \ - done - rm -f openjdk/jdk/src/solaris/bin/$(BUILD_ARCH_DIR)/jvm.cfg - rm -f openjdk/jdk/src/solaris/bin/ergo_$(BUILD_ARCH_DIR).c - rm -f stamps/ports.stamp - -stamps/generated.stamp: stamps/ports.stamp +stamps/generated.stamp: stamps/extract.stamp set -e ; \ if [ ! -e $(abs_top_builddir)/generated.build ]; then \ cp -pPR $(abs_top_srcdir)/generated $(abs_top_builddir)/generated.build; \ @@ -1696,6 +1654,7 @@ stamps/bootstrap-directory-stage1.stamp: ln -sf $(XALAN2_SERIALIZER_JAR) \ $(STAGE1_BOOT_DIR)/lib/endorsed/xalan-j2-serializer.jar && \ ln -sf $(XERCES2_JAR) $(STAGE1_BOOT_DIR)/lib/endorsed/xerces-j2.jar + mkdir -p $(STAGE1_BOOT_DIR)/lib/modules mkdir -p $(STAGE1_BOOT_DIR)/jre/lib && \ cp $(SYSTEM_JDK_DIR)/jre/lib/rt.jar \ $(STAGE1_BOOT_DIR)/jre/lib/rt.jar && \ @@ -2620,8 +2579,6 @@ extract-openjdk: stamps/extract-openjdk. generated: stamps/generated.stamp -hotspot-ports: stamps/ports.stamp - icedtea: stamps/icedtea.stamp icedtea-boot: stamps/icedtea-boot.stamp diff -r 90b892525f1b -r a58071a38743 acinclude.m4 --- a/acinclude.m4 Thu Aug 05 14:12:08 2010 +0200 +++ b/acinclude.m4 Mon Sep 06 23:52:04 2010 +0100 @@ -760,8 +760,6 @@ AC_DEFUN([ENABLE_ZERO_BUILD], AC_SUBST(ZERO_BITSPERWORD) AC_SUBST(ZERO_ENDIANNESS) AC_SUBST(ZERO_ARCHDEF) - AC_CONFIG_FILES([jvm.cfg]) - AC_CONFIG_FILES([ergo.c]) ]) AC_DEFUN([SET_SHARK_BUILD], diff -r 90b892525f1b -r a58071a38743 configure.ac --- a/configure.ac Thu Aug 05 14:12:08 2010 +0200 +++ b/configure.ac Mon Sep 06 23:52:04 2010 +0100 @@ -78,14 +78,6 @@ AC_ARG_ENABLE([docs], [ENABLE_DOCS="${enableval}"], [ENABLE_DOCS='yes']) AM_CONDITIONAL([ENABLE_DOCS], [test x$ENABLE_DOCS = xyes]) AC_MSG_RESULT(${ENABLE_DOCS}) - -AC_MSG_CHECKING([whether to include the XRender pipeline]) -AC_ARG_ENABLE([xrender], - [AS_HELP_STRING([--disable-xrender], - [Disable inclusion of xrender pipeline])], - [ENABLE_XRENDER="${enableval}"], [ENABLE_XRENDER='yes']) -AM_CONDITIONAL([ENABLE_XRENDER], [test x$ENABLE_XRENDER = xyes]) -AC_MSG_RESULT(${ENABLE_XRENDER}) AC_MSG_CHECKING([whether to include SystemTap tracing support]) AC_ARG_ENABLE([systemtap], diff -r 90b892525f1b -r a58071a38743 ergo.c.in --- a/ergo.c.in Thu Aug 05 14:12:08 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,58 +0,0 @@ -/* - * Copyright 1998-2007 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 only, as - * published by the Free Software Foundation. Sun designates this - * particular file as subject to the "Classpath" exception as provided - * by Sun in the LICENSE file that accompanied this code. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, - * CA 95054 USA or visit www.sun.com if you need additional information or - * have any questions. - */ -#include "ergo.h" - - -/* Methods for solaris-sparc and linux-sparc: these are easy. */ - -/* Ask the OS how many processors there are. */ -static unsigned long -physical_processors(void) { - const unsigned long sys_processors = sysconf(_SC_NPROCESSORS_CONF); - - JLI_TraceLauncher("sysconf(_SC_NPROCESSORS_CONF): %lu\n", sys_processors); - return sys_processors; -} - -/* The sparc version of the "server-class" predicate. */ -jboolean -ServerClassMachineImpl(void) { - jboolean result = JNI_FALSE; - /* How big is a server class machine? */ - const unsigned long server_processors = 2UL; - const uint64_t server_memory = 2UL * GB; - const uint64_t actual_memory = physical_memory(); - - /* Is this a server class machine? */ - if (actual_memory >= server_memory) { - const unsigned long actual_processors = physical_processors(); - if (actual_processors >= server_processors) { - result = JNI_TRUE; - } - } - JLI_TraceLauncher("unix_" LIBARCHNAME "_ServerClassMachine: %s\n", - (result == JNI_TRUE ? "JNI_TRUE" : "JNI_FALSE")); - return result; -} diff -r 90b892525f1b -r a58071a38743 generated/java/lang/UNIXProcess.java --- a/generated/java/lang/UNIXProcess.java Thu Aug 05 14:12:08 2010 +0200 +++ b/generated/java/lang/UNIXProcess.java Mon Sep 06 23:52:04 2010 +0100 @@ -1,12 +1,12 @@ /* - * Copyright 1995-2008 Sun Microsystems, Inc. All Rights Reserved. + * Copyright (c) 1995, 2008, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as - * published by the Free Software Foundation. Sun designates this + * published by the Free Software Foundation. Oracle designates this * particular file as subject to the "Classpath" exception as provided - * by Sun in the LICENSE file that accompanied this code. + * by Oracle in the LICENSE file that accompanied this code. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or @@ -18,32 +18,75 @@ * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, - * CA 95054 USA or visit www.sun.com if you need additional information or - * have any questions. + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. */ package java.lang; -import java.io.*; +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.ByteArrayInputStream; +import java.io.FileDescriptor; From bugzilla-daemon at icedtea.classpath.org Tue Sep 7 02:51:40 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 07 Sep 2010 09:51:40 +0000 Subject: [Bug 543] New: zero fails to build on icedtea7 trunk 20100907 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=543 Summary: zero fails to build on icedtea7 trunk 20100907 Product: IcedTea Version: 7-hg Platform: all OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: Zero AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com this is *not* related to the configuration --with-additional-vms=zero. echo Generating precompiled header incls/_precompiled.incl.gch Generating precompiled header incls/_precompiled.incl.gch mkdir -p ./incls g++-4.4 -DLINUX -D_GNU_SOURCE -DCC_INTERP -DZERO -DAMD64 -DZERO_LIBARCH=\"amd64\" -DPRODUCT -I. -I../generated/adfiles -I../generated/jvmt ifiles -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/asm -I/scratch/packages/openjdk/b10 6/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/c1 -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/ope njdk/hotspot/src/share/vm/ci -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/classfile -I/ scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/code -I/scratch/packages/openjdk/b106/openjdk -7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/compiler -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjd k/hotspot/src/share/vm/gc_implementation -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/g c_implementation/shared -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/gc_implementation/ g1 -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/gc_implementation/parNew -I/scratch/pac kages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep -I/scratch/package s/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge -I/scratch/packages/openj dk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/gc_interface -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/ build/zerovm/openjdk/hotspot/src/share/vm/interpreter -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/s rc/share/vm/memory -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/oops -I/scratch/package s/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/prims -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/runtime -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/services -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/shark -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/utilities -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/cpu/zero/vm -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/os/linux/vm -I/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/os_cpu/linux_zero/vm -I../generated -DHOTSPOT_RELEASE_VERSION="\"19.0-b06\"" -DHOTSPOT_BUILD_TARGET="\"product\"" -DHOTSPOT_BUILD_USER="\"doko\"" -DHOTSPOT_LIB_ARCH=\"amd64\" -DJRE_RELEASE_VERSION="\"1.7.0_106-b106\"" -DHOTSPOT_VM_DISTRO="\"OpenJDK\"" -DDERIVATIVE_ID="\"IcedTea7 1.14-pre\"" -DDISTRIBUTION_ID="\"Ubuntu maverick (development branch), package 7b106~pre1-0ubuntu1\"" -I/usr/lib/llvm-2.7/include -DNDEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DSHARK_LLVM_VERSION=27 -fpic -fno-rtti -fno-exceptions -D_REENTRANT -fcheck-new -m64 -pipe -g -O3 -fno-strict-aliasing -DVM_LITTLE_ENDIAN -D_LP64=1 -Werror -Wpointer-arith -Wsign-compare -c -x c++-header -c ../generated/incls/_precompiled.incl -o incls/_precompiled.incl.gch In file included from ../generated/incls/_precompiled.incl:124: /scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/runtime/thread.hpp: In member function 'unsigned char* JavaThread::last_Java_pc()': /scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/runtime/thread.hpp:902: error: 'class JavaFrameAnchor' has no member named 'last_Java_pc' In file included from ../generated/incls/_bytecodeInterpreter_pd.inline.hpp.incl:1, from /scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.inline.hpp:40, from ../generated/incls/_precompiled.incl:134: /scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.inline.hpp: At global scope: /scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.inline.hpp:271: error: prototype for 'jint BytecodeInterpreter::VMintUshr(jint, jint)' does not match any in class 'BytecodeInterpreter' /scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/zerovm/openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.hpp:443: error: candidate is: static juint BytecodeInterpreter::VMintUshr(jint, jint) make[9]: *** [incls/_precompiled.incl.gch] Error 1 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 7 02:57:03 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 07 Sep 2010 09:57:03 +0000 Subject: [Bug 543] zero fails to build on icedtea7 trunk 20100907 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=543 ------- Comment #1 from gnu_andrew at member.fsf.org 2010-09-07 09:57 ------- Not too surprising, it was a big bump from b89 to b106 and took long enough to get the normal build going. Does this mean it's broken in OpenJDK7 too? IcedTea7 doesn't have any zero or shark stuff now (or shouldn't at any rate). -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 7 03:01:24 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 07 Sep 2010 10:01:24 +0000 Subject: [Bug 543] zero fails to build on icedtea7 trunk 20100907 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=543 ------- Comment #2 from gbenson at redhat.com 2010-09-07 10:01 ------- http://hg.openjdk.java.net/jdk7/hotspot-comp/hotspot/rev/13b87063b4d8 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at icedtea.classpath.org Tue Sep 7 04:00:04 2010 From: doko at icedtea.classpath.org (doko at icedtea.classpath.org) Date: Tue, 07 Sep 2010 11:00:04 +0000 Subject: /hg/icedtea: Bump cacao version to changeset including build fix... Message-ID: changeset 6ec76d7f5601 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=6ec76d7f5601 author: doko at ubuntu.com date: Tue Sep 07 12:57:46 2010 +0200 Bump cacao version to changeset including build fixes for ARM and S390 2010-09-07 Matthias Klose * Makefile.am: Bump cacao version to changeset including build fixes for ARM and S390. * patches/cacao/launcher.patch: Regenerate. diffstat: 3 files changed, 17 insertions(+), 12 deletions(-) ChangeLog | 6 ++++++ Makefile.am | 4 ++-- patches/cacao/launcher.patch | 19 +++++++++---------- diffs (74 lines): diff -r a58071a38743 -r 6ec76d7f5601 ChangeLog --- a/ChangeLog Mon Sep 06 23:52:04 2010 +0100 +++ b/ChangeLog Tue Sep 07 12:57:46 2010 +0200 @@ -1,3 +1,9 @@ 2010-09-06 Andrew John Hughes + + * Makefile.am: Bump cacao version to changeset including build + fixes for ARM and S390. + * patches/cacao/launcher.patch: Regenerate. + 2010-09-06 Andrew John Hughes Bump to b106. diff -r a58071a38743 -r 6ec76d7f5601 Makefile.am --- a/Makefile.am Mon Sep 06 23:52:04 2010 +0100 +++ b/Makefile.am Tue Sep 07 12:57:46 2010 +0200 @@ -18,8 +18,8 @@ LANGTOOLS_SHA256SUM = 81b48f5f5782e62b05 LANGTOOLS_SHA256SUM = 81b48f5f5782e62b0555735be24e294d3274c48fa1e027a63eb005465a505385 OPENJDK_SHA256SUM = edb332586e2442bdbd4eed19c059535ade56dba5b436257031a0e5e827b89f12 -CACAO_VERSION = 66e762d869dd -CACAO_SHA256SUM = 9a558ffb69479f2d31995bdeb90cd2abc616050e76a6be7263c72e2e302ca4e6 +CACAO_VERSION = e321b101a9ee +CACAO_SHA256SUM = 46bc5b6212c199dc4a3dbebe6386fe15a8248625a5dffa17115aab394a298444 CACAO_BASE_URL = http://mips.complang.tuwien.ac.at/hg/cacao/archive CACAO_URL = $(CACAO_BASE_URL)/$(CACAO_VERSION).tar.bz2 CACAO_SRC_ZIP = cacao-$(CACAO_VERSION).tar.bz2 diff -r a58071a38743 -r 6ec76d7f5601 patches/cacao/launcher.patch --- a/patches/cacao/launcher.patch Mon Sep 06 23:52:04 2010 +0100 +++ b/patches/cacao/launcher.patch Tue Sep 07 12:57:46 2010 +0200 @@ -1,7 +1,6 @@ diff -Nru openjdk.orig/jdk/make/docs/Mak -diff -Nru openjdk.orig/jdk/make/docs/Makefile openjdk/jdk/make/docs/Makefile ---- openjdk.orig/jdk/make/docs/Makefile 2009-05-19 01:11:05.000000000 +0100 -+++ openjdk/jdk/make/docs/Makefile 2009-05-20 20:17:49.000000000 +0100 -@@ -36,7 +36,7 @@ +--- openjdk/jdk/make/docs/Makefile.orig 2010-08-27 20:01:53.000000000 +0200 ++++ openjdk/jdk/make/docs/Makefile 2010-09-07 12:56:00.309691118 +0200 +@@ -70,7 +70,7 @@ ifeq ($(ARCH_DATA_MODEL),64) MAX_VM_MEMORY = 1024 else @@ -9,10 +8,10 @@ diff -Nru openjdk.orig/jdk/make/docs/Mak + MAX_VM_MEMORY = 768 endif - # ---- openjdk/jdk/src/share/bin/java.c.orig 2009-05-26 21:16:09.000000000 +0000 -+++ openjdk/jdk/src/share/bin/java.c 2009-05-26 21:29:41.000000000 +0000 -@@ -175,6 +175,8 @@ + # List of all possible directories for javadoc to look for sources +--- openjdk/jdk/src/share/bin/java.c.orig 2010-09-07 05:24:49.307192201 +0200 ++++ openjdk/jdk/src/share/bin/java.c 2010-09-07 12:56:00.309691118 +0200 +@@ -174,6 +174,8 @@ InvocationFunctions ifn; } JavaMainArgs; @@ -21,7 +20,7 @@ diff -Nru openjdk.orig/jdk/make/docs/Mak /* * Entry point. */ -@@ -1875,6 +1877,8 @@ +@@ -1923,6 +1925,8 @@ { /* Create a new thread to create JVM and invoke main method */ JavaMainArgs args; @@ -30,7 +29,7 @@ diff -Nru openjdk.orig/jdk/make/docs/Mak int rslt; args.argc = argc; -@@ -1883,7 +1887,17 @@ +@@ -1931,7 +1935,17 @@ args.classname = classname; args.ifn = *ifn; From doko at icedtea.classpath.org Tue Sep 7 04:29:23 2010 From: doko at icedtea.classpath.org (doko at icedtea.classpath.org) Date: Tue, 07 Sep 2010 11:29:23 +0000 Subject: /hg/icedtea: 2 new changesets Message-ID: changeset 90d1974ff380 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=90d1974ff380 author: doko at ubuntu.com date: Tue Sep 07 13:22:12 2010 +0200 PR icedtea/543, fix zero build failure. 2010-09-07 Matthias Klose PR icedtea/543 * patches/icedtea-6977640.patch: New, fix zero build failure. * Makefile.am (ICEDTEA_PATCHES): Apply. changeset 8197d06d05e5 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=8197d06d05e5 author: doko at ubuntu.com date: Tue Sep 07 13:23:01 2010 +0200 Revert unintended change to .hgignore diffstat: 3 files changed, 116 insertions(+), 1 deletion(-) ChangeLog | 6 ++ Makefile.am | 3 - patches/icedtea-6977640.patch | 108 +++++++++++++++++++++++++++++++++++++++++ diffs (138 lines): diff -r 6ec76d7f5601 -r 8197d06d05e5 ChangeLog --- a/ChangeLog Tue Sep 07 12:57:46 2010 +0200 +++ b/ChangeLog Tue Sep 07 13:23:01 2010 +0200 @@ -1,3 +1,9 @@ 2010-09-07 Matthias Klose + + PR icedtea/543 + * patches/icedtea-6977640.patch: New, fix zero build failure. + * Makefile.am (ICEDTEA_PATCHES): Apply. + 2010-09-07 Matthias Klose * Makefile.am: Bump cacao version to changeset including build diff -r 6ec76d7f5601 -r 8197d06d05e5 Makefile.am --- a/Makefile.am Tue Sep 07 12:57:46 2010 +0200 +++ b/Makefile.am Tue Sep 07 13:23:01 2010 +0200 @@ -339,7 +339,8 @@ ICEDTEA_PATCHES = \ patches/extensions/netx.patch \ patches/extensions/netx-dist.patch \ patches/extensions/netx-umask.patch \ - patches/jtreg-httpTest.patch + patches/jtreg-httpTest.patch \ + patches/icedtea-6977640.patch # Conditional patches diff -r 6ec76d7f5601 -r 8197d06d05e5 patches/icedtea-6977640.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/icedtea-6977640.patch Tue Sep 07 13:23:01 2010 +0200 @@ -0,0 +1,108 @@ + +# HG changeset patch +# User twisti +# Date 1282119736 25200 +# Node ID 13b87063b4d8dea40ba97a283ad5bd3272e876f3 +# Parent a62d332029cf3a8c710687b833d71966e078bbdc +6977640: Zero and Shark fixes +Summary: A number of fixes for Zero and Shark. +Reviewed-by: twisti +Contributed-by: Gary Benson + +--- openjdk/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.inline.hpp Fri Aug 13 15:14:00 2010 -0700 ++++ openjdk/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.inline.hpp Wed Aug 18 01:22:16 2010 -0700 +@@ -1,6 +1,6 @@ + /* + * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. +- * Copyright 2007 Red Hat, Inc. ++ * Copyright 2007, 2010 Red Hat, Inc. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -268,7 +268,7 @@ inline jint BytecodeInterpreter::VMintSu + return op1 - op2; + } + +-inline jint BytecodeInterpreter::VMintUshr(jint op1, jint op2) { ++inline juint BytecodeInterpreter::VMintUshr(jint op1, jint op2) { + return ((juint) op1) >> (op2 & 0x1F); + } + +--- openjdk/hotspot/src/cpu/zero/vm/javaFrameAnchor_zero.hpp Fri Aug 13 15:14:00 2010 -0700 ++++ openjdk/hotspot/src/cpu/zero/vm/javaFrameAnchor_zero.hpp Wed Aug 18 01:22:16 2010 -0700 +@@ -82,6 +82,10 @@ + return _last_Java_fp; + } + ++ address last_Java_pc() const { ++ return _last_Java_pc; ++ } ++ + static ByteSize last_Java_fp_offset() { + return byte_offset_of(JavaFrameAnchor, _last_Java_fp); + } +--- openjdk/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp Fri Aug 13 15:14:00 2010 -0700 ++++ openjdk/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp Wed Aug 18 01:22:16 2010 -0700 +@@ -435,22 +435,22 @@ extern "C" { + void _Copy_arrayof_conjoint_bytes(HeapWord* from, + HeapWord* to, + size_t count) { +- ShouldNotCallThis(); ++ memmove(to, from, count); + } + void _Copy_arrayof_conjoint_jshorts(HeapWord* from, + HeapWord* to, + size_t count) { +- ShouldNotCallThis(); ++ memmove(to, from, count * 2); + } + void _Copy_arrayof_conjoint_jints(HeapWord* from, + HeapWord* to, + size_t count) { +- ShouldNotCallThis(); ++ memmove(to, from, count * 4); + } + void _Copy_arrayof_conjoint_jlongs(HeapWord* from, + HeapWord* to, + size_t count) { +- ShouldNotCallThis(); ++ memmove(to, from, count * 8); + } + }; + +--- openjdk/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.cpp Fri Aug 13 15:14:00 2010 -0700 ++++ openjdk/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.cpp Wed Aug 18 01:22:16 2010 -0700 +@@ -1,6 +1,6 @@ + /* + * Copyright (c) 1997, 2007, Oracle and/or its affiliates. All rights reserved. +- * Copyright 2009 Red Hat, Inc. ++ * Copyright 2009, 2010 Red Hat, Inc. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it +@@ -23,6 +23,9 @@ + * + */ + +-// This file is intentionally empty ++#include "incls/_precompiled.incl" ++#include "incls/_thread_linux_zero.cpp.incl" + +-void JavaThread::cache_global_variables() { } ++void JavaThread::cache_global_variables() { ++ // nothing to do ++} +--- openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp Fri Aug 13 15:14:00 2010 -0700 ++++ openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp Wed Aug 18 01:22:16 2010 -0700 +@@ -421,7 +421,9 @@ BytecodeInterpreter::run(interpreterStat + #ifdef ASSERT + if (istate->_msg != initialize) { + assert(abs(istate->_stack_base - istate->_stack_limit) == (istate->_method->max_stack() + 1), "bad stack limit"); +- IA32_ONLY(assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1, "wrong")); ++#ifndef SHARK ++ IA32_ONLY(assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1, "wrong")); ++#endif // !SHARK + } + // Verify linkages. + interpreterState l = istate; + From andrew at icedtea.classpath.org Tue Sep 7 04:39:14 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 07 Sep 2010 11:39:14 +0000 Subject: /hg/icedtea6: S6510892, S6969395: Fix networking tests. Message-ID: changeset b17d4c7ff7a1 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=b17d4c7ff7a1 author: Andrew John Hughes date: Tue Sep 07 12:38:02 2010 +0100 S6510892, S6969395: Fix networking tests. 2010-09-07 Andrew John Hughes S6510892, S6969395: * Makefile.am: Add new patches. * NEWS: Updated. * patches/openjdk/6510892-httpserver_test.patch, * patches/openjdk/6969395-net_bugs.patch: Fix networking tests. diffstat: 5 files changed, 597 insertions(+), 1 deletion(-) ChangeLog | 9 Makefile.am | 4 NEWS | 2 patches/openjdk/6510892-httpserver_test.patch | 122 ++++++ patches/openjdk/6969395-net_bugs.patch | 461 +++++++++++++++++++++++++ diffs (truncated from 633 to 500 lines): diff -r dfc3c1061ec7 -r b17d4c7ff7a1 ChangeLog --- a/ChangeLog Fri Sep 03 11:00:55 2010 +0200 +++ b/ChangeLog Tue Sep 07 12:38:02 2010 +0100 @@ -1,3 +1,12 @@ 2010-09-03 Pavel Tisnovsky + + S6510892, S6969395: + * Makefile.am: Add new patches. + * NEWS: Updated. + * patches/openjdk/6510892-httpserver_test.patch, + * patches/openjdk/6969395-net_bugs.patch: + Fix networking tests. + 2010-09-03 Pavel Tisnovsky * Makefile.am: Fixed indentation, changes spaces to tab. diff -r dfc3c1061ec7 -r b17d4c7ff7a1 Makefile.am --- a/Makefile.am Fri Sep 03 11:00:55 2010 +0200 +++ b/Makefile.am Tue Sep 07 12:38:02 2010 +0100 @@ -293,7 +293,9 @@ ICEDTEA_PATCHES = \ patches/openjdk/6438179-systray_check.patch \ patches/openjdk/6951319-sparc_build_fixes.patch \ patches/icedtea-too-many-args.patch \ - patches/icedtea-jtreg-OpenGLContextInit.patch + patches/icedtea-jtreg-OpenGLContextInit.patch \ + patches/openjdk/6969395-net_bugs.patch \ + patches/openjdk/6510892-httpserver_test.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r dfc3c1061ec7 -r b17d4c7ff7a1 NEWS --- a/NEWS Fri Sep 03 11:00:55 2010 +0200 +++ b/NEWS Tue Sep 07 12:38:02 2010 +0100 @@ -710,6 +710,8 @@ New in release 1.9 (2010-XX-XX): - S6961732: FontMetrics.getLeading() may be negative in freetype-based OpenJDK builds - S6967533: ExceptionInInitializerError on systems with uninitialized clock - S6795060: VM crash on Linux in ICU layout library when processing \u0DDD (Sinhalese) + - S6969395: Synchronization of HttpServlet regression test with OpenJDK7 + - S6510892: com/sun/net/httpserver/bugs/B6361557.java fails * Fixes: - Provide font configuration for RHEL 6. - G266295: Provide font configuration for Gentoo. diff -r dfc3c1061ec7 -r b17d4c7ff7a1 patches/openjdk/6510892-httpserver_test.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6510892-httpserver_test.patch Tue Sep 07 12:38:02 2010 +0100 @@ -0,0 +1,122 @@ +# HG changeset patch +# User michaelm +# Date 1280510190 -3600 +# Node ID 4d72d0ec83f5e7870c3f38c0c238b8617273ee4d +# Parent 48e6f4807e5f2c4fea2ac435ea92a1a7531019d8 +6510892: com/sun/net/httpserver/bugs/B6361557.java fails +Reviewed-by: chegar + +diff -r 48e6f4807e5f -r 4d72d0ec83f5 test/com/sun/net/httpserver/bugs/B6361557.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/bugs/B6361557.java Thu Jul 29 22:02:45 2010 -0700 ++++ openjdk/jdk/test/com/sun/net/httpserver/bugs/B6361557.java Fri Jul 30 18:16:30 2010 +0100 +@@ -24,6 +24,7 @@ + /** + * @test + * @bug 6361557 ++ * @run main/othervm B6361557 + * @summary Lightweight HTTP server quickly runs out of file descriptors on Linux + */ + +@@ -63,6 +64,9 @@ + } + } + ++ final static String request = "GET /test/foo.html HTTP/1.1\r\nContent-length: 0\r\n\r\n"; ++ final static ByteBuffer requestBuf = ByteBuffer.allocate(64).put(request.getBytes()); ++ + public static void main (String[] args) throws Exception { + Handler handler = new Handler(); + InetSocketAddress addr = new InetSocketAddress (0); +@@ -73,48 +77,72 @@ + server.setExecutor (executor); + server.start (); + +- ByteBuffer buf = ByteBuffer.allocate (4096); + InetSocketAddress destaddr = new InetSocketAddress ( + "127.0.0.1", server.getAddress().getPort() + ); + System.out.println ("destaddr " + destaddr); + + Selector selector = Selector.open (); +- int i = 0; ++ int requests = 0; ++ int responses = 0; + while (true) { +- i ++; + int selres = selector.select (1); + Set selkeys = selector.selectedKeys(); + for (SelectionKey key : selkeys) { + if (key.isReadable()) { + SocketChannel chan = (SocketChannel)key.channel(); +- buf.clear(); ++ ByteBuffer buf = (ByteBuffer)key.attachment(); + try { +- int x = chan.read (buf); +- if (x == -1) { ++ int x = chan.read(buf); ++ if (x == -1 || responseComplete(buf)) { ++ key.attach(null); + chan.close(); ++ responses++; + } + } catch (IOException e) {} + } + } +- if (i< NUM) { +- SocketChannel schan = SocketChannel.open (destaddr); +- String cmd = "GET /test/foo.html HTTP/1.1\r\nContent-length: 0\r\n\r\n"; +- buf.rewind (); +- buf.put (cmd.getBytes()); +- buf.flip(); ++ if (requests < NUM) { ++ SocketChannel schan = SocketChannel.open(destaddr); ++ requestBuf.rewind(); + int c = 0; +- while (buf.remaining() > 0) { +- c += schan.write (buf); ++ while (requestBuf.remaining() > 0) { ++ c += schan.write(requestBuf); + } +- schan.configureBlocking (false); +- schan.register (selector, SelectionKey.OP_READ, null); +- } else { ++ schan.configureBlocking(false); ++ schan.register(selector, SelectionKey.OP_READ, ByteBuffer.allocate(100)); ++ requests++; ++ } ++ if (responses == NUM) { + System.out.println ("Finished clients"); +- server.stop (1); +- executor.shutdown (); +- return; ++ break; + } + } ++ server.stop (1); ++ selector.close(); ++ executor.shutdown (); ++ ++ } ++ ++ /* Look for CR LF CR LF */ ++ static boolean responseComplete(ByteBuffer buf) { ++ int pos = buf.position(); ++ buf.flip(); ++ byte[] lookingFor = new byte[] {'\r', '\n', '\r', '\n' }; ++ int lookingForCount = 0; ++ while (buf.hasRemaining()) { ++ byte b = buf.get(); ++ if (b == lookingFor[lookingForCount]) { ++ lookingForCount++; ++ if (lookingForCount == 4) { ++ return true; ++ } ++ } else { ++ lookingForCount = 0; ++ } ++ } ++ buf.position(pos); ++ buf.limit(buf.capacity()); ++ return false; + } + } diff -r dfc3c1061ec7 -r b17d4c7ff7a1 patches/openjdk/6969395-net_bugs.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6969395-net_bugs.patch Tue Sep 07 12:38:02 2010 +0100 @@ -0,0 +1,461 @@ +# HG changeset patch +# User ptisnovs +# Date 1279815765 -7200 +# Node ID 13939cd625076ff7cfd40556a9c44e5e9eb13094 +# Parent f63ef918ce3a1c4d403a85796dbb5a288539e46e +6969395: TEST_BUG: Tests in java/net sun/net problems +Summary: Synchronization of HttpServlet regression test with OpenJDK7 +Reviewed-by: chegar + +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test1.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test1.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test1.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,17 +24,15 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test1 + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import java.security.cert.*; + import javax.net.ssl.*; + + /* basic http/s connectivity test +@@ -86,9 +84,12 @@ + System.out.println ("OK"); + } finally { + delay(); +- s1.stop(2); +- s2.stop(2); +- executor.shutdown (); ++ if (s1 != null) ++ s1.stop(2); ++ if (s2 != null) ++ s2.stop(2); ++ if (executor != null) ++ executor.shutdown (); + } + } + +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test11.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test11.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test11.java Thu Jul 22 18:22:45 2010 +0200 +@@ -28,7 +28,6 @@ + */ + + import java.net.*; +-import java.util.*; + import java.util.concurrent.*; + import java.io.*; + import com.sun.net.httpserver.*; +@@ -52,22 +51,25 @@ + + public static void main (String[] args) throws Exception { + System.out.print ("Test 11: "); +- HttpServer server = HttpServer.create (new InetSocketAddress(0), 0); +- HttpContext ctx = server.createContext ( +- "/foo/bar/", new Handler () +- ); +- ExecutorService s = Executors.newCachedThreadPool(); +- server.setExecutor (s); +- server.start (); +- URL url = new URL ("http://localhost:" + server.getAddress().getPort()+ +- "/Foo/bar/test.html"); +- HttpURLConnection urlc = (HttpURLConnection)url.openConnection(); +- int r = urlc.getResponseCode(); +- System.out.println ("OK"); +- s.shutdown(); +- server.stop(5); +- if (r == 200) { +- throw new RuntimeException ("wrong response received"); ++ HttpServer server = HttpServer.create(new InetSocketAddress(0), 0); ++ ExecutorService s = Executors.newCachedThreadPool(); ++ try { ++ HttpContext ctx = server.createContext ( ++ "/foo/bar/", new Handler () ++ ); ++ s = Executors.newCachedThreadPool(); ++ server.start (); ++ URL url = new URL ("http://localhost:" + server.getAddress().getPort()+ ++ "/Foo/bar/test.html"); ++ HttpURLConnection urlc = (HttpURLConnection)url.openConnection(); ++ int r = urlc.getResponseCode(); ++ if (r == 200) { ++ throw new RuntimeException ("wrong response received"); ++ } ++ System.out.println ("OK"); ++ } finally { ++ s.shutdown(); ++ server.stop(2); + } + } + } +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test12.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test12.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test12.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,17 +24,15 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test12 + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import java.security.cert.*; + import javax.net.ssl.*; + + /* basic http/s connectivity test +@@ -85,9 +83,12 @@ + System.out.println ("OK"); + } finally { + delay(); +- s1.stop(2); +- s2.stop(2); +- executor.shutdown (); ++ if (s1 != null) ++ s1.stop(2); ++ if (s2 != null) ++ s2.stop(2); ++ if (executor != null) ++ executor.shutdown (); + } + } + +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test13.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test13.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test13.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,17 +24,16 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test13 + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import java.security.cert.*; ++ + import javax.net.ssl.*; + + /* basic http/s connectivity test +@@ -81,9 +80,12 @@ + System.out.println ("OK"); + } finally { + delay(); +- s1.stop(2); +- s2.stop(2); +- executor.shutdown (); ++ if (s1 != null) ++ s1.stop(2); ++ if (s2 != null) ++ s2.stop(2); ++ if (executor != null) ++ executor.shutdown (); + } + } + +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test6a.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test6a.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test6a.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,17 +24,15 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test6a + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import javax.security.auth.callback.*; + import javax.net.ssl.*; + + /** +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test7a.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test7a.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test7a.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,18 +24,15 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test7a + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; +-import java.util.logging.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import javax.security.auth.callback.*; + import javax.net.ssl.*; + + /** +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test8a.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test8a.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test8a.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,18 +24,15 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test8a + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; +-import java.util.logging.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import javax.security.auth.callback.*; + import javax.net.ssl.*; + + /** +@@ -50,46 +47,50 @@ + //h.setLevel (Level.INFO); + //log.addHandler (h); + //log.setLevel (Level.INFO); +- Handler handler = new Handler(); +- InetSocketAddress addr = new InetSocketAddress (0); +- HttpsServer server = HttpsServer.create (addr, 0); +- HttpContext ctx = server.createContext ("/test", handler); +- ExecutorService executor = Executors.newCachedThreadPool(); +- SSLContext ssl = new SimpleSSLContext(System.getProperty("test.src")).get(); +- server.setHttpsConfigurator(new HttpsConfigurator (ssl)); +- server.setExecutor (executor); +- server.start (); ++ HttpsServer server = null; ++ ExecutorService executor = null; ++ try { ++ Handler handler = new Handler(); ++ InetSocketAddress addr = new InetSocketAddress (0); ++ server = HttpsServer.create (addr, 0); ++ HttpContext ctx = server.createContext ("/test", handler); ++ executor = Executors.newCachedThreadPool(); ++ SSLContext ssl = new SimpleSSLContext(System.getProperty("test.src")).get(); ++ server.setHttpsConfigurator(new HttpsConfigurator (ssl)); ++ server.setExecutor (executor); ++ server.start (); + +- URL url = new URL ("https://localhost:"+server.getAddress().getPort()+"/test/foo.html"); +- System.out.print ("Test8a: " ); +- HttpsURLConnection urlc = (HttpsURLConnection)url.openConnection (); +- urlc.setDoOutput (true); +- urlc.setRequestMethod ("POST"); +- urlc.setHostnameVerifier (new DummyVerifier()); +- urlc.setSSLSocketFactory (ssl.getSocketFactory()); +- OutputStream os = new BufferedOutputStream (urlc.getOutputStream(), 8000); +- for (int i=0; i http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=544 Summary: shark fails to build on icedtea7 trunk 20100907 Product: IcedTea Version: 7-hg Platform: all OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: Shark AssignedTo: unassigned at icedtea.classpath.org ReportedBy: doko at ubuntu.com this is with PR icedtea/543 fixed, a zero build succeeding, fails only with shark ... make[5]: Entering directory `/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/openjdk/hotspot/make' Makefile:375: target `/Xusage.txt' given more than once in the same rule. cp /scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/openjdk.build/hotspot/outputdir/linux_amd64_docs/jvmti.html /scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/openjdk.build/hotspot/import/docs/platform/jvmti/jvmti.html make[5]: *** No rule to make target `/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/openjdk.build/hotspot/import/jre/lib/amd64/libjsig.so', needed by `generic_export'. Stop. make[5]: Leaving directory `/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/openjdk/hotspot/make' make[4]: *** [export_product] Error 2 make[4]: Leaving directory `/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/openjdk/hotspot/make' make[3]: *** [hotspot-build] Error 2 make[3]: Leaving directory `/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/openjdk' make[2]: *** [build_product_image] Error 2 make[2]: Leaving directory `/scratch/packages/openjdk/b106/openjdk-7-7b106~pre1/build/openjdk' make[1]: *** [stamps/icedtea.stamp] Error 2 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 7 04:53:56 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 07 Sep 2010 11:53:56 +0000 Subject: [Bug 544] shark fails to build on icedtea7 trunk 20100907 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=544 ------- Comment #1 from doko at ubuntu.com 2010-09-07 11:53 ------- expected in openjdk.build/hotspot/import/jre/lib/amd64/libjsig.so available in openjdk.build/hotspot/outputdir/linux_amd64_zero/product/libjsig.so -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 7 05:05:10 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 07 Sep 2010 12:05:10 +0000 Subject: [Bug 543] zero fails to build on icedtea7 trunk 20100907 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=543 ------- Comment #3 from gnu_andrew at member.fsf.org 2010-09-07 12:05 ------- Not promoted until b109, so b106-b108 are all broken wrt zero. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ahughes at redhat.com Tue Sep 7 05:09:04 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Tue, 7 Sep 2010 13:09:04 +0100 Subject: 1.9 BRANCH FROZEN FOR 1.9.0 RELEASE Message-ID: <20100907120904.GA12529@bree.middle-earth.co.uk> As subject. Please do NOT commit to the 1.9 branch until the release later today. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ahughes at redhat.com Tue Sep 7 05:17:29 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Tue, 7 Sep 2010 13:17:29 +0100 Subject: Bug ID #6361557 test - backport request In-Reply-To: <4C82F923.5090306@lucasit.com> References: <4C82F923.5090306@lucasit.com> Message-ID: <20100907121729.GB12529@bree.middle-earth.co.uk> On 20:57 Sat 04 Sep , DJ Lucas wrote: > Hello, > > com/sun/net/httpserver/bugs/B6361557.java > > That particular bug was closed invalid > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6361557 > > As was this one (which is marked as duplicate of the above bug) > http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6402102 > > Actually, it apperas that the testcase was invalid and has been fixed in > openjdk-7: > > http://hg.openjdk.java.net/jdk7/jdk7/jdk/rev/4d72d0ec83f5 > > It doesn't apply directly as the 1000 limit isn't included when that > change occurred (or it was elsewhere at the time). Probably should go > to OpenJDK list, but since you are approaching release, I figured I'd > bring it up here first and see if maybe it can be fixed before the > release of 1.9. > > I'll be trying to get the remaining 24 failures/errors into order (at > least accounted for) over this weekend as I am kid free for a change. > > -- DJ Lucas > > -- > This message has been scanned for viruses and > dangerous content, and is believed to be clean. > http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=b17d4c7ff7a1 Will be in 1.9 too shortly. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From andrew at icedtea.classpath.org Tue Sep 7 05:26:42 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 07 Sep 2010 12:26:42 +0000 Subject: /hg/release/icedtea6-1.9: S6510892, S6969395: Fix networking tests. Message-ID: changeset a4f19da69cea in /hg/release/icedtea6-1.9 details: http://icedtea.classpath.org/hg/release/icedtea6-1.9?cmd=changeset;node=a4f19da69cea author: Andrew John Hughes date: Tue Sep 07 12:38:02 2010 +0100 S6510892, S6969395: Fix networking tests. 2010-09-07 Andrew John Hughes S6510892, S6969395: * Makefile.am: Add new patches. * NEWS: Updated. * patches/openjdk/6510892-httpserver_test.patch, * patches/openjdk/6969395-net_bugs.patch: Fix networking tests. diffstat: 5 files changed, 597 insertions(+), 1 deletion(-) ChangeLog | 9 Makefile.am | 4 NEWS | 2 patches/openjdk/6510892-httpserver_test.patch | 122 ++++++ patches/openjdk/6969395-net_bugs.patch | 461 +++++++++++++++++++++++++ diffs (truncated from 633 to 500 lines): diff -r 7b05619e7069 -r a4f19da69cea ChangeLog --- a/ChangeLog Fri Sep 03 11:02:16 2010 +0200 +++ b/ChangeLog Tue Sep 07 12:38:02 2010 +0100 @@ -1,3 +1,12 @@ 2010-09-03 Pavel Tisnovsky + + S6510892, S6969395: + * Makefile.am: Add new patches. + * NEWS: Updated. + * patches/openjdk/6510892-httpserver_test.patch, + * patches/openjdk/6969395-net_bugs.patch: + Fix networking tests. + 2010-09-03 Pavel Tisnovsky * Makefile.am: Fixed indentation, changes spaces to tab. diff -r 7b05619e7069 -r a4f19da69cea Makefile.am --- a/Makefile.am Fri Sep 03 11:02:16 2010 +0200 +++ b/Makefile.am Tue Sep 07 12:38:02 2010 +0100 @@ -292,7 +292,9 @@ ICEDTEA_PATCHES = \ patches/openjdk/6795060-icu_crash.patch \ patches/openjdk/6951319-sparc_build_fixes.patch \ patches/icedtea-too-many-args.patch \ - patches/icedtea-jtreg-OpenGLContextInit.patch + patches/icedtea-jtreg-OpenGLContextInit.patch \ + patches/openjdk/6969395-net_bugs.patch \ + patches/openjdk/6510892-httpserver_test.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 7b05619e7069 -r a4f19da69cea NEWS --- a/NEWS Fri Sep 03 11:02:16 2010 +0200 +++ b/NEWS Tue Sep 07 12:38:02 2010 +0100 @@ -701,6 +701,8 @@ New in release 1.9 (2010-XX-XX): - S6961732: FontMetrics.getLeading() may be negative in freetype-based OpenJDK builds - S6967533: ExceptionInInitializerError on systems with uninitialized clock - S6795060: VM crash on Linux in ICU layout library when processing \u0DDD (Sinhalese) + - S6969395: Synchronization of HttpServlet regression test with OpenJDK7 + - S6510892: com/sun/net/httpserver/bugs/B6361557.java fails * Fixes: - Provide font configuration for RHEL 6. - G266295: Provide font configuration for Gentoo. diff -r 7b05619e7069 -r a4f19da69cea patches/openjdk/6510892-httpserver_test.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6510892-httpserver_test.patch Tue Sep 07 12:38:02 2010 +0100 @@ -0,0 +1,122 @@ +# HG changeset patch +# User michaelm +# Date 1280510190 -3600 +# Node ID 4d72d0ec83f5e7870c3f38c0c238b8617273ee4d +# Parent 48e6f4807e5f2c4fea2ac435ea92a1a7531019d8 +6510892: com/sun/net/httpserver/bugs/B6361557.java fails +Reviewed-by: chegar + +diff -r 48e6f4807e5f -r 4d72d0ec83f5 test/com/sun/net/httpserver/bugs/B6361557.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/bugs/B6361557.java Thu Jul 29 22:02:45 2010 -0700 ++++ openjdk/jdk/test/com/sun/net/httpserver/bugs/B6361557.java Fri Jul 30 18:16:30 2010 +0100 +@@ -24,6 +24,7 @@ + /** + * @test + * @bug 6361557 ++ * @run main/othervm B6361557 + * @summary Lightweight HTTP server quickly runs out of file descriptors on Linux + */ + +@@ -63,6 +64,9 @@ + } + } + ++ final static String request = "GET /test/foo.html HTTP/1.1\r\nContent-length: 0\r\n\r\n"; ++ final static ByteBuffer requestBuf = ByteBuffer.allocate(64).put(request.getBytes()); ++ + public static void main (String[] args) throws Exception { + Handler handler = new Handler(); + InetSocketAddress addr = new InetSocketAddress (0); +@@ -73,48 +77,72 @@ + server.setExecutor (executor); + server.start (); + +- ByteBuffer buf = ByteBuffer.allocate (4096); + InetSocketAddress destaddr = new InetSocketAddress ( + "127.0.0.1", server.getAddress().getPort() + ); + System.out.println ("destaddr " + destaddr); + + Selector selector = Selector.open (); +- int i = 0; ++ int requests = 0; ++ int responses = 0; + while (true) { +- i ++; + int selres = selector.select (1); + Set selkeys = selector.selectedKeys(); + for (SelectionKey key : selkeys) { + if (key.isReadable()) { + SocketChannel chan = (SocketChannel)key.channel(); +- buf.clear(); ++ ByteBuffer buf = (ByteBuffer)key.attachment(); + try { +- int x = chan.read (buf); +- if (x == -1) { ++ int x = chan.read(buf); ++ if (x == -1 || responseComplete(buf)) { ++ key.attach(null); + chan.close(); ++ responses++; + } + } catch (IOException e) {} + } + } +- if (i< NUM) { +- SocketChannel schan = SocketChannel.open (destaddr); +- String cmd = "GET /test/foo.html HTTP/1.1\r\nContent-length: 0\r\n\r\n"; +- buf.rewind (); +- buf.put (cmd.getBytes()); +- buf.flip(); ++ if (requests < NUM) { ++ SocketChannel schan = SocketChannel.open(destaddr); ++ requestBuf.rewind(); + int c = 0; +- while (buf.remaining() > 0) { +- c += schan.write (buf); ++ while (requestBuf.remaining() > 0) { ++ c += schan.write(requestBuf); + } +- schan.configureBlocking (false); +- schan.register (selector, SelectionKey.OP_READ, null); +- } else { ++ schan.configureBlocking(false); ++ schan.register(selector, SelectionKey.OP_READ, ByteBuffer.allocate(100)); ++ requests++; ++ } ++ if (responses == NUM) { + System.out.println ("Finished clients"); +- server.stop (1); +- executor.shutdown (); +- return; ++ break; + } + } ++ server.stop (1); ++ selector.close(); ++ executor.shutdown (); ++ ++ } ++ ++ /* Look for CR LF CR LF */ ++ static boolean responseComplete(ByteBuffer buf) { ++ int pos = buf.position(); ++ buf.flip(); ++ byte[] lookingFor = new byte[] {'\r', '\n', '\r', '\n' }; ++ int lookingForCount = 0; ++ while (buf.hasRemaining()) { ++ byte b = buf.get(); ++ if (b == lookingFor[lookingForCount]) { ++ lookingForCount++; ++ if (lookingForCount == 4) { ++ return true; ++ } ++ } else { ++ lookingForCount = 0; ++ } ++ } ++ buf.position(pos); ++ buf.limit(buf.capacity()); ++ return false; + } + } diff -r 7b05619e7069 -r a4f19da69cea patches/openjdk/6969395-net_bugs.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6969395-net_bugs.patch Tue Sep 07 12:38:02 2010 +0100 @@ -0,0 +1,461 @@ +# HG changeset patch +# User ptisnovs +# Date 1279815765 -7200 +# Node ID 13939cd625076ff7cfd40556a9c44e5e9eb13094 +# Parent f63ef918ce3a1c4d403a85796dbb5a288539e46e +6969395: TEST_BUG: Tests in java/net sun/net problems +Summary: Synchronization of HttpServlet regression test with OpenJDK7 +Reviewed-by: chegar + +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test1.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test1.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test1.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,17 +24,15 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test1 + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import java.security.cert.*; + import javax.net.ssl.*; + + /* basic http/s connectivity test +@@ -86,9 +84,12 @@ + System.out.println ("OK"); + } finally { + delay(); +- s1.stop(2); +- s2.stop(2); +- executor.shutdown (); ++ if (s1 != null) ++ s1.stop(2); ++ if (s2 != null) ++ s2.stop(2); ++ if (executor != null) ++ executor.shutdown (); + } + } + +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test11.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test11.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test11.java Thu Jul 22 18:22:45 2010 +0200 +@@ -28,7 +28,6 @@ + */ + + import java.net.*; +-import java.util.*; + import java.util.concurrent.*; + import java.io.*; + import com.sun.net.httpserver.*; +@@ -52,22 +51,25 @@ + + public static void main (String[] args) throws Exception { + System.out.print ("Test 11: "); +- HttpServer server = HttpServer.create (new InetSocketAddress(0), 0); +- HttpContext ctx = server.createContext ( +- "/foo/bar/", new Handler () +- ); +- ExecutorService s = Executors.newCachedThreadPool(); +- server.setExecutor (s); +- server.start (); +- URL url = new URL ("http://localhost:" + server.getAddress().getPort()+ +- "/Foo/bar/test.html"); +- HttpURLConnection urlc = (HttpURLConnection)url.openConnection(); +- int r = urlc.getResponseCode(); +- System.out.println ("OK"); +- s.shutdown(); +- server.stop(5); +- if (r == 200) { +- throw new RuntimeException ("wrong response received"); ++ HttpServer server = HttpServer.create(new InetSocketAddress(0), 0); ++ ExecutorService s = Executors.newCachedThreadPool(); ++ try { ++ HttpContext ctx = server.createContext ( ++ "/foo/bar/", new Handler () ++ ); ++ s = Executors.newCachedThreadPool(); ++ server.start (); ++ URL url = new URL ("http://localhost:" + server.getAddress().getPort()+ ++ "/Foo/bar/test.html"); ++ HttpURLConnection urlc = (HttpURLConnection)url.openConnection(); ++ int r = urlc.getResponseCode(); ++ if (r == 200) { ++ throw new RuntimeException ("wrong response received"); ++ } ++ System.out.println ("OK"); ++ } finally { ++ s.shutdown(); ++ server.stop(2); + } + } + } +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test12.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test12.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test12.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,17 +24,15 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test12 + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import java.security.cert.*; + import javax.net.ssl.*; + + /* basic http/s connectivity test +@@ -85,9 +83,12 @@ + System.out.println ("OK"); + } finally { + delay(); +- s1.stop(2); +- s2.stop(2); +- executor.shutdown (); ++ if (s1 != null) ++ s1.stop(2); ++ if (s2 != null) ++ s2.stop(2); ++ if (executor != null) ++ executor.shutdown (); + } + } + +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test13.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test13.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test13.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,17 +24,16 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test13 + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import java.security.cert.*; ++ + import javax.net.ssl.*; + + /* basic http/s connectivity test +@@ -81,9 +80,12 @@ + System.out.println ("OK"); + } finally { + delay(); +- s1.stop(2); +- s2.stop(2); +- executor.shutdown (); ++ if (s1 != null) ++ s1.stop(2); ++ if (s2 != null) ++ s2.stop(2); ++ if (executor != null) ++ executor.shutdown (); + } + } + +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test6a.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test6a.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test6a.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,17 +24,15 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test6a + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import javax.security.auth.callback.*; + import javax.net.ssl.*; + + /** +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test7a.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test7a.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test7a.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,18 +24,15 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test7a + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; +-import java.util.logging.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import javax.security.auth.callback.*; + import javax.net.ssl.*; + + /** +diff -r f63ef918ce3a -r 13939cd62507 test/com/sun/net/httpserver/Test8a.java +--- openjdk.orig/jdk/test/com/sun/net/httpserver/Test8a.java Fri Jul 25 14:46:38 2008 +0400 ++++ openjdk/jdk/test/com/sun/net/httpserver/Test8a.java Thu Jul 22 18:22:45 2010 +0200 +@@ -24,18 +24,15 @@ + /** + * @test + * @bug 6270015 ++ * @run main/othervm Test8a + * @summary Light weight HTTP server + */ + + import com.sun.net.httpserver.*; + +-import java.util.*; + import java.util.concurrent.*; +-import java.util.logging.*; + import java.io.*; + import java.net.*; +-import java.security.*; +-import javax.security.auth.callback.*; + import javax.net.ssl.*; + + /** +@@ -50,46 +47,50 @@ + //h.setLevel (Level.INFO); + //log.addHandler (h); + //log.setLevel (Level.INFO); +- Handler handler = new Handler(); +- InetSocketAddress addr = new InetSocketAddress (0); +- HttpsServer server = HttpsServer.create (addr, 0); +- HttpContext ctx = server.createContext ("/test", handler); +- ExecutorService executor = Executors.newCachedThreadPool(); +- SSLContext ssl = new SimpleSSLContext(System.getProperty("test.src")).get(); +- server.setHttpsConfigurator(new HttpsConfigurator (ssl)); +- server.setExecutor (executor); +- server.start (); ++ HttpsServer server = null; ++ ExecutorService executor = null; ++ try { ++ Handler handler = new Handler(); ++ InetSocketAddress addr = new InetSocketAddress (0); ++ server = HttpsServer.create (addr, 0); ++ HttpContext ctx = server.createContext ("/test", handler); ++ executor = Executors.newCachedThreadPool(); ++ SSLContext ssl = new SimpleSSLContext(System.getProperty("test.src")).get(); ++ server.setHttpsConfigurator(new HttpsConfigurator (ssl)); ++ server.setExecutor (executor); ++ server.start (); + +- URL url = new URL ("https://localhost:"+server.getAddress().getPort()+"/test/foo.html"); +- System.out.print ("Test8a: " ); +- HttpsURLConnection urlc = (HttpsURLConnection)url.openConnection (); +- urlc.setDoOutput (true); +- urlc.setRequestMethod ("POST"); +- urlc.setHostnameVerifier (new DummyVerifier()); +- urlc.setSSLSocketFactory (ssl.getSocketFactory()); +- OutputStream os = new BufferedOutputStream (urlc.getOutputStream(), 8000); +- for (int i=0; i changeset fd4de15932fa in /hg/release/icedtea6-1.9 details: http://icedtea.classpath.org/hg/release/icedtea6-1.9?cmd=changeset;node=fd4de15932fa author: andrew date: Tue Sep 07 13:46:53 2010 +0100 NEWS and version updates for 1.9.0 release. 2010-09-07 Andrew John Hughes * NEWS: Add b19 issues and set date of 1.9. * configure.ac: Change version to 1.9 from 1.9pre. diffstat: 3 files changed, 395 insertions(+), 3 deletions(-) ChangeLog | 5 NEWS | 391 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++- configure.ac | 2 diffs (436 lines): diff -r a4f19da69cea -r fd4de15932fa ChangeLog --- a/ChangeLog Tue Sep 07 12:38:02 2010 +0100 +++ b/ChangeLog Tue Sep 07 13:46:53 2010 +0100 @@ -1,3 +1,8 @@ 2010-09-07 Andrew John Hughes + + * NEWS: Add b19 issues and set date of 1.9. + * configure.ac: Change version to 1.9 from 1.9pre. + 2010-09-07 Andrew John Hughes S6510892, S6969395: diff -r a4f19da69cea -r fd4de15932fa NEWS --- a/NEWS Tue Sep 07 12:38:02 2010 +0100 +++ b/NEWS Tue Sep 07 13:46:53 2010 +0100 @@ -8,7 +8,7 @@ GX - http://bugs.gentoo.org/show_bug.cg CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY -New in release 1.9 (2010-XX-XX): +New in release 1.9 (2010-09-07): * Updated to OpenJDK6 b20 with HotSpot 17. - S4360113: Evict nmethods when code cache gets full @@ -695,6 +695,393 @@ New in release 1.9 (2010-XX-XX): - S6961536: Nimbus code using @Override breaks build with source/target 1.5 - S6961870: More rebranding fixes for templates/gpl-*-header files - S6962193: Rebrand some Zero files +* Updated to OpenJDK6 b19 with HotSpot 16. + - S4670071: loadClassInternal is too restrictive. + - S4766230: Hotspot vtable inconsistencies cause core dumps. 6579515. 6582242. + - S4997835: RFE: crash dump will only be created when running w/ -XX:+ShowMessageBoxOnError + - S5057225: Remove useless I2L conversions + - S6378821: bitCount() should use POPC on SPARC processors and AMD+10h + - S6442502: assert(bits,"Use TypePtr for NULL") on linux-x86 + - S6449385: JCK test dup2_x200106m1 fails with Segmentation Fault on x86 + - S6484956: G1: improve evacuation pause efficiency + - S6484957: G1: parallel concurrent refinement + - S6484959: G1: introduce survivor spaces + - S6490395: G1: Tidy up command line flags. + - S6511613: javac unexpectedly doesn't fail in some cases if an annotation processor specified + - S6539464: Math.log() produces inconsistent results between successive runs. + - S6541756: Reduce executable C-heap + - S6543938: G1: remove the concept of popularity + - S6567360: 3/4 SIGBUS in jvmti RawMonitor magic check for unaligned bad monitor pointer + - S6589834: deoptimization problem with -XX:+DeoptimizeALot + - S6603316: Improve instrumentation for classes loaded at startup + - S6604422: G1: re-use half-promoted regions + - S6614957: HttpsURLConnection not using the set SSLSocketFactory for creating all its Sockets + - S6626217: Fixed loader constraint array handling + - S6632169: HttpClient and HttpsClient should not try to reverse lookup IP address of a proxy server + - S6633872: Policy/PolicyFile leak dynamic ProtectionDomains. + - S6634138: Source generated in last round not compiled + - S6636138: UseSuperWord enabled failure + - S6639665: ThreadGroup finalizer allows creation of false root ThreadGroups + - S6655638: dynamic languages need method handles + - S6655646: dynamic languages need dynamically linked call sites + - S6675856: Open charset tests + - S6676423: (prefs) Opensource unit/regression tests for java.util.prefs + - S6680135: A number of test/closed/java/awt/Focus/* tests should be opened + - S6684007: PrintAssembly plugin not available for linux or windows + - S6686273: Some AWT reg. tests should be moved to open repository (for CRs 6444769, 6480547, and 6560348) + - S6689653: JMapPerm fails with UseConcMarkSweepIncGC and compressed oops off + - S6690928: Use spinning in combination with yields for workstealing termination. + - S6692899: CMS: many vm.parallel_class_loading tests fail with assert "missing Printezis mark" + - S6699669: Hotspot server leaves synchronized block with monitor in bad state + - S6700789: G1: Enable use of compressed oops with G1 heaps + - S6700941: G1: allocation spec missing for some G1 classes + - S6709742: find_base_for_derived's use of Ideal NULL is unsafe causing crashes during register allocation + - S6711117: Assertion in 64bit server vm (flat != TypePtr::BOTTOM,"cannot alias-analyze an untyped ptr") + - S6718964: Swing border tests should be open source + - S6718965: Swing color chooser tests should be open source + - S6720309: G1: don't synchronously update RSet during evacuation pauses + - S6720334: G1: don't update RSets of collection set regions during an evacuation pause + - S6724345: incorrect method resolution for enum classes entered as source files + - S6728271: G1: Cleanup G1CollectedHeap::get_gc_alloc_regions() + - S6736390: File TOCTOU deserialization vulnerability + - S6737700: api/javax_swing/table/DefaultTableCellRenderer/index.html#getset:DefaultTableCellRenderer + - S6741757: minor ctw improvements + - S6745393: Inflater/Deflater clone issue + - S6759521: Move Bidi test programs from closed to open. + - S6760309: G1: update remembered sets during Full GCs + - S6761600: Use sse 4.2 in intrinsics + - S6761856: OpenJDK: vertical text metrics may be significanly different from those returned by Sun JDK + - S6763530: Cannot decode PublicKey (Proider SunPKCS11, curve prime256v1) + - S6766775: X509 certificate hostname checking is broken in JDK1.6.0_10 + - S6771432: createSocket() - smpatch fails using 1.6.0_10 because of "Unconnected sockets not implemented" + - S6772368: REGRESSION:tomcat crashed twice with JDK 7 + - S6772683: Thread.isInterrupted() fails to return true on multiprocessor PC + - S6778657: Casts in SharedRuntime::f2i, f2l, d2i and d2l rely on undefined C++ behaviour + - S6778662: fixes 64-bits libraries directory search paths on linux + - S6778669: Patch from Red Hat -- fixes compilation errors + - S6781583: Hotspot build fails on linux 64 bit platform with gcc 4.3.2 + - S6782232: assert("CreateEx must be first instruction in block" ) + - S6782260: Memory leak in CodeBuffer::create_patch_overflow + - S6783381: NUMA allocator: don't pretouch eden space with UseNUMA + - S6784930: server jvm fails with assert(!n->is_SpillCopy(),"") + - S6786346: intermittent Internal Error (src/share/vm/memory/cardTableModRefBS.cpp:226) + - S6786503: Overflow list performance can be improved + - S6786948: SA on core file fails on solaris-amd64 if vm started with -XX:+StartAttachListener + - S6787106: Hotspot 32 bit build fails on platforms having different definitions for intptr_t & int32_t + - S6787254: Work queue capacity can be increased substantially on some platforms + - S6788347: C2Compiler crash 6u7 + - S6788376: allow to ignore unrecognized VM options + - S6788527: Server vm intermittently fails with assertion "live value must not be garbage" with fastdebug bits + - S6788797: Fork HS14 to HS15 - renumber Major and build numbers of JVM + - S6790182: matcher.cpp:1375: assert(false,"bad AD file") + - S6790209: server VM fails with assert(will_link,"_new: typeflow responsibility") + - S6791132: bad control in autobox split code + - S6791168: Fix invalid code in bytecodeInterpreter that can cause gcc ICE + - S6791178: Specialize for zero as the compressed oop vm heap base + - S6791572: assert("duplicating node that's already been matched") + - S6791656: nsk defclass0 asserts handles.hpp + - S6791815: Fix for 6471657 can cause deadlock on non-Solaris platforms when initializing direct buffer support + - S6791852: assert(b->_nodes[insidx] == n,"got insidx set incorrectly") + - S6792301: StackAlignmentInBytes not honored for compiled native methods + - S6792421: assert(_bitMap->isMarked(addr+size-1),inconsistent Printezis mark) + - S6792705: Add JAR file to bootclasspath when using AggressiveOpts + - S6793825: Missing include dependancies for GCC without predefined headers + - S6793828: G1: invariant: queues are empty when activated + - S6794939: assert(_base == OopPtr,"subclass must override cast_to_ptr_type") + - S6795362: 32bit server compiler leads to wrong results on solaris-x86 + - S6795465: Crash in assembler_sparc.cpp with client compiler on solaris-sparc + - S6795913: A few remaining wrong casts need to be fixed for building hotspot successfully on Mac OS. + - S6796746: rename LoadC (char) opcode class to LoadUS (unsigned short) + - S6797305: Add LoadUB and LoadUI opcode class + - S6797754: G1: combined bugfix + - S6797870: Add -XX:+{HeapDump,PrintClassHistogram}{Before,After}FullGC + - S6798785: Crash in OopFlow::build_oop_map: incorrect comparison of 64bit pointers + - S6798898: CMS: bugs related to class unloading + - S6799141: Build with --hash-style=both so that binaries can work on SuSE 10 + - S6799452: HotSpot tests Makefile should take care of ALT_SLASH_JAVA + - S6799693: Server compiler leads to data corruption when expression throws an Exception + - S6800154: Add comments to long_by_long_mulhi() for better understandability + - S6800586: -XX:+PrintGCDateStamps is using mt-unsafe localtime function + - S6801625: CDS: HeapDump tests crash with internal error in compactingPermGenGen.cpp + - S6802413: G1: G1FixedSurvivorSpaceSize should be converted into regions in calculate_survivors_policy() + - S6802499: EA: assert(false,"unknown node on this path") + - S6803688: Integrate latest JAX-WS (2.1.6) in to JDK 6u14 + - S6804746: G1: guarantee(variance() > -1.0,"variance should be >= 0") (due to evacuation failure) + - S6805427: adlc compiler may generate incorrect machnode emission code + - S6805522: Server VM fails with assertion (block1->start() != block2->start(),"successors have unique bcis") + - S6805724: ModLNode::Ideal() generates functionally incorrect graph when divisor is any (2^k-1) constant. + - S6805748: Assertion "don't reset to 0 -- could be mistaken for never-executed" in CompilationPolicy + - S6805950: Typos in andL_rReg_imm instructions in x86_64.ad + - S6806046: Hotspot build error when compiled from Visual Studio + - S6806226: Signed integer overflow in growable array code causes JVM crash + - S6807084: AutoBox elimination is broken with compressed oops + - S6807345: Bump HS15 build number to 02 + - S6807963: need tool to make sense of LogCompilaton output + - S6808322: ParNew, CMS, G1: ParGCAllocBuffer overflow + - S6808589: Merge vm_version_x86_{32,64}.{cpp,hpp} + - S6809798: SafePointScalarObject node placed into incorrect block during GCM + - S6810474: par compact - crash in summary_phase with very full heap + - S6810653: Change String cache class used by Hotspot from String to StringValue + - S6810672: Comment typos + - S6810698: G1: two small bugs in the sparse remembered sets + - S6810845: Performance regression in mpegaudio on x64 + - S6810855: KILL vs. TEMP ordering restrictions are too strong + - S6811267: Fix for 6809798 broke linux build + - S6811384: MacroAssembler::serialize_memory may touch next page on amd64 + - S6812297: update project creation for Visual Studio 2005-2008 + - S6812428: G1: Error: assert(ret || obj_in_cs(obj),"sanity") + - S6812587: Use auxv to determine SPARC hardware features on Solaris + - S6812678: macro assembler needs delayed binding of a few constants (for 6655638) + - S6812721: Block's frequency should not be NaN + - S6812831: factor duplicated assembly code for megamorphic invokeinterface (for 6655638) + - S6812971: SA: re-attaching to process fails + - S6813212: factor duplicated assembly code for general subclass check (for 6655638) + - S6814467: G1: small fixes related to concurrent marking verboseness + - S6814552: par compact - some compilers fail to optimize bitmap code + - S6814575: Update copyright year + - S6814659: separable cleanups and subroutines for 6655638 + - S6814842: Load shortening optimizations + - S6815683: G1: SEGV during marking + - S6816154: G1: introduce flags to enable/disable RSet updating and scanning + - S6816308: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003 + - S6816433: Test G1 and ParOld in JPRT + - S6816970: Bump HS15 build number to 03 + - S6817419: G1: Enable extensive verification for humongous regions + - S6818264: Heap dumper unexpectedly adds .hprof suffix + - S6818666: G1: Type lost in g1 pre-barrier + - S6819065: G1: eliminate high serial card table clearing time + - S6819077: G1: first GC thread coming late into the GC. + - S6819085: G1: use larger and/or user settable region size + - S6819098: G1: reduce RSet scanning times + - S6819213: revive sun.boot.library.path + - S6819853: VM does not detect JDK which supports parallel class loaders + - S6819891: ParNew: Fix work queue overflow code to deal correctly with +UseCompressedOops + - S6820167: GCALotAtAllSafepoints + FullGCALot(ScavengeALot) options crash JVM + - S6820321: G1: Error: guarantee(check_nums(total, n, parts), "all seq lengths should match") + - S6820510: assertion failure with unloaded class in subnode.cpp + - S6821003: Update hotspot windows os_win32 for windows 7 + - S6821507: Alignment problem in GC taskqueue + - S6821693: 64-bit TaskQueue capacity still too small + - S6821700: tune VM flags for peak performance + - S6822110: Add AddressLiteral class on SPARC + - S6822204: volatile fences should prefer lock:addl to actual mfence instructions + - S6822263: G1: JVMTI heap iteration fails + - S6822333: _call_stub_compiled_return address handling in SA is broken causing jstack to hang occasionally + - S6822370: ReentrantReadWriteLock: threads hung when there are no threads holding onto the lock (Netra x4450) + - S6822407: heapOopSize lookup is incorrect in Serviceability Agent. + - S6823354: Add intrinsics for {Integer,Long}.{numberOfLeadingZeros,numberOfTrailingZeros}() + - S6823377: Bump HS15 build number to 04 + - S6823453: DeoptimizeALot causes fastdebug server jvm to fail with assert(false,"unscheduable graph") + - S6823454: Oop-typed loadP yields invalid pointer (0x1) on SPECjbb2005 at OSRed method entry + - S6824463: deopt blob is testing wrong register on 64-bit x86 + - S6824570: ParNew: Fix memory leak introduced in 6819891 + - S6825642: nsk sajdi tests fail with NullPointerException + - S6825815: Bump HS15 build number to 05 and update copyright date of HOTSPOT_VM_COPYRIGHT + - S6826261: class file dumping from SA is broken + - S6826318: G1: remove traversal-based refinement code + - S6826736: CMS: core dump with -XX:+UseCompressedOops + - S6826960: C2 Sparc: assert(bb->_nodes(_bb_end)->is_Proj(),"skipping projections after expected call") + - S6827505: sizing logic for vtable and itable stubs needs self-check + - S6827605: new String intrinsics may prevent EA scalar replacement + - S6828024: verification of fixed interval usage is too weak + - S6828069: Change JDK_MINOR_VER to 6 for 6Update HS versions + - S6828076: Fork HS15 to HS16 - renumber Major and build numbers of JVM + - S6829013: G1: set the default value of G1VerifyConcMarkPrintRechable to false + - S6829021: tests for 6636138 use UseSuperword instead of UseSuperWord + - S6829234: Refix 6822407 and 6812971 + - S6829575: 100028: Debug information is incomplete or missing + - S6830069: UseLargePages is broken on Win64 + - S6830542: Performance: JVM_DefineClass already verified. + - S6830815: jprt.config not setting proper compiler version for use in 6u14 + - S6831225: Upgrade JPRT jobs to use newer Linux 2.6 (e.g. Fedora 9) + - S6831323: Use v8plus as minimum required hardware for current Hotspot sources + - S6831604: missing null check in guarantee + - S6832293: JIT compiler got wrong result in type checking with -server + - S6833129: specjvm98 fails with NullPointerException in the compiler with -XX:DeoptimizeALot + - S6833316: jprt.properties not setting values for 6u14 release flag + - S6833573: C2 sparc: assert(c < 64 && (c & 1) == 0,"bad double float register") + - S6833576: G1: assert illegal index, growableArray.hpp:186 + - S6833879: Assigning positive zero is ignored when old value is negative zero + - S6833951: Extra ":" Causes Testcase in CR 6589834 "Parse Exception: Invalid tag: summary:" + - S6834142: method->print_codes(): Error: ShouldNotReachHere() + - S6834177: Running jsynprog on Solaris Nevada can cause JVM crash + - S6834202: Bump the HS16 build number to 02 + - S6835796: Fedora 9 linux_i586-fastdebug-c2-runThese_Xcomp times out + - S6836054: java/util/Arrays/CopyMethods.java fails on solaris-sparc with IllegalArgumentException + - S6837011: SIGSEGV in PhaseIdealLoop in 32bit jvm + - S6837094: False positive for "meet not symmetric" failure + - S6837146: Should perform unswitch before maximally unroll in loop transformation + - S6837224: libsaproc.so on linux needs version of 6799141 + - S6837472: com/sun/jdi/MonitorFrameInfo.java fails with AggressiveOpts in 6u14 + - S6837906: compiler tests of 6636138 fail with IllegalAccessException + - S6838154: make/linux/makefiles/sa.make needs hash-style fix + - S6838819: Bump the HS16 build number to 03 + - S6838842: NUMA allocator: Segfault during startup on Linux + - S6839126: Type error found by newer windows compiler + - S6839151: Add a JPRT default test of -Xshare:dump when new hotspot is built + - S6839599: JVM crash while profiling Tomcat and Liferay + - S6840196: NUMA allocator: crash in fastdebug during startup on Linux + - S6840305: Discrepancy in system memory details (when 4G or greater) reported by JVM and Windows OS + - S6840775: Multiple JVM crashes seen with 1.6.0_10 through 1.6.0_14 + - S6841313: G1: dirty cards of survivor regions in parallel + - S6841800: Incorrect boundary values behavior for option -XX:MaxLabelRootDepth=0-6 leads to jvm crash + - S6841831: G1: assert(contains_reference(from),"We just added it!") fires + - S6842999: Update hotspot windows os_win32 for windows 2008 R2 + - S6843041: Remove duplicate README files in repositories (make/README) + - S6843292: "Expect to be beyond new region unless impacting another region" assertion too strong + - S6843580: JavaThread.getStackBase throws sun.jvm.hotspot.WrongTypeException invoked by jstack + - S6843694: G1: assert(index < _vs.committed_size(),"bad index"), g1BlockOffsetTable.inline.hpp:55 + - S6843752: missing code for an anti-dependent Phi in GCM + - S6843761: Update langtools tests to remove unncessary -source and -target options + - S6845368: large objects cause a crash or unexpected exception + - S6847305: solaris reorder mapfiles generate too many warnings + - S6848466: frame::frame_size() assertion failure with -XX:+DebugDeoptimization + - S6848641: CMSCollector::_roots_scanning_options should be initialized + - S6849122: G1: Typo introduced during implementation of the parallel refinement + - S6849574: VM crash using NonBlockingHashMap (high_scale_lib) + - S6849716: BitMap - performance regression introduced with G1 + - S6850551: Bump the HS16 build number to 04 + - S6850846: G1: extend G1 marking verification + - S6850869: G1: RSet "scrubbing" scrubs too much + - S6850957: Honor -XX:OnOutOfMemoryError when array size exceeds VM limit + - S6851282: JIT miscompilation results in null entry in array when using CompressedOops + - S6851386: assert(b->find_node(def) < j,"uses must follow definitions") + - S6851742: (EA) allocation elimination doesn't work with UseG1GC + - S6851829: solaris build fails with 5.8 compilers + - S6851908: interpreter null check profiling broken causing extra compilation invalidation + - S6852078: HSX 14/16 in jdk 5.0: api/javax_management api/org_omg jck tests crashes or make tnameserv crash + - S6854027: Precompiled headers are not being updated in Linux/GCC builds + - S6854812: 6.0_14-b08 crashes with a SIGSEGV + - S6855115: G1: Fix for 6850869 is incorrect + - S6855164: SIGSEGV during compilation of method involving loop over CharSequence. + - S6855215: Calculation error (NaN) after about 1500 calculations + - S6855236: Compiler Tree API TreePath class generates NullPointerException from Iterator + - S6855834: G1: minimize the output when -XX:+PrintHeapAtGC is set + - S6856025: assert(_base >= OopPtr && _base <= KlassPtr,"Not a Java pointer") + - S6856257: Bump the HS16 build number to 05 + - S6857159: local schedule failed with checkcast of Thread.currentThread() + - S6857194: Add hotspot perf counters to aid class loading performance measurement + - S6857661: 64-bit server VM: assert(is_Initialize(),"invalid node class") + - S6857707: Add missing test case for CR 6855164 from its bug description. + - S6858208: jvm crash when specifying TypeProfileWidth=0 on jdk 6.0 + - S6858886: G1: guarantee(_next_marked_bytes <= used(),"invariant") at heapRegion.hpp:359 + - S6859338: amd64 native unverified entry point pushes values before implicit null check + - S6859411: Bump the HS16 build number to 06 + - S6859911: G1: assert(Heap_lock->owner() = NULL, "Should be owned on this thread's behalf") + - S6860469: remix_address_expressions sets incorrect control causing crash in split_if_with_block_post + - S6860599: nodes limit could be reached during Output phase + - S6860920: serialize.cpp shouldn't use objArrayOopDesc::base_offset_in_bytes(T_BYTE) + - S6861513: correct copyright attribution in test for 6837094 and 6860469 + - S6861660: OopMapBlock count/size confusion + - S6861984: solaris version of libsaproc.so should support SA_ALTROOT directly + - S6862534: -XX:NewRatio completely ignored when combined with -XX:+UseConcMarkSweepG + - S6862576: vmIntrinsics needs cleanup in order to support JSR 292 intrinsics + - S6862661: G1: _gc_alloc_region_counts is not updated properly after 6604422 + - S6862863: C2 compiler fails in elide_copy() + - S6862919: Update copyright year + - S6862945: 4/3 conversion of jmethodID to methodOop in JVMTI is too expensive + - S6863155: Server compiler generates incorrect code (x86, long, bitshift, bitmask) + - S6863216: Clean up debugging debris inadvertently pushed with 6700789 + - S6863420: os::javaTimeNanos() go backward on Solaris x86 + - S6864003: Modify JVM_FindClassFromBootLoader to return null if class not found + - S6864886: G1: rename -XX parameters related to update buffers + - S6864901: Bump the HS16 build number to 07 + - S6864914: SPECjvm2008 produces invalid result with zero based Compressed Oops + - S6865031: Application gives bad result (throws bad exception) with compressed oops + - S6865703: G1: Parallelize hot card cache cleanup + - S6866585: debug code in ciObjectFactory too slow for large objects + - S6866591: G1: print update buffer processing stats more often + - S6867645: java -Xshare:dump failed - read only space too small + - S6868051: (SA) FreeChunk support for compressed oops is broken + - S6868269: CompileTheWorld assertion failure introduced by the reexecute bit implementation + - S6868486: timouts and outOfMemory in regression tests + - S6868487: EnableInvokeDynamic and EnableMethodHandles should not be visible flags in JDK6 or JDK7 + - S6868991: JPRT: elide GCBasher_G1 test on winx64 until 6867250 is resolved + - S6869822: assert(Universe::narrow_oop_shift() == 0,"use unscaled narrow oop") + - S6870843: G1: G1 GC memory leak + - S6871111: G1: remove the concurrent overhead tracker + - S6871765: Bump the HS16 build number to 08 + - S6872000: G1: compilation fails on linux/older gcc + - S6873059: Explicitly use -source 5 -target 5 when compiling with the boot jdk + - S6873059: Explicitly use -source 5 -target 5 when compiling with the boot jdk javac + - S6875329: fix for 6795465 broke exception handler cloning + - S6875866: Intrinsic for String.indexOf() is broken on x86 with SSE4.2 + - S6876276: assert(!is_visited,"visit only once") + - S6876584: parameters order is incorrect for enc_String_Equals() in x86_32.ad + - S6879058: Change default JPRT release target for 6Update series VMs + - S6879061: Bump the HS16 build number to 09 + - S6879572: SA fails with "RuntimeException: field "_is_marked_dependent" not found + - S6879689: Fix warning about ignored return value when compiling with -O2 + - S6880053: assert(alloc_obj->as_CheckCastPP()->type() != TypeInstPtr::NOTNULL) + - S6883468: C2 compiler enters infinite loop in PhaseIterGVN::transform + - S6886024: G1: assert(recent_avg_pause_time_ratio() < 1.00,"All GC?") + - S6886353: For DeoptimizeALot, JTreg tests should "IgnoreUnrecognizedVMOptions on a product build + - S6887571: Increase default heap config sizes + - S6887703: Unsigned applet can retrieve the dragged information before drop action occur + - S6887914: Bump the HS16 build number to 10 + - S6888149: AtomicReferenceArray causes SIGSEGV -> SEGV_MAPERR error + - S6888898: CMS: ReduceInitialCardMarks unsafe in the presence of cms precleaning + - S6889740: G1: OpenDS fails with "unhandled exception in compiled code" + - S6889757: G1: enable card mark elision for initializing writes from compiled code (ReduceInitialCardMarks) + - S6890137: G1: revamp reachable object dump + - S6890308: integrate zero assembler hotspot changes + - S6891677: java/build integrate zero assembler JDK changes + - S6892079: live value must not be garbage failure after fix for 6854812 + - S6892265: System.arraycopy unable to reference elements beyond Integer.MAX_VALUE bytes + - S6892658: C2 should optimize some stringbuilder patterns + - S6892749: assert(UseParNewGC || UseSerialGC || UseConcMarkSweepGC, "...") fails + - S6893095: G1: bulk G1 backports to hs16 + - S6893554: SPECjvm2008 mpegaudio fails with SecurityException + - S6893947: Deserialization of RMIConnectionImpl objects should enforce stricter checks [ZDI-CAN-588] + - S6893954: Subclasses of InetAddress may incorrectly interpret network addresses + - S6893995: Bump the HS16 build number to 11 + - S6893996: change default JPRT release target to be 6u18 + - S6894807: No ClassCastException for HashAttributeSet constructors if run with -Xcomp + - S6895788: G1: SATB and update buffer allocation code allocates too much space + - S6896043: first round of zero fixes + - S6896084: VM does not reserve protected page below heap for compressed oops implicit null checks + - S6896647: card marks can be deferred too long + - S6898160: Need serviceability support for new vm argument type 'uint64_t' + - S6898622: ObjectIdentifer.equals is not capable of detecting incorrectly encoded CommonName OIDs + - S6898739: TLS renegotiation issue + - S6898857: [Regression] -XX:NewRatio with -XX:+UseConcMarkSweepGC causes fatal error + - S6899653: Sun Java Runtime CMM readMabCurveData Buffer Overflow Vulnerability + - S6900341: jaxp/jaxws ant scripts using ant runtime in classpath, needs to be explicit + - S6900899: vm fails to start when -Xmx value is less than OldSize + NewSize + - S6900997: Bump the HS16 build number to 12 + - S6902299: Java JAR "unpack200" must verify input parameters + - S6903453: Zero build on ARM and IA-64 + - S6904191: OptimizeStringConcat should be product instead of experimental + - S6904691: Java Applet Trusted Methods Chaining Privilege Escalation Vulnerability + - S6904996: Bump the HS16 build number to 13 + - S6906727: UseCompressedOops: some card-marking fixes related to object arrays + - S6908208: UseCompressedOops: array_size() returns incorrect size for MAX_INT object array following 6906727 + - S6909153: Fix broken options on Zero + - S6909281: NPE is thrown when running rmid + - S6909480: Disable Escape Analysis in jdk 6u18 + - S6909597: Sun Java Runtime Environment JPEGImageReader stepX Integer Overflow Vulnerability + - S6910590: Application can modify command array, in ProcessBuilder + - S6913869: Zero assert fix + - S6914622: Print values of all flags for product VM + - S6914823: Java AWT Library Invalid Index Vulnerability + - S6914866: Sun JRE ImagingLib arbitrary code execution vulnerability + - S6914986: Make sure openjdk doc generation not turned off with JDK_UPDATE_VERSION + - S6917485: Corba doc warnings + - S6918421: 1/1 in-process JVM now ignores preset Windows unhandled exception filter + - S6920732: opensource test/java/nio/charset + - S6923976: TestProviderLeak.java is using too small of an initial heap under newer Hotspot (b79+) + - S6926703: apt tests should run with assertions enabled + - S6927797: langtools/test/tools/javac/EarlyAssert.java fails when run with assertions enabled (-ea) + - S6928623: Behaviour of VERBOSE=true on langtools build + - S6929005: Fix HS16 merge issues in OpenJDK 6 + - S6932480: Crash in CompilerThread/Parser. Unloaded array klass? + - S6933846: GCC 4.5 warning removals + - S6934327: Update linux fontconfigs for Ubuntu and Fedora. + - S6937417: javac -Xprint returns IndexOutOfBoundsException + - S6938326: Use of "ant -diagnostics" a problem with ant 1.8.0, exit code 1 now + - S6939845: zero needs fallback path in C++ interpreter for platform dependent fast bytecodes + - S6941027: Gervill update, April 2010 + - S6943053: Gervill: failures on invalid ranges and 14-bit banks * Bumped to CACAO 1.1.0 pre-release snapshot. * VisualVM support removed; now available in its own package at http://icedtea.classpath.org/hg/visualvm * Backports: @@ -726,7 +1113,7 @@ New in release 1.9 (2010-XX-XX): - Run JNLP files that use spec version 1.6 - RH601281: Possible NullPointerException in splash screen code * Plugin - - RH560193: Fix ziperror when applet jar contained another 0-byte jar + - RH560193: Fix ziperror when applet jar contained another 0-byte jar New in release 1.8.1 (2010-07-28): diff -r a4f19da69cea -r fd4de15932fa configure.ac --- a/configure.ac Tue Sep 07 12:38:02 2010 +0100 +++ b/configure.ac Tue Sep 07 13:46:53 2010 +0100 @@ -1,4 +1,4 @@ AC_INIT([icedtea6],[1.9pre],[distro-pkg- -AC_INIT([icedtea6],[1.9pre],[distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea6],[1.9],[distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) From bugzilla-daemon at icedtea.classpath.org Tue Sep 7 07:01:03 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 07 Sep 2010 14:01:03 +0000 Subject: [Bug 438] PulseAudioSourceDataLine falsely returns true to isControlSupported(Gain) Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=438 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |6-1.9 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 7 07:14:19 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 07 Sep 2010 14:14:19 +0000 Subject: [Bug 544] shark fails to build on icedtea7 trunk 20100907 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=544 ------- Comment #2 from gbenson at redhat.com 2010-09-07 14:14 ------- This is using http://hg.openjdk.java.net/jdk7/jdk7/ ? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From andrew at icedtea.classpath.org Tue Sep 7 07:21:20 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 07 Sep 2010 14:21:20 +0000 Subject: /hg/release/icedtea6-1.9: 3 new changesets Message-ID: changeset 03fc4ab10cda in /hg/release/icedtea6-1.9 details: http://icedtea.classpath.org/hg/release/icedtea6-1.9?cmd=changeset;node=03fc4ab10cda author: Andrew John Hughes date: Tue Sep 07 15:17:00 2010 +0100 Yet more NEWS updates. 2010-09-07 Andrew John Hughes * NEWS: Yet more updates. changeset 5464f814f82f in /hg/release/icedtea6-1.9 details: http://icedtea.classpath.org/hg/release/icedtea6-1.9?cmd=changeset;node=5464f814f82f author: Andrew John Hughes date: Tue Sep 07 15:20:22 2010 +0100 Added tag icedtea6-1.9-branch for changeset cb463b94b82d changeset e24fa15b2826 in /hg/release/icedtea6-1.9 details: http://icedtea.classpath.org/hg/release/icedtea6-1.9?cmd=changeset;node=e24fa15b2826 author: Andrew John Hughes date: Tue Sep 07 15:20:49 2010 +0100 Added tag icedtea6-1.9 for changeset 5464f814f82f diffstat: 3 files changed, 20 insertions(+), 2 deletions(-) .hgtags | 2 ++ ChangeLog | 4 ++++ NEWS | 16 ++++++++++++++-- diffs (73 lines): diff -r fd4de15932fa -r e24fa15b2826 .hgtags --- a/.hgtags Tue Sep 07 13:46:53 2010 +0100 +++ b/.hgtags Tue Sep 07 15:20:49 2010 +0100 @@ -18,3 +18,5 @@ 9420faca6468e1c75e9bfa73b31246ba0b73a77d 9420faca6468e1c75e9bfa73b31246ba0b73a77d icedtea-1.6-branchpoint 8826d5735e2ca97ecdb35e7c977785d3e5b99556 icedtea-1.7-branchpoint 9420faca6468e1c75e9bfa73b31246ba0b73a77d icedtea6-1.8-branchpoint +cb463b94b82da269ea089c481ed5e39700525a8a icedtea6-1.9-branch +5464f814f82f7d9c8428179a71c51f11094717fd icedtea6-1.9 diff -r fd4de15932fa -r e24fa15b2826 ChangeLog --- a/ChangeLog Tue Sep 07 13:46:53 2010 +0100 +++ b/ChangeLog Tue Sep 07 15:20:49 2010 +0100 @@ -1,3 +1,7 @@ 2010-09-07 Andrew John Hughes + + * NEWS: Yet more updates. + 2010-09-07 Andrew John Hughes * NEWS: Add b19 issues and set date of 1.9. diff -r fd4de15932fa -r e24fa15b2826 NEWS --- a/NEWS Tue Sep 07 13:46:53 2010 +0100 +++ b/NEWS Tue Sep 07 15:20:49 2010 +0100 @@ -10,6 +10,10 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/ New in release 1.9 (2010-09-07): +* VisualVM support removed; now available in its own package at http://icedtea.classpath.org/hg/visualvm +* A separate build directory is now used for the OpenJDK build: openjdk.build-ecj (stage 1) and + openjdk.build (stage 2) +* The plugin and NetX classes are no longer added to rt.jar, but to plugin.jar and netx.jar respectively. * Updated to OpenJDK6 b20 with HotSpot 17. - S4360113: Evict nmethods when code cache gets full - S4670071: loadClassInternal is too restrictive. @@ -1083,13 +1087,20 @@ New in release 1.9 (2010-09-07): - S6941027: Gervill update, April 2010 - S6943053: Gervill: failures on invalid ranges and 14-bit banks * Bumped to CACAO 1.1.0 pre-release snapshot. -* VisualVM support removed; now available in its own package at http://icedtea.classpath.org/hg/visualvm * Backports: - S6961732: FontMetrics.getLeading() may be negative in freetype-based OpenJDK builds - S6967533: ExceptionInInitializerError on systems with uninitialized clock - S6795060: VM crash on Linux in ICU layout library when processing \u0DDD (Sinhalese) - S6969395: Synchronization of HttpServlet regression test with OpenJDK7 - S6510892: com/sun/net/httpserver/bugs/B6361557.java fails + - S6307603: [X11] Use RENDER extension for complex operations done in software + - S6668231: Presence of a critical subjectAltName causes JSSE's SunX509 to fail trusted checks + - S6678385: Random java.lang.StackOverflowError from various JDKs + - S6725214: D3D: forward-port the new pipeline from 6u10 + - S6755274: 6u10b33 2d tests fails on sles10x64 with jvm crash + - S6951319, PR398: enable solaris builds using Sun Studio 12 update 1 + - S6963870: NPE in CompoundBorder.getInsets() + - S6791612: OGLBat tests are failed in jdk 7 b42 * Fixes: - Provide font configuration for RHEL 6. - G266295: Provide font configuration for Gentoo. @@ -1104,7 +1115,6 @@ New in release 1.9 (2010-09-07): - PR494: Shark fails to catch Exception using catch (Throwable e) - PR525: Shark made not entrant deopt sigsegv regression after bump to b20 and hs17. - LLVM 2.7 non-product fixes. - - S6951319: enable solaris builds using Sun Studio 12 update 1 (fixes PR398) * NetX - Do not use Look and Feel related methods for setting up security dialogs - Minor fixes to JNLPRandomAccessFile @@ -1114,6 +1124,8 @@ New in release 1.9 (2010-09-07): - RH601281: Possible NullPointerException in splash screen code * Plugin - RH560193: Fix ziperror when applet jar contained another 0-byte jar +* PulseAudio: + - PR438: PulseAudioSourceDataLine falsely returns true to isControlSupported(Gain) New in release 1.8.1 (2010-07-28): From bugzilla-daemon at icedtea.classpath.org Tue Sep 7 07:28:00 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 07 Sep 2010 14:28:00 +0000 Subject: [Bug 544] shark fails to build on icedtea7 trunk 20100907 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=544 ------- Comment #3 from gnu_andrew at member.fsf.org 2010-09-07 14:27 ------- No, the icedtea tree is http://hg.openjdk.java.net/icedtea/jdk7 and this is building via IcedTea7. As I said to doko on IRC, we need to know whether it's an upstream problem or local to IcedTea. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ahughes at redhat.com Tue Sep 7 07:43:50 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Tue, 7 Sep 2010 15:43:50 +0100 Subject: IcedTea6 1.9 Released! In-Reply-To: <20100728122434.GB23208@rivendell.middle-earth.co.uk> References: <20100728122434.GB23208@rivendell.middle-earth.co.uk> Message-ID: <20100907144350.GC12529@bree.middle-earth.co.uk> We are pleased to announce a new major release of IcedTea6, 1.9! The IcedTea project provides a harness to build the source code from OpenJDK6 using Free Software build tools. It also includes the only Free Java plugin and Web Start implementation, and support for additional architectures over and above x86, x86_64 and SPARC via the Zero assembler port. *********************************************************************************** * Please note that VisualVM support is no longer included as part of IcedTea6 * * from this release onwards. A VisualVM release from the new Mercurial tree * * will follow later this week. * *********************************************************************************** What?s New? ??????????? * VisualVM support removed; now available in its own package at http://icedtea.classpath.org/hg/visualvm * A separate build directory is now used for the OpenJDK build: openjdk.build-ecj (stage 1) and openjdk.build (stage 2) * The plugin and NetX classes are no longer added to rt.jar, but to plugin.jar and netx.jar respectively. * Updated to OpenJDK6 b20 with HotSpot 17. - S4360113: Evict nmethods when code cache gets full - S4670071: loadClassInternal is too restrictive. - S4766230: Hotspot vtable inconsistencies cause core dumps. 6579515. 6582242. - S4957990: Perm heap bloat in JVM - S4997835: RFE: crash dump will only be created when running w/ -XX:+ShowMessageBoxOnError - S5057225: Remove useless I2L conversions - S5057818: codecache full and compiler disabled in bigapps fastdebug run - S6333993: NodeList.item() returns null in 1.5.0_02 - S6361589: Print out stack trace for target thread of GC crash - S6378821: bitCount() should use POPC on SPARC processors and AMD+10h - S6419370: 4/4 new jmethodID code has tiny holes in synchronization - S6423256: GC stacks should use a better data structure - S6442502: assert(bits,"Use TypePtr for NULL") on linux-x86 - S6449385: JCK test dup2_x200106m1 fails with Segmentation Fault on x86 - S6472982: javax.xml.namespace.NamespaceContext.getPrefix("") should not throw IllegalArgumentException - S6484956: G1: improve evacuation pause efficiency - S6484957: G1: parallel concurrent refinement - S6484959: G1: introduce survivor spaces - S6490395: G1: Tidy up command line flags. - S6511613: javac unexpectedly doesn't fail in some cases if an annotation processor specified - S6539464: Math.log() produces inconsistent results between successive runs. - S6541756: Reduce executable C-heap - S6543938: G1: remove the concept of popularity - S6548436: Incorrect inconvertible types error - S6567360: 3/4 SIGBUS in jvmti RawMonitor magic check for unaligned bad monitor pointer - S6587322: dtrace probe object__alloc doesn't fire in some situations on amd64 - S6587560: OpenJDK problem handling bitmaps returned when LCD text is requested - S6589834: deoptimization problem with -XX:+DeoptimizeALot - S6603316: Improve instrumentation for classes loaded at startup - S6604422: G1: re-use half-promoted regions - S6614597: Performance variability in jvm2008 xml.validation - S6614957: HttpsURLConnection not using the set SSLSocketFactory for creating all its Sockets - S6616792: five AWT focus regression tests should be fixed - S6626217: Fixed loader constraint array handling - S6631166: CMS: better heuristics when combatting fragmentation - S6632169: HttpClient and HttpsClient should not try to reverse lookup IP address of a proxy server - S6633872: Policy/PolicyFile leak dynamic ProtectionDomains. - S6634138: Source generated in last round not compiled - S6636138: UseSuperWord enabled failure - S6637203: Classunloading messages go to stdout rather than Xloggc file, causing hangs when stdout is closed - S6639665: ThreadGroup finalizer allows creation of false root ThreadGroups - S6655638: dynamic languages need method handles - S6655646: dynamic languages need dynamically linked call sites - S6663854: assert(n != __null,"Bad immediate dominator info.") in C2 with -Xcomp - S6675332: sjsxp issue 49: Repairing XMLStreamWriter tries to use default namespace for attributes - S6675856: Open charset tests - S6676423: (prefs) Opensource unit/regression tests for java.util.prefs - S6677708: G1: re-enable parallel RSet updating and scanning - S6680135: A number of test/closed/java/awt/Focus/* tests should be opened - S6683472: Incorrect handling of translation component of font transform. - S6684007: PrintAssembly plugin not available for linux or windows - S6686273: Some AWT reg. tests should be moved to open repository (for CRs 6444769, 6480547, and 6560348) - S6687298: Reg testcase java/awt/Graphics2D/DrawString/RotTransText.java fails on windows - S6689653: JMapPerm fails with UseConcMarkSweepIncGC and compressed oops off - S6690928: Use spinning in combination with yields for workstealing termination. - S6692899: CMS: many vm.parallel_class_loading tests fail with assert "missing Printezis mark" - S6697721: OpenJDK: rotated text baseline different between TextLayout and drawString - S6699669: Hotspot server leaves synchronized block with monitor in bad state - S6700789: G1: Enable use of compressed oops with G1 heaps - S6700941: G1: allocation spec missing for some G1 classes - S6703377: freetype: glyph vector outline is not translated correctly - S6709742: find_base_for_derived's use of Ideal NULL is unsafe causing crashes during register allocation - S6711117: Assertion in 64bit server vm (flat != TypePtr::BOTTOM,"cannot alias-analyze an untyped ptr") - S6718964: Swing border tests should be open source - S6718965: Swing color chooser tests should be open source - S6720309: G1: don't synchronously update RSet during evacuation pauses - S6720334: G1: don't update RSets of collection set regions during an evacuation pause - S6722084: JPRT make file doesn't create required symbolic link to libjvm.so - S6724345: incorrect method resolution for enum classes entered as source files - S6728161: Add SKIP_BOOT_CYCLE feature to create boot jdk and use it during build - S6728271: G1: Cleanup G1CollectedHeap::get_gc_alloc_regions() - S6736390: File TOCTOU deserialization vulnerability - S6737700: api/javax_swing/table/DefaultTableCellRenderer/index.html#getset:DefaultTableCellRenderer - S6741757: minor ctw improvements - S6745393: Inflater/Deflater clone issue - S6755988: G1: assert(new_obj != 0 || ... "should be forwarded") - S6759521: Move Bidi test programs from closed to open. - S6760309: G1: update remembered sets during Full GCs - S6761600: Use sse 4.2 in intrinsics - S6761856: OpenJDK: vertical text metrics may be significanly different from those returned by Sun JDK - S6763530: Cannot decode PublicKey (Proider SunPKCS11, curve prime256v1) - S6766775: X509 certificate hostname checking is broken in JDK1.6.0_10 - S6769124: various 64-bit fixes for c1 - S6771432: createSocket() - smpatch fails using 1.6.0_10 because of "Unconnected sockets not implemented" - S6772368: REGRESSION:tomcat crashed twice with JDK 7 - S6772683: Thread.isInterrupted() fails to return true on multiprocessor PC - S6778657: Casts in SharedRuntime::f2i, f2l, d2i and d2l rely on undefined C++ behaviour - S6778662: fixes 64-bits libraries directory search paths on linux - S6778669: Patch from Red Hat -- fixes compilation errors - S6781583: Hotspot build fails on linux 64 bit platform with gcc 4.3.2 - S6782232: assert("CreateEx must be first instruction in block" ) - S6782260: Memory leak in CodeBuffer::create_patch_overflow - S6782663: Data produced by PrintGCApplicationConcurrentTime and PrintGCApplicationStoppedTime is not accurate. - S6783381: NUMA allocator: don't pretouch eden space with UseNUMA - S6784930: server jvm fails with assert(!n->is_SpillCopy(),"") - S6786346: intermittent Internal Error (src/share/vm/memory/cardTableModRefBS.cpp:226) - S6786503: Overflow list performance can be improved - S6786948: SA on core file fails on solaris-amd64 if vm started with -XX:+StartAttachListener - S6787106: Hotspot 32 bit build fails on platforms having different definitions for intptr_t & int32_t - S6787254: Work queue capacity can be increased substantially on some platforms - S6788347: C2Compiler crash 6u7 - S6788376: allow to ignore unrecognized VM options - S6788527: Server vm intermittently fails with assertion "live value must not be garbage" with fastdebug bits - S6788797: Fork HS14 to HS15 - renumber Major and build numbers of JVM - S6790182: matcher.cpp:1375: assert(false,"bad AD file") - S6790209: server VM fails with assert(will_link,"_new: typeflow responsibility") - S6791132: bad control in autobox split code - S6791168: Fix invalid code in bytecodeInterpreter that can cause gcc ICE - S6791178: Specialize for zero as the compressed oop vm heap base - S6791572: assert("duplicating node that's already been matched") - S6791656: nsk defclass0 asserts handles.hpp - S6791815: Fix for 6471657 can cause deadlock on non-Solaris platforms when initializing direct buffer support - S6791852: assert(b->_nodes[insidx] == n,"got insidx set incorrectly") - S6792161: assert("No dead instructions after post-alloc") - S6792301: StackAlignmentInBytes not honored for compiled native methods - S6792421: assert(_bitMap->isMarked(addr+size-1),inconsistent Printezis mark) - S6792705: Add JAR file to bootclasspath when using AggressiveOpts - S6793344: BasicStroke's first element dash pattern is not a dash - S6793825: Missing include dependancies for GCC without predefined headers - S6793828: G1: invariant: queues are empty when activated - S6794939: assert(_base == OopPtr,"subclass must override cast_to_ptr_type") - S6795362: 32bit server compiler leads to wrong results on solaris-x86 - S6795465: Crash in assembler_sparc.cpp with client compiler on solaris-sparc - S6795913: A few remaining wrong casts need to be fixed for building hotspot successfully on Mac OS. - S6796746: rename LoadC (char) opcode class to LoadUS (unsigned short) - S6797305: Add LoadUB and LoadUI opcode class - S6797754: G1: combined bugfix - S6797870: Add -XX:+{HeapDump,PrintClassHistogram}{Before,After}FullGC - S6798572: test/closed/java/nio/charset/Charset/Contains.java failing since jdk7-b43 - S6798785: Crash in OopFlow::build_oop_map: incorrect comparison of 64bit pointers - S6798898: CMS: bugs related to class unloading - S6799141: Build with --hash-style=both so that binaries can work on SuSE 10 - S6799452: HotSpot tests Makefile should take care of ALT_SLASH_JAVA - S6799693: Server compiler leads to data corruption when expression throws an Exception - S6800154: Add comments to long_by_long_mulhi() for better understandability - S6800586: -XX:+PrintGCDateStamps is using mt-unsafe localtime function - S6801625: CDS: HeapDump tests crash with internal error in compactingPermGenGen.cpp - S6802413: G1: G1FixedSurvivorSpaceSize should be converted into regions in calculate_survivors_policy() - S6802453: G1: hr()->is_in_reserved(from),"Precondition." - S6802499: EA: assert(false,"unknown node on this path") - S6803688: Integrate latest JAX-WS (2.1.6) in to JDK 6u14 - S6804746: G1: guarantee(variance() > -1.0,"variance should be >= 0") (due to evacuation failure) - S6805427: adlc compiler may generate incorrect machnode emission code - S6805522: Server VM fails with assertion (block1->start() != block2->start(),"successors have unique bcis") - S6805724: ModLNode::Ideal() generates functionally incorrect graph when divisor is any (2^k-1) constant. - S6805748: Assertion "don't reset to 0 -- could be mistaken for never-executed" in CompilationPolicy - S6805950: Typos in andL_rReg_imm instructions in x86_64.ad - S6806046: Hotspot build error when compiled from Visual Studio - S6806226: Signed integer overflow in growable array code causes JVM crash - S6807084: AutoBox elimination is broken with compressed oops - S6807345: Bump HS15 build number to 02 - S6807963: need tool to make sense of LogCompilaton output - S6808322: ParNew, CMS, G1: ParGCAllocBuffer overflow - S6808589: Merge vm_version_x86_{32,64}.{cpp,hpp} - S6809798: SafePointScalarObject node placed into incorrect block during GCM - S6810474: par compact - crash in summary_phase with very full heap - S6810653: Change String cache class used by Hotspot from String to StringValue - S6810672: Comment typos - S6810698: G1: two small bugs in the sparse remembered sets - S6810845: Performance regression in mpegaudio on x64 - S6810855: KILL vs. TEMP ordering restrictions are too strong - S6811267: Fix for 6809798 broke linux build - S6811384: MacroAssembler::serialize_memory may touch next page on amd64 - S6812297: update project creation for Visual Studio 2005-2008 - S6812428: G1: Error: assert(ret || obj_in_cs(obj),"sanity") - S6812587: Use auxv to determine SPARC hardware features on Solaris - S6812678: macro assembler needs delayed binding of a few constants (for 6655638) - S6812721: Block's frequency should not be NaN - S6812831: factor duplicated assembly code for megamorphic invokeinterface (for 6655638) - S6812971: SA: re-attaching to process fails - S6813212: factor duplicated assembly code for general subclass check (for 6655638) - S6814467: G1: small fixes related to concurrent marking verboseness - S6814552: par compact - some compilers fail to optimize bitmap code - S6814575: Update copyright year - S6814659: separable cleanups and subroutines for 6655638 - S6814842: Load shortening optimizations - S6815683: G1: SEGV during marking - S6815692: method handle code needs some cleanup (post-6655638) - S6815790: G1: Missing MemoryPoolMXBeans with -XX:+UseG1GC - S6816154: G1: introduce flags to enable/disable RSet updating and scanning - S6816308: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003 - S6816433: Test G1 and ParOld in JPRT - S6816970: Bump HS15 build number to 03 - S6817419: G1: Enable extensive verification for humongous regions - S6818264: Heap dumper unexpectedly adds .hprof suffix - S6818666: G1: Type lost in g1 pre-barrier - S6819065: G1: eliminate high serial card table clearing time - S6819077: G1: first GC thread coming late into the GC. - S6819085: G1: use larger and/or user settable region size - S6819098: G1: reduce RSet scanning times - S6819213: revive sun.boot.library.path - S6819853: VM does not detect JDK which supports parallel class loaders - S6819891: ParNew: Fix work queue overflow code to deal correctly with +UseCompressedOops - S6820167: GCALotAtAllSafepoints + FullGCALot(ScavengeALot) options crash JVM - S6820321: G1: Error: guarantee(check_nums(total, n, parts), "all seq lengths should match") - S6820510: assertion failure with unloaded class in subnode.cpp - S6820514: meet not symmetric failure in ctw - S6821003: Update hotspot windows os_win32 for windows 7 - S6821507: Alignment problem in GC taskqueue - S6821693: 64-bit TaskQueue capacity still too small - S6821700: tune VM flags for peak performance - S6822110: Add AddressLiteral class on SPARC - S6822204: volatile fences should prefer lock:addl to actual mfence instructions - S6822263: G1: JVMTI heap iteration fails - S6822333: _call_stub_compiled_return address handling in SA is broken causing jstack to hang occasionally - S6822370: ReentrantReadWriteLock: threads hung when there are no threads holding onto the lock (Netra x4450) - S6822407: heapOopSize lookup is incorrect in Serviceability Agent. - S6823354: Add intrinsics for {Integer,Long}.{numberOfLeadingZeros,numberOfTrailingZeros}() - S6823377: Bump HS15 build number to 04 - S6823453: DeoptimizeALot causes fastdebug server jvm to fail with assert(false,"unscheduable graph") - S6823454: Oop-typed loadP yields invalid pointer (0x1) on SPECjbb2005 at OSRed method entry - S6824463: deopt blob is testing wrong register on 64-bit x86 - S6824570: ParNew: Fix memory leak introduced in 6819891 - S6825642: nsk sajdi tests fail with NullPointerException - S6825815: Bump HS15 build number to 05 and update copyright date of HOTSPOT_VM_COPYRIGHT - S6826261: class file dumping from SA is broken - S6826318: G1: remove traversal-based refinement code - S6826736: CMS: core dump with -XX:+UseCompressedOops - S6826960: C2 Sparc: assert(bb->_nodes(_bb_end)->is_Proj(),"skipping projections after expected call") - S6827505: sizing logic for vtable and itable stubs needs self-check - S6827605: new String intrinsics may prevent EA scalar replacement - S6828024: verification of fixed interval usage is too weak - S6828069: Change JDK_MINOR_VER to 6 for 6Update HS versions - S6828076: Fork HS15 to HS16 - renumber Major and build numbers of JVM - S6829013: G1: set the default value of G1VerifyConcMarkPrintRechable to false - S6829021: tests for 6636138 use UseSuperword instead of UseSuperWord - S6829127: Deoptimization Failure on Specjvm98 _227_mtrt with -XX:+DeoptimizeALot since Hs11 b01 - S6829187: compiler optimizations required for JSR 292 - S6829192: JSR 292 needs to support 64-bit x86 - S6829234: Refix 6822407 and 6812971 - S6829575: 100028: Debug information is incomplete or missing - S6829659: Circle is rendered in C shape - S6829673: ThinLineTest: A line < 1 pixel disappears. - S6829678: StrokeShapeTest: createStrokedShape() behaves differently - S6830069: UseLargePages is broken on Win64 - S6830542: Performance: JVM_DefineClass already verified. - S6830815: jprt.config not setting proper compiler version for use in 6u14 - S6831225: Upgrade JPRT jobs to use newer Linux 2.6 (e.g. Fedora 9) - S6831323: Use v8plus as minimum required hardware for current Hotspot sources - S6831604: missing null check in guarantee - S6832293: JIT compiler got wrong result in type checking with -server - S6833129: specjvm98 fails with NullPointerException in the compiler with -XX:DeoptimizeALot - S6833316: jprt.properties not setting values for 6u14 release flag - S6833573: C2 sparc: assert(c < 64 && (c & 1) == 0,"bad double float register") - S6833576: G1: assert illegal index, growableArray.hpp:186 - S6833879: Assigning positive zero is ignored when old value is negative zero - S6833951: Extra ":" Causes Testcase in CR 6589834 "Parse Exception: Invalid tag: summary:" - S6834142: method->print_codes(): Error: ShouldNotReachHere() - S6834177: Running jsynprog on Solaris Nevada can cause JVM crash - S6834202: Bump the HS16 build number to 02 - S6835796: Fedora 9 linux_i586-fastdebug-c2-runThese_Xcomp times out - S6836054: java/util/Arrays/CopyMethods.java fails on solaris-sparc with IllegalArgumentException - S6837011: SIGSEGV in PhaseIdealLoop in 32bit jvm - S6837094: False positive for "meet not symmetric" failure - S6837146: Should perform unswitch before maximally unroll in loop transformation - S6837224: libsaproc.so on linux needs version of 6799141 - S6837472: com/sun/jdi/MonitorFrameInfo.java fails with AggressiveOpts in 6u14 - S6837906: compiler tests of 6636138 fail with IllegalAccessException - S6838154: make/linux/makefiles/sa.make needs hash-style fix - S6838819: Bump the HS16 build number to 03 - S6838842: NUMA allocator: Segfault during startup on Linux - S6839126: Type error found by newer windows compiler - S6839151: Add a JPRT default test of -Xshare:dump when new hotspot is built - S6839599: JVM crash while profiling Tomcat and Liferay - S6840196: NUMA allocator: crash in fastdebug during startup on Linux - S6840305: Discrepancy in system memory details (when 4G or greater) reported by JVM and Windows OS - S6840775: Multiple JVM crashes seen with 1.6.0_10 through 1.6.0_14 - S6841313: G1: dirty cards of survivor regions in parallel - S6841800: Incorrect boundary values behavior for option -XX:MaxLabelRootDepth=0-6 leads to jvm crash - S6841831: G1: assert(contains_reference(from),"We just added it!") fires - S6842999: Update hotspot windows os_win32 for windows 2008 R2 - S6843041: Remove duplicate README files in repositories (make/README) - S6843292: "Expect to be beyond new region unless impacting another region" assertion too strong - S6843580: JavaThread.getStackBase throws sun.jvm.hotspot.WrongTypeException invoked by jstack - S6843629: Make current hotspot build part of jdk5 control build - S6843694: G1: assert(index < _vs.committed_size(),"bad index"), g1BlockOffsetTable.inline.hpp:55 - S6843752: missing code for an anti-dependent Phi in GCM - S6843761: Update langtools tests to remove unncessary -source and -target options - S6845368: large objects cause a crash or unexpected exception - S6847305: solaris reorder mapfiles generate too many warnings - S6847956: G1: crash in oopDesc*G1ParCopyHelper::copy_to_survivor_space(oopDesc*) - S6848466: frame::frame_size() assertion failure with -XX:+DebugDeoptimization - S6848641: CMSCollector::_roots_scanning_options should be initialized - S6849122: G1: Typo introduced during implementation of the parallel refinement - S6849574: VM crash using NonBlockingHashMap (high_scale_lib) - S6849716: BitMap - performance regression introduced with G1 - S6849984: Value methods for platform dependent math functions constant fold incorrectly - S6850551: Bump the HS16 build number to 04 - S6850846: G1: extend G1 marking verification - S6850869: G1: RSet "scrubbing" scrubs too much - S6850957: Honor -XX:OnOutOfMemoryError when array size exceeds VM limit - S6851282: JIT miscompilation results in null entry in array when using CompressedOops - S6851386: assert(b->find_node(def) < j,"uses must follow definitions") - S6851742: (EA) allocation elimination doesn't work with UseG1GC - S6851829: solaris build fails with 5.8 compilers - S6851908: interpreter null check profiling broken causing extra compilation invalidation - S6852078: HSX 14/16 in jdk 5.0: api/javax_management api/org_omg jck tests crashes or make tnameserv crash - S6852873: Increase in delta between application stopped time and ParNew GC time over application lifetime - S6854027: Precompiled headers are not being updated in Linux/GCC builds - S6854812: 6.0_14-b08 crashes with a SIGSEGV - S6855115: G1: Fix for 6850869 is incorrect - S6855164: SIGSEGV during compilation of method involving loop over CharSequence. - S6855215: Calculation error (NaN) after about 1500 calculations - S6855236: Compiler Tree API TreePath class generates NullPointerException from Iterator - S6855834: G1: minimize the output when -XX:+PrintHeapAtGC is set - S6856025: assert(_base >= OopPtr && _base <= KlassPtr,"Not a Java pointer") - S6856257: Bump the HS16 build number to 05 - S6857159: local schedule failed with checkcast of Thread.currentThread() - S6857194: Add hotspot perf counters to aid class loading performance measurement - S6857661: 64-bit server VM: assert(is_Initialize(),"invalid node class") - S6857707: Add missing test case for CR 6855164 from its bug description. - S6858164: invokedynamic code needs some cleanup (post-6655638) - S6858208: jvm crash when specifying TypeProfileWidth=0 on jdk 6.0 - S6858886: G1: guarantee(_next_marked_bytes <= used(),"invariant") at heapRegion.hpp:359 - S6859338: amd64 native unverified entry point pushes values before implicit null check - S6859411: Bump the HS16 build number to 06 - S6859911: G1: assert(Heap_lock->owner() = NULL, "Should be owned on this thread's behalf") - S6860433: [Nimbus] Code to set a single slider's thumb background doesn't work as specified - S6860438: [Nimbus] Code to globally set slider's thumb background doesn't work as specified - S6860469: remix_address_expressions sets incorrect control causing crash in split_if_with_block_post - S6860599: nodes limit could be reached during Output phase - S6860920: serialize.cpp shouldn't use objArrayOopDesc::base_offset_in_bytes(T_BYTE) - S6861513: correct copyright attribution in test for 6837094 and 6860469 - S6861557: G1: assert(top() == bottom() || zfs == Allocated,"Region must be empty, or ...") - S6861660: OopMapBlock count/size confusion - S6861984: solaris version of libsaproc.so should support SA_ALTROOT directly - S6862387: tune concurrent refinement further - S6862534: -XX:NewRatio completely ignored when combined with -XX:+UseConcMarkSweepG - S6862576: vmIntrinsics needs cleanup in order to support JSR 292 intrinsics - S6862661: G1: _gc_alloc_region_counts is not updated properly after 6604422 - S6862863: C2 compiler fails in elide_copy() - S6862919: Update copyright year - S6862945: 4/3 conversion of jmethodID to methodOop in JVMTI is too expensive - S6862956: PhaseIdealLoop should have a CFG verification mode - S6863023: need non-perm oops in code cache for JSR 292 - S6863155: Server compiler generates incorrect code (x86, long, bitshift, bitmask) - S6863216: Clean up debugging debris inadvertently pushed with 6700789 - S6863312: Keep JAXP Secure Processing Feature consistent with Java Secure Mode - S6863420: os::javaTimeNanos() go backward on Solaris x86 - S6864003: Modify JVM_FindClassFromBootLoader to return null if class not found - S6864886: G1: rename -XX parameters related to update buffers - S6864901: Bump the HS16 build number to 07 - S6864914: SPECjvm2008 produces invalid result with zero based Compressed Oops - S6865031: Application gives bad result (throws bad exception) with compressed oops - S6865583: Verbose CIPrintMethodCodes asserts when ldc an empty String - S6865703: G1: Parallelize hot card cache cleanup - S6866190: Remove SIMPLE_STACK code from TaskQueue - S6866585: debug code in ciObjectFactory too slow for large objects - S6866591: G1: print update buffer processing stats more often - S6866651: Regression: simple int sum crashes jvm (build 1.6.0_14-b08 and 1.7.0-ea-b59) - S6867645: java -Xshare:dump failed - read only space too small - S6868051: (SA) FreeChunk support for compressed oops is broken - S6868269: CompileTheWorld assertion failure introduced by the reexecute bit implementation - S6868486: timouts and outOfMemory in regression tests - S6868487: EnableInvokeDynamic and EnableMethodHandles should not be visible flags in JDK6 or JDK7 - S6868991: JPRT: elide GCBasher_G1 test on winx64 until 6867250 is resolved - S6869822: assert(Universe::narrow_oop_shift() == 0,"use unscaled narrow oop") - S6870843: G1: G1 GC memory leak - S6871111: G1: remove the concurrent overhead tracker - S6871765: Bump the HS16 build number to 08 - S6872000: G1: compilation fails on linux/older gcc - S6872136: CMS: confusing message may be printed when a collector is switched off implicitly - S6873059: Explicitly use -source 5 -target 5 when compiling with the boot jdk - S6873059: Explicitly use -source 5 -target 5 when compiling with the boot jdk javac - S6873059: Explicitly use -source 6 -target 6 when compiling with the boot jdk - S6873116: Modify reexecute implementation to use pcDesc to record the reexecute bit - S6873236: Fork HS16 to HS17 - renumber Major and build numbers of JVM - S6873777: FPU control word optimization still performed with SSE - S6873799: enable escape analysis by default - S6873800: enable compressed oops by default - S6875329: fix for 6795465 broke exception handler cloning - S6875577: CTW fails with /hotspot/src/share/vm/opto/memnode.cpp - S6875619: CTW fails with /hotspot/src/share/vm/opto/type.hpp - S6875866: Intrinsic for String.indexOf() is broken on x86 with SSE4.2 - S6875959: CTW fails hotspot/src/share/vm/opto/reg_split.cpp:1087 - S6875967: CTW fails with./generated/adfiles/ad_sparc.cpp:6711 - S6876276: assert(!is_visited,"visit only once") - S6876584: parameters order is incorrect for enc_String_Equals() in x86_32.ad - S6876794: 4/4 sp07t002 hangs very intermittently - S6877221: Endless deoptimizations in OSR nmethod - S6877254: Server vm crashes with no branches off of store slice" when run with CMS and UseSuperWord(default) - S6877961: langtools build should allow more options when running jtreg - S6879058: Change default JPRT release target for 6Update series VMs - S6879061: Bump the HS16 build number to 09 - S6879076: disable jprt sync after builds are done - S6879362: assert(!klass_is_exact(),"only non-exact klass") - S6879572: SA fails _is_marked_dependent not found - S6879572: SA fails with "RuntimeException: field "_is_marked_dependent" not found - S6879689: Fix warning about ignored return value when compiling with -O2 - S6879902: CTW failure jdk6_18/hotspot/src/cpu/sparc/vm/assembler_sparc.hpp:845 - S6879921: CTW failure jdk6_18/hotspot/src/share/vm/utilities/globalDefinitions.cpp:268 - S6879943: CTW failure jdk6_18/hotspot/src/share/vm/c1/c1_LIR.hpp:2029 - S6880029: JDK 1.6.0_u14p Application crashed very early - S6880034: SIGBUS during deoptimisation at a safepoint on 64bit-SPARC - S6880052: SIGSEGV in GraphKit::null_check_common() - S6880053: assert(alloc_obj->as_CheckCastPP()->type() != TypeInstPtr::NOTNULL) - S6880533: test/compiler/6865031/Test.java miss -XX:+IgnoreUnrecognizedVMOptions - S6880574: C2 assert in escape.cpp:445 on linux-amd64 - S6880903: G1: G1 reports incorrect Runtime.maxMemory() - S6882730: G1: parallel heap verification messes up region dump - S6883468: C2 compiler enters infinite loop in PhaseIterGVN::transform - S6884552: remove some unnecessary #ifdef's introduced in the fix for 4957990 - S6884624: Update copyright year - S6884837: test/java/net/MulticastSocket/SetOutgoingIf.java should check if interfaces are up/support multicast - S6885041: G1: inconsistent thread dump - S6885169: merge of 4957990 and 6863023 causes conflict on do_nmethods - S6885297: java -XX:RefDiscoveryPolicy=2 or -XX:TLABWasteTargetPercent=0 cause VM crash - S6885584: A particular class structure causes large allocation spike for jit - S6885900: Bump the HS17 build number to 02 - S6886024: G1: assert(recent_avg_pause_time_ratio() < 1.00,"All GC?") - S6886353: For DeoptimizeALot, JTreg tests should "IgnoreUnrecognizedVMOptions on a product build - S6887186: G1: Incorrect code generated for G1 pre-barrier by C1 on SPARC - S6887292: memory leak in freetypeScaler.c - S6887571: Increase default heap config sizes - S6887703: Unsigned applet can retrieve the dragged information before drop action occur - S6887914: Bump the HS16 build number to 10 - S6887948: test/gc/6845368/bigobj.java fails due to timeout - S6888149: AtomicReferenceArray causes SIGSEGV -> SEGV_MAPERR error - S6888316: G1: has_aborted() || _cm->region_stack_empty() fails - S6888619: G1: too many guarantees in concurrent marking - S6888847: TaskQueue needs release_store() for correctness on RMO machines - S6888880: JKernel VM to inject the sun.jkernel.DownloadManager as a boot classloader hook - S6888898: CMS: ReduceInitialCardMarks unsafe in the presence of cms precleaning - S6889300: assert(i != k || is_new || i->outcnt() > 0, "don't return dead nodes") - S6889302: TraceExceptions output should include detail message - S6889649: SAXException.toString() implementation considered harmful - S6889654: SAXParseException should have a better toString method - S6889656: assert(lo_lrg->lo_degree() || !lo_no_simplify,"Live range was lo-degree before coalesce - S6889740: G1: OpenDS fails with "unhandled exception in compiled code" - S6889757: G1: enable card mark elision for initializing writes from compiled code (ReduceInitialCardMarks) - S6889869: assert(!Interpreter::bytecode_should_reexecute(code),"should not reexecute") - S6890137: G1: revamp reachable object dump - S6890293: Bump the HS17 build number to 03 - S6890308: integrate zero assembler hotspot changes - S6890984: Comparison of 2 arrays could cause VM crash - S6891677: java/build integrate zero assembler JDK changes - S6891750: deopt blob kills values in O5 - S6892079: live value must not be garbage failure after fix for 6854812 - S6892186: SA does not dump debug info for scalar replaced objects - S6892265: System.arraycopy unable to reference elements beyond Integer.MAX_VALUE bytes - S6892485: Deadlock in SunGraphicsEnvironment / FontManager - S6892658: C2 should optimize some stringbuilder patterns - S6892749: assert(UseParNewGC || UseSerialGC || UseConcMarkSweepGC, "...") fails - S6893081: method handle & invokedynamic code needs additional cleanup (post 6815692, 6858164) - S6893095: G1: bulk G1 backports to hs16 - S6893268: additional dynamic language related optimizations in C2 - S6893483: DTrace probe return values for a couple JNI methods are wrong - S6893504: LinkageError for bootstrap duplicate class definitions. - S6893554: SPECjvm2008 mpegaudio fails with SecurityException - S6893701: compiler/6877254/Test.java fails because it combines -XX:+UseConcMarkSweepGC with other GC - S6893947: Deserialization of RMIConnectionImpl objects should enforce stricter checks [ZDI-CAN-588] - S6893954: Subclasses of InetAddress may incorrectly interpret network addresses - S6893995: Bump the HS16 build number to 11 - S6893996: change default JPRT release target to be 6u18 - S6894206: JVM needs a way to traverse method handle structures - S6894779: Loop Predication for Loop Optimizer in C2 - S6894807: No ClassCastException for HashAttributeSet constructors if run with -Xcomp - S6894844: Bump the HS17 build number to 04 - S6895168: JCK api/signaturetest/sigtest.basic.html#basic test fails for jdk 5.0 with HS 16 in nightly build - S6895236: CMS: cmsOopClosures.inline.hpp:43 assert(..., "Should remember klasses in this context") - S6895383: JCK test throws NPE for method compiled with Escape Analysis - S6895788: G1: SATB and update buffer allocation code allocates too much space - S6896043: first round of zero fixes - S6896084: VM does not reserve protected page below heap for compressed oops implicit null checks - S6896352: CTW fails hotspot/src/share/vm/opto/escape.cpp:1155 - S6896370: CTW fails share/vm/opto/matcher.cpp:1475 "duplicating node that's already been matched" - S6896472: Missing libjsig.so causes jdk build failure - S6896647: card marks can be deferred too long - S6896727: nsk/logging/LoggingPermission/LoggingPermission/logperm002 fails with G1, EscapeAnalisys - S6898160: Need serviceability support for new vm argument type 'uint64_t' - S6898622: ObjectIdentifer.equals is not capable of detecting incorrectly encoded CommonName OIDs - S6898707: Bump the HS17 build number to 05 - S6898739: TLS renegotiation issue - S6898857: [Regression] -XX:NewRatio with -XX:+UseConcMarkSweepGC causes fatal error - S6898948: G1: forensic instrumentation for out-of-bounds recent_avg_pause_time_ratio() - S6899058: G1: Internal error in ptrQueue.cpp:201 in nightly tests - S6899467: System property java.class.version out-of-sync with VM for jdk 5.0 with HS 16 in nightly build - S6899653: Sun Java Runtime CMM readMabCurveData Buffer Overflow Vulnerability - S6900249: Use StringBuilder instead of StringBuffer to avoid locking - S6900341: jaxp/jaxws ant scripts using ant runtime in classpath, needs to be explicit - S6900773: elide (unnecessary) catching of NumberFormatException in NodeCounter.setFormatting(...) - S6900779: Use HashMap instead of Hashtable in CharInfo, Encodings, NamespaceMapping, XMLReaderManager - S6900899: vm fails to start when -Xmx value is less than OldSize + NewSize - S6900997: Bump the HS16 build number to 12 - S6901572: JVM 1.6.16 crash on loops: assert(has_node(i),"") - S6902000: use ShouldNotReachHere() for btos/ctos/stos in TemplateInterpreterGenerator::set_short_entry_points - S6902036: WorldWind asserts on escape.cpp:1153: assert(addr->is_AddP(),"AddP required") - S6902115: G1:assert(ignore_max_completed||thread->is_Java_thread()||SafepointSynchronize::is_at_safepoint()) - S6902182: 4/4 Starting with jdwp agent should not incur performance penalty - S6902299: Java JAR "unpack200" must verify input parameters - S6902303: G1: ScavengeALot should cause an incremental, rather than a full, collection - S6902701: G1: protect debugging code related to 6898948 with a debug flag - S6903453: Zero build on ARM and IA-64 - S6904191: OptimizeStringConcat should be product instead of experimental - S6904516: More object array barrier fixes, following up on 6906727 - S6904691: Java Applet Trusted Methods Chaining Privilege Escalation Vulnerability - S6904967: G1: some CollectionUsageThreshold tests fail - S6904996: Bump the HS16 build number to 13 - S6906565: G1: deal with compilation warning in g1MemoryPool.hpp - S6906727: UseCompressedOops: some card-marking fixes related to object arrays - S6908167: jbb2005, OptimizeStringConcat causes assert in EA - S6908208: UseCompressedOops: array_size() returns incorrect size for MAX_INT object array following 6906727 - S6908215: G1: SEGV with G1PolicyVerbose=2 debug flag - S6908267: Zero fails to unlock synchronized native methods on exception - S6909153: Fix broken options on Zero - S6909281: NPE is thrown when running rmid - S6909462: Fix nbproject/private references in .hgignore - S6909480: Disable Escape Analysis in jdk 6u18 - S6909597: Sun Java Runtime Environment JPEGImageReader stepX Integer Overflow Vulnerability - S6909756: G1: guarantee(G1CollectedHeap::heap()->mark_in_progress(),"Precondition.") - S6909759: using JDK 1.6.0_18-ea does not work with GlassFish v3 - S6909839: missing unsigned compare cases for some cmoves in sparc.ad - S6910484: incorrect integer optimization (loosing and op-r in a given example) - S6910590: Application can modify command array, in ProcessBuilder - S6910605: C2: NullPointerException/ClassCaseException is thrown when C2 with DeoptimizeALot is used - S6910618: C2: Error: assert(d->is_oop(),"JVM_ArrayCopy: dst not an oop") - S6910664: C2: java/util/Arrays/Sorting.java fails with DeoptimizeALot flag - S6911204: generated adapters with large signatures can fill up the code cache - S6912018: CMS: guarantee(head() != 0,"The head of the list cannot be NULL") - S6912062: disassembler plugin needs to produce symbolic information in product mode - S6912063: inlining parameters need to be adjusted for some uses of the JVM - S6912065: final fields in objects need to support inlining optimizations for JSR 292 - S6912517: JIT bug compiles out (and stops running) code that needs to be run. Causes NPE. - S6912782: Bump the HS17 build number to 06 - S6913075: EA identifies escape state incorrectly after 6895383 fix - S6913869: Zero assert fix - S6914002: unsigned compare problem after 5057818 - S6914206: change way of permission checking for generated MethodHandle adapters - S6914300: ciEnv should export all well known classes - S6914402: G1: assert(!is_young_card(cached_ptr),"shouldn't get a card in young region") - S6914622: Print values of all flags for product VM - S6914823: Java AWT Library Invalid Index Vulnerability - S6914866: Sun JRE ImagingLib arbitrary code execution vulnerability - S6914986: Make sure openjdk doc generation not turned off with JDK_UPDATE_VERSION - S6915005: G1: Hang in PtrQueueSet::completed_buffers_list_length with gcl001 - S6915110: IfNode::up_one_dom moves beyond RootNode bug in src/share/vm/opto/ifnode.cpp - S6915365: 3/4 assert(false,"Unsupported VMGlobal Type") at management.cpp:1540 - S6915557: assert(_gvn.type(l)->higher_equal(type),"must constrain OSR typestate") with debug build - S6916644: C2 compiler crash on x86 - S6916652: G1: remove +UseG1GC from under experimental options - S6916986: handle spaces in langtools launcher path - S6917454: sjsxp issue 53: StartDocument.encodingSet() returns false even when set - S6917463: Bump the HS17 build number to 07 - S6917485: Corba doc warnings - S6917698: os::is_allocatable Zero fix for 32-bit platforms - S6917766: JSR 292 needs its own deopt handler - S6917931: compiler/6895383/Test.java don't compile due missed imports - S6918006: G1: spill space must be reserved on the stack for barrier calls on Windows x64 - S6918421: 1/1 in-process JVM now ignores preset Windows unhandled exception filter - S6919437: Bump the HS17 build number to 08 - S6919629: Nimbus L&F Nimbus.Overrides option leaks significant amounts of memory - S6919886: Sweep CodeCache more aggressively to reduce its usage for CompileTheWorld - S6919980: G1: remove +UseG1GC from under experimental options (second attempt) - S6920090: G1: Disable ReduceInitialCardMarks at least until 6920109 is fixed - S6920293: OptimizeStringConcat causing core dumps - S6920317: package-info.java file has to be specified on the javac cmdline, else it will not be avail. - S6920346: G1: "must avoid base_memory and AliasIdxTop" - S6920732: opensource test/java/nio/charset - S6920970: Zero build fixes after 6849984 and 6911204 - S6920977: G1: guarantee(k == probe->klass(),"klass should be in dictionary") fails - S6921339: backout 6917766 - S6921352: JSR 292 needs its own deopt handler - S6921473: Bump the HS17 build number to 09 - S6921710: G1: assert(new_finger >= _finger && new_finger < _region_limit,"invariant") - S6921799: JSR 292 call sites should not be fixed-up - S6921922: fix for 6911204 breaks tagged stack interpreter - S6921969: optimize 64 long multiply for case with high bits zero - S6921992: failure in verify scheduling after 6792161 - S6923002: assert(false,"this call site should not be polymorphic") - S6923043: failed nightly tests which use -XX:+PrintCompilation -Xcomp -XX:CompileOnly - S6923123: Hotspot refuses to start when -Xmx4m or -Xms4m is specified - S6923146: Upgrade to JAXP 1.4.3 - S6923976: TestProviderLeak.java is using too small of an initial heap under newer Hotspot (b79+) - S6923991: G1: improve scalability of RSet scanning - S6924097: assert((_type == Type::MEMORY) == (_adr_type != 0),"adr_type for memory phis only") - S6925249: assert(last_sp < (intptr_t*) interpreter_frame_monitor_begin(),"bad tos") - S6926048: Improve Zero performance - S6926697: "optimized" VM build failed: The type "AdapterHandlerTableIterator" is incomplete - S6926703: apt tests should run with assertions enabled - S6926782: CodeBuffer size too small after 6921352 - S6927049: assert(is_Loop(),"invalid node class") - S6927165: Zero S/390 fixes - S6927797: langtools/test/tools/javac/EarlyAssert.java fails when run with assertions enabled (-ea) - S6927886: Bump the HS17 build number to 10 - S6928059: G1: command line parameter renaming - S6928065: G1: use existing command line parameters to set the young generation size - S6928073: G1: use existing command line parameters for marking cycle initiation - S6928081: G1: rename parameters common with CMS - S6928623: Behaviour of VERBOSE=true on langtools build - S6928700: Configure top repo for JPRT testing - S6928717: HS17 fails to build with SS11 C++ - S6928839: JSR 292 typo in x86 _adapter_check_cast - S6929005: Fix HS16 merge issues in OpenJDK 6 - S6930035: C2 type system incorrectly handles case j.l.Object->meet(constant AryPtr) - S6930043: C2: SIGSEGV in javasoft.sqe.tests.lang.arr017.arr01702.arr01702.loop_forw(II)I - S6930116: loop predication code does not handle If nodes with only one projection - S6930398: fix for return address locals in OSR entries uses wrong test - S6931465: Switch off by default optimization flags in HS17 - S6931763: sanity checks broken with latest cygwin, newer egrep -i option problems - S6931871: Rebranding of javadoc generation in makefiles - S6931882: Bump the HS17 build number to 11 - S6932473: (tz) javazic produces incorrect SimpleTimeZone parameters with Sun<=7 - S6932480: Crash in CompilerThread/Parser. Unloaded array klass? - S6932524: NIMBUS: 3 constructors of JSplitPane creates new jsp with continuous layout - they should not. - S6933032: (tz) Support tzdata2010e - S6933402: RFE: Improve PrintSafepointStatistics output to track cleanup time - S6933784: NIMBUS: ImageView getNoImageIcon and getLoadingImageIcon returns nulls instead of an icon - S6933846: GCC 4.5 warning removals - S6934089: Zero 32-bit/64kb page fix - S6934327: Update linux fontconfigs for Ubuntu and Fedora. - S6934615: Relative classpaths in jarfile manifests are handled inefficiently by rmic - S6934758: Expose the break down of clean up task time during Safepoint - S6935466: new CodeCache flushing code is not guarded by the flag - S6935535: String.indexOf() returns incorrect result on x86 with SSE4.2 - S6935821: G1: threads created during marking do not active their SATB queues - S6937160: G1: should observe GCTimeRatio - S6937417: javac -Xprint returns IndexOutOfBoundsException - S6938326: Use of "ant -diagnostics" a problem with ant 1.8.0, exit code 1 now - S6938342: Bump the HS17 build number to 12 - S6939021: (tz) Support tzdata2010g - S6939180: Zero locking fix - S6939182: Zero JNI handles fix - S6939646: Remove obsolete com.sun.corba.se.internal.io package - S6939845: zero needs fallback path in C++ interpreter for platform dependent fast bytecodes - S6940241: Change jaxp/jaxws so that the http downloads are not done by default - S6940310: G1: MT-unsafe calls to CM::region_stack_push() / CM::region_stack_pop() - S6940894: G1: assert(new_obj != 0 || ... "should be forwarded") for compaction tests - S6941027: Gervill update, April 2010 - S6941224: Improved stack overflow handling for Zero - S6941466: Oracle rebranding changes for Hotspot repositories - S6942253: G1: replace G1ParallelGCAllocBufferSize with YoungPLABSize and OldPLABSize - S6942317: Bump the HS17 build number to 13 - S6942771: SEGV in ParScanThreadState::take_from_overflow_stack - S6943053: Gervill: failures on invalid ranges and 14-bit banks - S6943119: Rebrand source copyright notices - S6944312: Potential rebranding issues in openjdk/langtools repository sources - S6944361: Missing CKR_ values in PKCS11Exception - S6944473: 6941224 misses new files - S6944503: Improved Zero crash dump - S6944787: Bump the HS17 build number to 14 - S6945238: (tz) Support tzdata2010i - S6945726: Change where hs17-b13 Mercurial tag is placed - S6948251: need to quote args in langtools launcher script - S6948602: Disable use of SSE4.2 in String.indexOf intrinsic until 6942326 is fixed - S6948803: CertPath validation regression caused by SHA1 replacement root and MD2 disable feature - S6948909: Jarsigner removes MANIFEST.MF info for badly packages jar's - S6949118: jvm.dll shows the company name as Sun Microsystems - S6949515: 3/3 VM crash when calling GetMethodDeclaringClass - S6949590: exes(java.exe, javaws.exe) show Copyright Year as 2004, COMPANY as Sun - S6950178: Zero stack improvements - S6950617: Zero/Shark interface updates - S6951293: control docs target does not work on windows - S6951784: Zero deoptimizer changes - S6951887: Wrong redirection useage in test sun/nio/cs/Test4200310.sh - S6953058: G1: A bigapp crashes with SIGSEGV in compiled code - S6953222: Revert change for 6909480 in OpenJDK 6 - S6953483: Typo related to ReduceInitialCardMarks leaves concurrent collectors vulnerable to heap corruption - S6954507: Bump the HS17 build number to 15 - S6954519: change default JPRT release target to be 6u20 - S6954621: small error in 6948909 fix - S6955292: Workaround ant 1.7.1 package-info.java issue in ant scripts - S6955300: Missing files in the jaf source bundle - S6955301: Update names and references to rebranded drop bundles (jaxp, jaxws, jaf) - S6955707: Correct addNotices.sh logic in Makefiles - S6955813: Fix incorrect Oracle rebranding headers from 6941466 - S6955873: CORBA resources bundles and javax.activity missing from b94 - S6956202: Fix a few missed rebranding issues, please contact lines etc. - S6956930: Remove unused OS_VENDOR make variable - S6957375: java/net/ResponseCache getResponseCode and ResponseCacheTest fail after rebranding - S6958257: Add support for alpha - S6958869: regression: PKIXValidator fails when multiple trust anchors have same dn - S6959596: Windows fastdebug build broken - S6960333: Add make level ALLOW_DOWNLOADS=true option - S6960335: Add top level 'make test' rule that uses test/Makefile, runs all test batches - S6960390: Bump the HS17 build number to 16 - S6960393: Fix misplaced b15 hg tag for hs17 - S6960407: Potential rebranding issues in openjdk/langtools repository sources - S6960550: Missing semicolon in Zero - S6960808: OpenJDK 6 Nimbus build failure - S6960831: fix CORBA build warnings - S6960853: Cleanup makefiles, remove unused vars etc. - S6961536: Nimbus code using @Override breaks build with source/target 1.5 - S6961870: More rebranding fixes for templates/gpl-*-header files - S6962193: Rebrand some Zero files * Updated to OpenJDK6 b19 with HotSpot 16. - S4670071: loadClassInternal is too restrictive. - S4766230: Hotspot vtable inconsistencies cause core dumps. 6579515. 6582242. - S4997835: RFE: crash dump will only be created when running w/ -XX:+ShowMessageBoxOnError - S5057225: Remove useless I2L conversions - S6378821: bitCount() should use POPC on SPARC processors and AMD+10h - S6442502: assert(bits,"Use TypePtr for NULL") on linux-x86 - S6449385: JCK test dup2_x200106m1 fails with Segmentation Fault on x86 - S6484956: G1: improve evacuation pause efficiency - S6484957: G1: parallel concurrent refinement - S6484959: G1: introduce survivor spaces - S6490395: G1: Tidy up command line flags. - S6511613: javac unexpectedly doesn't fail in some cases if an annotation processor specified - S6539464: Math.log() produces inconsistent results between successive runs. - S6541756: Reduce executable C-heap - S6543938: G1: remove the concept of popularity - S6567360: 3/4 SIGBUS in jvmti RawMonitor magic check for unaligned bad monitor pointer - S6589834: deoptimization problem with -XX:+DeoptimizeALot - S6603316: Improve instrumentation for classes loaded at startup - S6604422: G1: re-use half-promoted regions - S6614957: HttpsURLConnection not using the set SSLSocketFactory for creating all its Sockets - S6626217: Fixed loader constraint array handling - S6632169: HttpClient and HttpsClient should not try to reverse lookup IP address of a proxy server - S6633872: Policy/PolicyFile leak dynamic ProtectionDomains. - S6634138: Source generated in last round not compiled - S6636138: UseSuperWord enabled failure - S6639665: ThreadGroup finalizer allows creation of false root ThreadGroups - S6655638: dynamic languages need method handles - S6655646: dynamic languages need dynamically linked call sites - S6675856: Open charset tests - S6676423: (prefs) Opensource unit/regression tests for java.util.prefs - S6680135: A number of test/closed/java/awt/Focus/* tests should be opened - S6684007: PrintAssembly plugin not available for linux or windows - S6686273: Some AWT reg. tests should be moved to open repository (for CRs 6444769, 6480547, and 6560348) - S6689653: JMapPerm fails with UseConcMarkSweepIncGC and compressed oops off - S6690928: Use spinning in combination with yields for workstealing termination. - S6692899: CMS: many vm.parallel_class_loading tests fail with assert "missing Printezis mark" - S6699669: Hotspot server leaves synchronized block with monitor in bad state - S6700789: G1: Enable use of compressed oops with G1 heaps - S6700941: G1: allocation spec missing for some G1 classes - S6709742: find_base_for_derived's use of Ideal NULL is unsafe causing crashes during register allocation - S6711117: Assertion in 64bit server vm (flat != TypePtr::BOTTOM,"cannot alias-analyze an untyped ptr") - S6718964: Swing border tests should be open source - S6718965: Swing color chooser tests should be open source - S6720309: G1: don't synchronously update RSet during evacuation pauses - S6720334: G1: don't update RSets of collection set regions during an evacuation pause - S6724345: incorrect method resolution for enum classes entered as source files - S6728271: G1: Cleanup G1CollectedHeap::get_gc_alloc_regions() - S6736390: File TOCTOU deserialization vulnerability - S6737700: api/javax_swing/table/DefaultTableCellRenderer/index.html#getset:DefaultTableCellRenderer - S6741757: minor ctw improvements - S6745393: Inflater/Deflater clone issue - S6759521: Move Bidi test programs from closed to open. - S6760309: G1: update remembered sets during Full GCs - S6761600: Use sse 4.2 in intrinsics - S6761856: OpenJDK: vertical text metrics may be significanly different from those returned by Sun JDK - S6763530: Cannot decode PublicKey (Proider SunPKCS11, curve prime256v1) - S6766775: X509 certificate hostname checking is broken in JDK1.6.0_10 - S6771432: createSocket() - smpatch fails using 1.6.0_10 because of "Unconnected sockets not implemented" - S6772368: REGRESSION:tomcat crashed twice with JDK 7 - S6772683: Thread.isInterrupted() fails to return true on multiprocessor PC - S6778657: Casts in SharedRuntime::f2i, f2l, d2i and d2l rely on undefined C++ behaviour - S6778662: fixes 64-bits libraries directory search paths on linux - S6778669: Patch from Red Hat -- fixes compilation errors - S6781583: Hotspot build fails on linux 64 bit platform with gcc 4.3.2 - S6782232: assert("CreateEx must be first instruction in block" ) - S6782260: Memory leak in CodeBuffer::create_patch_overflow - S6783381: NUMA allocator: don't pretouch eden space with UseNUMA - S6784930: server jvm fails with assert(!n->is_SpillCopy(),"") - S6786346: intermittent Internal Error (src/share/vm/memory/cardTableModRefBS.cpp:226) - S6786503: Overflow list performance can be improved - S6786948: SA on core file fails on solaris-amd64 if vm started with -XX:+StartAttachListener - S6787106: Hotspot 32 bit build fails on platforms having different definitions for intptr_t & int32_t - S6787254: Work queue capacity can be increased substantially on some platforms - S6788347: C2Compiler crash 6u7 - S6788376: allow to ignore unrecognized VM options - S6788527: Server vm intermittently fails with assertion "live value must not be garbage" with fastdebug bits - S6788797: Fork HS14 to HS15 - renumber Major and build numbers of JVM - S6790182: matcher.cpp:1375: assert(false,"bad AD file") - S6790209: server VM fails with assert(will_link,"_new: typeflow responsibility") - S6791132: bad control in autobox split code - S6791168: Fix invalid code in bytecodeInterpreter that can cause gcc ICE - S6791178: Specialize for zero as the compressed oop vm heap base - S6791572: assert("duplicating node that's already been matched") - S6791656: nsk defclass0 asserts handles.hpp - S6791815: Fix for 6471657 can cause deadlock on non-Solaris platforms when initializing direct buffer support - S6791852: assert(b->_nodes[insidx] == n,"got insidx set incorrectly") - S6792301: StackAlignmentInBytes not honored for compiled native methods - S6792421: assert(_bitMap->isMarked(addr+size-1),inconsistent Printezis mark) - S6792705: Add JAR file to bootclasspath when using AggressiveOpts - S6793825: Missing include dependancies for GCC without predefined headers - S6793828: G1: invariant: queues are empty when activated - S6794939: assert(_base == OopPtr,"subclass must override cast_to_ptr_type") - S6795362: 32bit server compiler leads to wrong results on solaris-x86 - S6795465: Crash in assembler_sparc.cpp with client compiler on solaris-sparc - S6795913: A few remaining wrong casts need to be fixed for building hotspot successfully on Mac OS. - S6796746: rename LoadC (char) opcode class to LoadUS (unsigned short) - S6797305: Add LoadUB and LoadUI opcode class - S6797754: G1: combined bugfix - S6797870: Add -XX:+{HeapDump,PrintClassHistogram}{Before,After}FullGC - S6798785: Crash in OopFlow::build_oop_map: incorrect comparison of 64bit pointers - S6798898: CMS: bugs related to class unloading - S6799141: Build with --hash-style=both so that binaries can work on SuSE 10 - S6799452: HotSpot tests Makefile should take care of ALT_SLASH_JAVA - S6799693: Server compiler leads to data corruption when expression throws an Exception - S6800154: Add comments to long_by_long_mulhi() for better understandability - S6800586: -XX:+PrintGCDateStamps is using mt-unsafe localtime function - S6801625: CDS: HeapDump tests crash with internal error in compactingPermGenGen.cpp - S6802413: G1: G1FixedSurvivorSpaceSize should be converted into regions in calculate_survivors_policy() - S6802499: EA: assert(false,"unknown node on this path") - S6803688: Integrate latest JAX-WS (2.1.6) in to JDK 6u14 - S6804746: G1: guarantee(variance() > -1.0,"variance should be >= 0") (due to evacuation failure) - S6805427: adlc compiler may generate incorrect machnode emission code - S6805522: Server VM fails with assertion (block1->start() != block2->start(),"successors have unique bcis") - S6805724: ModLNode::Ideal() generates functionally incorrect graph when divisor is any (2^k-1) constant. - S6805748: Assertion "don't reset to 0 -- could be mistaken for never-executed" in CompilationPolicy - S6805950: Typos in andL_rReg_imm instructions in x86_64.ad - S6806046: Hotspot build error when compiled from Visual Studio - S6806226: Signed integer overflow in growable array code causes JVM crash - S6807084: AutoBox elimination is broken with compressed oops - S6807345: Bump HS15 build number to 02 - S6807963: need tool to make sense of LogCompilaton output - S6808322: ParNew, CMS, G1: ParGCAllocBuffer overflow - S6808589: Merge vm_version_x86_{32,64}.{cpp,hpp} - S6809798: SafePointScalarObject node placed into incorrect block during GCM - S6810474: par compact - crash in summary_phase with very full heap - S6810653: Change String cache class used by Hotspot from String to StringValue - S6810672: Comment typos - S6810698: G1: two small bugs in the sparse remembered sets - S6810845: Performance regression in mpegaudio on x64 - S6810855: KILL vs. TEMP ordering restrictions are too strong - S6811267: Fix for 6809798 broke linux build - S6811384: MacroAssembler::serialize_memory may touch next page on amd64 - S6812297: update project creation for Visual Studio 2005-2008 - S6812428: G1: Error: assert(ret || obj_in_cs(obj),"sanity") - S6812587: Use auxv to determine SPARC hardware features on Solaris - S6812678: macro assembler needs delayed binding of a few constants (for 6655638) - S6812721: Block's frequency should not be NaN - S6812831: factor duplicated assembly code for megamorphic invokeinterface (for 6655638) - S6812971: SA: re-attaching to process fails - S6813212: factor duplicated assembly code for general subclass check (for 6655638) - S6814467: G1: small fixes related to concurrent marking verboseness - S6814552: par compact - some compilers fail to optimize bitmap code - S6814575: Update copyright year - S6814659: separable cleanups and subroutines for 6655638 - S6814842: Load shortening optimizations - S6815683: G1: SEGV during marking - S6816154: G1: introduce flags to enable/disable RSet updating and scanning - S6816308: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003 - S6816433: Test G1 and ParOld in JPRT - S6816970: Bump HS15 build number to 03 - S6817419: G1: Enable extensive verification for humongous regions - S6818264: Heap dumper unexpectedly adds .hprof suffix - S6818666: G1: Type lost in g1 pre-barrier - S6819065: G1: eliminate high serial card table clearing time - S6819077: G1: first GC thread coming late into the GC. - S6819085: G1: use larger and/or user settable region size - S6819098: G1: reduce RSet scanning times - S6819213: revive sun.boot.library.path - S6819853: VM does not detect JDK which supports parallel class loaders - S6819891: ParNew: Fix work queue overflow code to deal correctly with +UseCompressedOops - S6820167: GCALotAtAllSafepoints + FullGCALot(ScavengeALot) options crash JVM - S6820321: G1: Error: guarantee(check_nums(total, n, parts), "all seq lengths should match") - S6820510: assertion failure with unloaded class in subnode.cpp - S6821003: Update hotspot windows os_win32 for windows 7 - S6821507: Alignment problem in GC taskqueue - S6821693: 64-bit TaskQueue capacity still too small - S6821700: tune VM flags for peak performance - S6822110: Add AddressLiteral class on SPARC - S6822204: volatile fences should prefer lock:addl to actual mfence instructions - S6822263: G1: JVMTI heap iteration fails - S6822333: _call_stub_compiled_return address handling in SA is broken causing jstack to hang occasionally - S6822370: ReentrantReadWriteLock: threads hung when there are no threads holding onto the lock (Netra x4450) - S6822407: heapOopSize lookup is incorrect in Serviceability Agent. - S6823354: Add intrinsics for {Integer,Long}.{numberOfLeadingZeros,numberOfTrailingZeros}() - S6823377: Bump HS15 build number to 04 - S6823453: DeoptimizeALot causes fastdebug server jvm to fail with assert(false,"unscheduable graph") - S6823454: Oop-typed loadP yields invalid pointer (0x1) on SPECjbb2005 at OSRed method entry - S6824463: deopt blob is testing wrong register on 64-bit x86 - S6824570: ParNew: Fix memory leak introduced in 6819891 - S6825642: nsk sajdi tests fail with NullPointerException - S6825815: Bump HS15 build number to 05 and update copyright date of HOTSPOT_VM_COPYRIGHT - S6826261: class file dumping from SA is broken - S6826318: G1: remove traversal-based refinement code - S6826736: CMS: core dump with -XX:+UseCompressedOops - S6826960: C2 Sparc: assert(bb->_nodes(_bb_end)->is_Proj(),"skipping projections after expected call") - S6827505: sizing logic for vtable and itable stubs needs self-check - S6827605: new String intrinsics may prevent EA scalar replacement - S6828024: verification of fixed interval usage is too weak - S6828069: Change JDK_MINOR_VER to 6 for 6Update HS versions - S6828076: Fork HS15 to HS16 - renumber Major and build numbers of JVM - S6829013: G1: set the default value of G1VerifyConcMarkPrintRechable to false - S6829021: tests for 6636138 use UseSuperword instead of UseSuperWord - S6829234: Refix 6822407 and 6812971 - S6829575: 100028: Debug information is incomplete or missing - S6830069: UseLargePages is broken on Win64 - S6830542: Performance: JVM_DefineClass already verified. - S6830815: jprt.config not setting proper compiler version for use in 6u14 - S6831225: Upgrade JPRT jobs to use newer Linux 2.6 (e.g. Fedora 9) - S6831323: Use v8plus as minimum required hardware for current Hotspot sources - S6831604: missing null check in guarantee - S6832293: JIT compiler got wrong result in type checking with -server - S6833129: specjvm98 fails with NullPointerException in the compiler with -XX:DeoptimizeALot - S6833316: jprt.properties not setting values for 6u14 release flag - S6833573: C2 sparc: assert(c < 64 && (c & 1) == 0,"bad double float register") - S6833576: G1: assert illegal index, growableArray.hpp:186 - S6833879: Assigning positive zero is ignored when old value is negative zero - S6833951: Extra ":" Causes Testcase in CR 6589834 "Parse Exception: Invalid tag: summary:" - S6834142: method->print_codes(): Error: ShouldNotReachHere() - S6834177: Running jsynprog on Solaris Nevada can cause JVM crash - S6834202: Bump the HS16 build number to 02 - S6835796: Fedora 9 linux_i586-fastdebug-c2-runThese_Xcomp times out - S6836054: java/util/Arrays/CopyMethods.java fails on solaris-sparc with IllegalArgumentException - S6837011: SIGSEGV in PhaseIdealLoop in 32bit jvm - S6837094: False positive for "meet not symmetric" failure - S6837146: Should perform unswitch before maximally unroll in loop transformation - S6837224: libsaproc.so on linux needs version of 6799141 - S6837472: com/sun/jdi/MonitorFrameInfo.java fails with AggressiveOpts in 6u14 - S6837906: compiler tests of 6636138 fail with IllegalAccessException - S6838154: make/linux/makefiles/sa.make needs hash-style fix - S6838819: Bump the HS16 build number to 03 - S6838842: NUMA allocator: Segfault during startup on Linux - S6839126: Type error found by newer windows compiler - S6839151: Add a JPRT default test of -Xshare:dump when new hotspot is built - S6839599: JVM crash while profiling Tomcat and Liferay - S6840196: NUMA allocator: crash in fastdebug during startup on Linux - S6840305: Discrepancy in system memory details (when 4G or greater) reported by JVM and Windows OS - S6840775: Multiple JVM crashes seen with 1.6.0_10 through 1.6.0_14 - S6841313: G1: dirty cards of survivor regions in parallel - S6841800: Incorrect boundary values behavior for option -XX:MaxLabelRootDepth=0-6 leads to jvm crash - S6841831: G1: assert(contains_reference(from),"We just added it!") fires - S6842999: Update hotspot windows os_win32 for windows 2008 R2 - S6843041: Remove duplicate README files in repositories (make/README) - S6843292: "Expect to be beyond new region unless impacting another region" assertion too strong - S6843580: JavaThread.getStackBase throws sun.jvm.hotspot.WrongTypeException invoked by jstack - S6843694: G1: assert(index < _vs.committed_size(),"bad index"), g1BlockOffsetTable.inline.hpp:55 - S6843752: missing code for an anti-dependent Phi in GCM - S6843761: Update langtools tests to remove unncessary -source and -target options - S6845368: large objects cause a crash or unexpected exception - S6847305: solaris reorder mapfiles generate too many warnings - S6848466: frame::frame_size() assertion failure with -XX:+DebugDeoptimization - S6848641: CMSCollector::_roots_scanning_options should be initialized - S6849122: G1: Typo introduced during implementation of the parallel refinement - S6849574: VM crash using NonBlockingHashMap (high_scale_lib) - S6849716: BitMap - performance regression introduced with G1 - S6850551: Bump the HS16 build number to 04 - S6850846: G1: extend G1 marking verification - S6850869: G1: RSet "scrubbing" scrubs too much - S6850957: Honor -XX:OnOutOfMemoryError when array size exceeds VM limit - S6851282: JIT miscompilation results in null entry in array when using CompressedOops - S6851386: assert(b->find_node(def) < j,"uses must follow definitions") - S6851742: (EA) allocation elimination doesn't work with UseG1GC - S6851829: solaris build fails with 5.8 compilers - S6851908: interpreter null check profiling broken causing extra compilation invalidation - S6852078: HSX 14/16 in jdk 5.0: api/javax_management api/org_omg jck tests crashes or make tnameserv crash - S6854027: Precompiled headers are not being updated in Linux/GCC builds - S6854812: 6.0_14-b08 crashes with a SIGSEGV - S6855115: G1: Fix for 6850869 is incorrect - S6855164: SIGSEGV during compilation of method involving loop over CharSequence. - S6855215: Calculation error (NaN) after about 1500 calculations - S6855236: Compiler Tree API TreePath class generates NullPointerException from Iterator - S6855834: G1: minimize the output when -XX:+PrintHeapAtGC is set - S6856025: assert(_base >= OopPtr && _base <= KlassPtr,"Not a Java pointer") - S6856257: Bump the HS16 build number to 05 - S6857159: local schedule failed with checkcast of Thread.currentThread() - S6857194: Add hotspot perf counters to aid class loading performance measurement - S6857661: 64-bit server VM: assert(is_Initialize(),"invalid node class") - S6857707: Add missing test case for CR 6855164 from its bug description. - S6858208: jvm crash when specifying TypeProfileWidth=0 on jdk 6.0 - S6858886: G1: guarantee(_next_marked_bytes <= used(),"invariant") at heapRegion.hpp:359 - S6859338: amd64 native unverified entry point pushes values before implicit null check - S6859411: Bump the HS16 build number to 06 - S6859911: G1: assert(Heap_lock->owner() = NULL, "Should be owned on this thread's behalf") - S6860469: remix_address_expressions sets incorrect control causing crash in split_if_with_block_post - S6860599: nodes limit could be reached during Output phase - S6860920: serialize.cpp shouldn't use objArrayOopDesc::base_offset_in_bytes(T_BYTE) - S6861513: correct copyright attribution in test for 6837094 and 6860469 - S6861660: OopMapBlock count/size confusion - S6861984: solaris version of libsaproc.so should support SA_ALTROOT directly - S6862534: -XX:NewRatio completely ignored when combined with -XX:+UseConcMarkSweepG - S6862576: vmIntrinsics needs cleanup in order to support JSR 292 intrinsics - S6862661: G1: _gc_alloc_region_counts is not updated properly after 6604422 - S6862863: C2 compiler fails in elide_copy() - S6862919: Update copyright year - S6862945: 4/3 conversion of jmethodID to methodOop in JVMTI is too expensive - S6863155: Server compiler generates incorrect code (x86, long, bitshift, bitmask) - S6863216: Clean up debugging debris inadvertently pushed with 6700789 - S6863420: os::javaTimeNanos() go backward on Solaris x86 - S6864003: Modify JVM_FindClassFromBootLoader to return null if class not found - S6864886: G1: rename -XX parameters related to update buffers - S6864901: Bump the HS16 build number to 07 - S6864914: SPECjvm2008 produces invalid result with zero based Compressed Oops - S6865031: Application gives bad result (throws bad exception) with compressed oops - S6865703: G1: Parallelize hot card cache cleanup - S6866585: debug code in ciObjectFactory too slow for large objects - S6866591: G1: print update buffer processing stats more often - S6867645: java -Xshare:dump failed - read only space too small - S6868051: (SA) FreeChunk support for compressed oops is broken - S6868269: CompileTheWorld assertion failure introduced by the reexecute bit implementation - S6868486: timouts and outOfMemory in regression tests - S6868487: EnableInvokeDynamic and EnableMethodHandles should not be visible flags in JDK6 or JDK7 - S6868991: JPRT: elide GCBasher_G1 test on winx64 until 6867250 is resolved - S6869822: assert(Universe::narrow_oop_shift() == 0,"use unscaled narrow oop") - S6870843: G1: G1 GC memory leak - S6871111: G1: remove the concurrent overhead tracker - S6871765: Bump the HS16 build number to 08 - S6872000: G1: compilation fails on linux/older gcc - S6873059: Explicitly use -source 5 -target 5 when compiling with the boot jdk - S6873059: Explicitly use -source 5 -target 5 when compiling with the boot jdk javac - S6875329: fix for 6795465 broke exception handler cloning - S6875866: Intrinsic for String.indexOf() is broken on x86 with SSE4.2 - S6876276: assert(!is_visited,"visit only once") - S6876584: parameters order is incorrect for enc_String_Equals() in x86_32.ad - S6879058: Change default JPRT release target for 6Update series VMs - S6879061: Bump the HS16 build number to 09 - S6879572: SA fails with "RuntimeException: field "_is_marked_dependent" not found - S6879689: Fix warning about ignored return value when compiling with -O2 - S6880053: assert(alloc_obj->as_CheckCastPP()->type() != TypeInstPtr::NOTNULL) - S6883468: C2 compiler enters infinite loop in PhaseIterGVN::transform - S6886024: G1: assert(recent_avg_pause_time_ratio() < 1.00,"All GC?") - S6886353: For DeoptimizeALot, JTreg tests should "IgnoreUnrecognizedVMOptions on a product build - S6887571: Increase default heap config sizes - S6887703: Unsigned applet can retrieve the dragged information before drop action occur - S6887914: Bump the HS16 build number to 10 - S6888149: AtomicReferenceArray causes SIGSEGV -> SEGV_MAPERR error - S6888898: CMS: ReduceInitialCardMarks unsafe in the presence of cms precleaning - S6889740: G1: OpenDS fails with "unhandled exception in compiled code" - S6889757: G1: enable card mark elision for initializing writes from compiled code (ReduceInitialCardMarks) - S6890137: G1: revamp reachable object dump - S6890308: integrate zero assembler hotspot changes - S6891677: java/build integrate zero assembler JDK changes - S6892079: live value must not be garbage failure after fix for 6854812 - S6892265: System.arraycopy unable to reference elements beyond Integer.MAX_VALUE bytes - S6892658: C2 should optimize some stringbuilder patterns - S6892749: assert(UseParNewGC || UseSerialGC || UseConcMarkSweepGC, "...") fails - S6893095: G1: bulk G1 backports to hs16 - S6893554: SPECjvm2008 mpegaudio fails with SecurityException - S6893947: Deserialization of RMIConnectionImpl objects should enforce stricter checks [ZDI-CAN-588] - S6893954: Subclasses of InetAddress may incorrectly interpret network addresses - S6893995: Bump the HS16 build number to 11 - S6893996: change default JPRT release target to be 6u18 - S6894807: No ClassCastException for HashAttributeSet constructors if run with -Xcomp - S6895788: G1: SATB and update buffer allocation code allocates too much space - S6896043: first round of zero fixes - S6896084: VM does not reserve protected page below heap for compressed oops implicit null checks - S6896647: card marks can be deferred too long - S6898160: Need serviceability support for new vm argument type 'uint64_t' - S6898622: ObjectIdentifer.equals is not capable of detecting incorrectly encoded CommonName OIDs - S6898739: TLS renegotiation issue - S6898857: [Regression] -XX:NewRatio with -XX:+UseConcMarkSweepGC causes fatal error - S6899653: Sun Java Runtime CMM readMabCurveData Buffer Overflow Vulnerability - S6900341: jaxp/jaxws ant scripts using ant runtime in classpath, needs to be explicit - S6900899: vm fails to start when -Xmx value is less than OldSize + NewSize - S6900997: Bump the HS16 build number to 12 - S6902299: Java JAR "unpack200" must verify input parameters - S6903453: Zero build on ARM and IA-64 - S6904191: OptimizeStringConcat should be product instead of experimental - S6904691: Java Applet Trusted Methods Chaining Privilege Escalation Vulnerability - S6904996: Bump the HS16 build number to 13 - S6906727: UseCompressedOops: some card-marking fixes related to object arrays - S6908208: UseCompressedOops: array_size() returns incorrect size for MAX_INT object array following 6906727 - S6909153: Fix broken options on Zero - S6909281: NPE is thrown when running rmid - S6909480: Disable Escape Analysis in jdk 6u18 - S6909597: Sun Java Runtime Environment JPEGImageReader stepX Integer Overflow Vulnerability - S6910590: Application can modify command array, in ProcessBuilder - S6913869: Zero assert fix - S6914622: Print values of all flags for product VM - S6914823: Java AWT Library Invalid Index Vulnerability - S6914866: Sun JRE ImagingLib arbitrary code execution vulnerability - S6914986: Make sure openjdk doc generation not turned off with JDK_UPDATE_VERSION - S6917485: Corba doc warnings - S6918421: 1/1 in-process JVM now ignores preset Windows unhandled exception filter - S6920732: opensource test/java/nio/charset - S6923976: TestProviderLeak.java is using too small of an initial heap under newer Hotspot (b79+) - S6926703: apt tests should run with assertions enabled - S6927797: langtools/test/tools/javac/EarlyAssert.java fails when run with assertions enabled (-ea) - S6928623: Behaviour of VERBOSE=true on langtools build - S6929005: Fix HS16 merge issues in OpenJDK 6 - S6932480: Crash in CompilerThread/Parser. Unloaded array klass? - S6933846: GCC 4.5 warning removals - S6934327: Update linux fontconfigs for Ubuntu and Fedora. - S6937417: javac -Xprint returns IndexOutOfBoundsException - S6938326: Use of "ant -diagnostics" a problem with ant 1.8.0, exit code 1 now - S6939845: zero needs fallback path in C++ interpreter for platform dependent fast bytecodes - S6941027: Gervill update, April 2010 - S6943053: Gervill: failures on invalid ranges and 14-bit banks * Bumped to CACAO 1.1.0 pre-release snapshot. * Backports: - S6961732: FontMetrics.getLeading() may be negative in freetype-based OpenJDK builds - S6967533: ExceptionInInitializerError on systems with uninitialized clock - S6795060: VM crash on Linux in ICU layout library when processing \u0DDD (Sinhalese) - S6969395: Synchronization of HttpServlet regression test with OpenJDK7 - S6510892: com/sun/net/httpserver/bugs/B6361557.java fails - S6307603: [X11] Use RENDER extension for complex operations done in software - S6668231: Presence of a critical subjectAltName causes JSSE's SunX509 to fail trusted checks - S6678385: Random java.lang.StackOverflowError from various JDKs - S6725214: D3D: forward-port the new pipeline from 6u10 - S6755274: 6u10b33 2d tests fails on sles10x64 with jvm crash - S6951319, PR398: enable solaris builds using Sun Studio 12 update 1 - S6963870: NPE in CompoundBorder.getInsets() - S6791612: OGLBat tests are failed in jdk 7 b42 * Fixes: - Provide font configuration for RHEL 6. - G266295: Provide font configuration for Gentoo. - D560056: Avoid failure when net.ipv6.bindv6only is set to 1. - G244901: Skip test_gamma on hardened (PaX-enabled) kernels * Zero/Shark - Update Shark for LLVM 2.8 API change r100304 - Shark calling static jni methods jclass argument fix. - PR484: Shark jit code block "0xcdcdcdcd" zombie wipeout Sigsegv crash - Backport new frame anchor and stack overflow code for Zero and Shark - Fix stack leak in Shark - PR494: Shark fails to catch Exception using catch (Throwable e) - PR525: Shark made not entrant deopt sigsegv regression after bump to b20 and hs17. - LLVM 2.7 non-product fixes. * NetX - Do not use Look and Feel related methods for setting up security dialogs - Minor fixes to JNLPRandomAccessFile - Fix browser command in BasicService.showDocument(URL) - Run programs that inherit main(String[]) in their main-class - Run JNLP files that use spec version 1.6 - RH601281: Possible NullPointerException in splash screen code * Plugin - RH560193: Fix ziperror when applet jar contained another 0-byte jar * PulseAudio: - PR438: PulseAudioSourceDataLine falsely returns true to isControlSupported(Gain) The tarball can be downloaded from: * http://icedtea.classpath.org/download/source/icedtea6-1.9.tar.gz sha256sum: 829ca9d920b60c62c5568fabf0458a7f8ac25294b07a7befbd82a80fe65da867 The following people helped with the 1.9 release: Gary Benson, Deepak Bhole, Andrew John Hughes, C. K. Jester-Young, Matthias Klose, Omair Majid, Xerxes R?nby, Andrew Su, Pavel Tisnovsky, Jon VanAlten, Mark Wielaard and Man Lung Wong We would also like to thank the bug reporters and testers! To get started: $ tar xzf icedtea6-1.9.tar.gz $ cd icedtea6-1.9 Full build requirements and instructions are in INSTALL: $ ./configure [--enable-zero --with-openjdk --enable-pulse-java --enable-systemtap ...] $ make -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Tue Sep 7 12:43:34 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 07 Sep 2010 19:43:34 +0000 Subject: [Bug 545] New: eclipse 3.5 - 4.0 crash on startup when using icedtea with cacao Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=545 Summary: eclipse 3.5 - 4.0 crash on startup when using icedtea with cacao Product: IcedTea Version: 6-1.8.1 Platform: all OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: CACAO AssignedTo: unassigned at icedtea.classpath.org ReportedBy: Michael.Gaber at gmx.net Build Identifier: when i run eclipse with self-built icedtea 6.1.8.1-r1 with cacao enabled (gentoo emerge with cacao useflag) it crashes before even showing the splashscreen with the progress bar (the first splash shows) with the following error: tigerchen at keksdose-mobile ~ $ ./eclipse-4.0/eclipse ERROR: Unable to create class 'org.eclipse.e4.ui.internal.workbench.ResourceHandler' from bundle '61' org.eclipse.e4.core.di.InjectionException: java.lang.LinkageError: subtype constraint violated (java.lang.Object is not a subclass of org.eclipse.emf.common.util.BasicEMap$Entry) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:54) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:795) at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:104) at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:292) at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:219) at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:152) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:90) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:64) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:53) at org.eclipse.e4.ui.internal.workbench.swt.E4Application.loadApplicationModel(E4Application.java:314) at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createE4Workbench(E4Application.java:185) at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:532) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:525) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) at org.eclipse.equinox.launcher.Main.main(Main.java:1383) Caused by: java.lang.LinkageError: subtype constraint violated (java.lang.Object is not a subclass of org.eclipse.emf.common.util.BasicEMap$Entry) at org.eclipse.emf.ecore.util.EcoreEMap$DelegateEObjectContainmentEList.didAdd(EcoreEMap.java:130) at org.eclipse.emf.common.util.BasicEList.addUnique(BasicEList.java:425) at org.eclipse.emf.common.notify.impl.NotifyingListImpl.doAddUnique(NotifyingListImpl.java:331) at org.eclipse.emf.common.notify.impl.NotifyingListImpl.addUnique(NotifyingListImpl.java:315) at org.eclipse.emf.common.util.AbstractEList.add(AbstractEList.java:307) at org.eclipse.emf.common.util.BasicEMap.put(BasicEMap.java:591) at org.eclipse.emf.ecore.impl.EPackageImpl.addAnnotation(EPackageImpl.java:1655) at org.eclipse.emf.ecore.impl.EPackageImpl.addAnnotation(EPackageImpl.java:1640) at org.eclipse.emf.ecore.impl.EPackageImpl.addAnnotation(EPackageImpl.java:1635) at org.eclipse.emf.ecore.impl.EcorePackageImpl.createExtendedMetaDataAnnotations(EcorePackageImpl.java:2923) at org.eclipse.emf.ecore.impl.EcorePackageImpl.internalBootstrap(EcorePackageImpl.java:524) at org.eclipse.emf.ecore.EcorePackage.(EcorePackage.java:6582) at org.eclipse.emf.ecore.impl.EPackageImpl.(EPackageImpl.java:191) at org.eclipse.e4.ui.model.application.impl.ApplicationPackageImpl.(ApplicationPackageImpl.java:614) at org.eclipse.e4.ui.model.application.impl.ApplicationPackageImpl.init(ApplicationPackageImpl.java:640) at org.eclipse.e4.ui.model.application.impl.ApplicationPackageImpl.(ApplicationPackageImpl.java:80) at org.eclipse.e4.ui.internal.workbench.ResourceHandler.init(ResourceHandler.java:106) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:47) ... 28 more -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From andrew at icedtea.classpath.org Tue Sep 7 15:34:33 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 07 Sep 2010 22:34:33 +0000 Subject: /hg/icedtea: Get 6977640 changeset from upstream forest instead. Message-ID: changeset 24c32ab62605 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=24c32ab62605 author: Andrew John Hughes date: Tue Sep 07 23:34:25 2010 +0100 Get 6977640 changeset from upstream forest instead. 2010-09-07 Andrew John Hughes * patches/icedtea-6977640.patch: Dropped. * Makefile.am: Drop above patch and bump HotSpot changeset/hash to incorporate change instead. diffstat: 3 files changed, 10 insertions(+), 112 deletions(-) ChangeLog | 7 ++ Makefile.am | 7 +- patches/icedtea-6977640.patch | 108 ----------------------------------------- diffs (157 lines): diff -r 8197d06d05e5 -r 24c32ab62605 ChangeLog --- a/ChangeLog Tue Sep 07 13:23:01 2010 +0200 +++ b/ChangeLog Tue Sep 07 23:34:25 2010 +0100 @@ -1,3 +1,10 @@ 2010-09-07 Matthias Klose + + * patches/icedtea-6977640.patch: Dropped. + * Makefile.am: Drop above patch and bump + HotSpot changeset/hash to incorporate change + instead. + 2010-09-07 Matthias Klose PR icedtea/543 diff -r 8197d06d05e5 -r 24c32ab62605 Makefile.am --- a/Makefile.am Tue Sep 07 13:23:01 2010 +0200 +++ b/Makefile.am Tue Sep 07 23:34:25 2010 +0100 @@ -3,7 +3,7 @@ OPENJDK_VERSION = b106 OPENJDK_VERSION = b106 CORBA_CHANGESET = 00a2834117ff -HOTSPOT_CHANGESET = a30c85eed5d5 +HOTSPOT_CHANGESET = 7f4113719dc5 JAXP_CHANGESET = 679653c22ae1 JAXWS_CHANGESET = 191a3ec51d79 JDK_CHANGESET = a094068f4c7b @@ -11,7 +11,7 @@ OPENJDK_CHANGESET = b79fce47b7c6 OPENJDK_CHANGESET = b79fce47b7c6 CORBA_SHA256SUM = 5648b189c94df46bbec9bc7c8640957befffbde68ff7ef9f8f8de9bd7fbe8e7d -HOTSPOT_SHA256SUM = 93f71928d061f86f6a18f224f92ac217ea4dcc324183b029ece9a862c445714d +HOTSPOT_SHA256SUM = 8ff4445304680ca7b09edd2b5713e5c04b0f68308c593d84429691ff4f7e8cfb JAXP_SHA256SUM = c7d58a5dd2859ccb8b2d0897a26ce9b37895f530a94a5912179afc25cc1d14ea JAXWS_SHA256SUM = 6fd65fd23c085c9c89f904da1b6448460af32d97d76bb0ba49630ee61d70a4d6 JDK_SHA256SUM = 8b20e0686667a03cf028d57695b4bc2196c51db2d9c0873db7694624c384c446 @@ -339,8 +339,7 @@ ICEDTEA_PATCHES = \ patches/extensions/netx.patch \ patches/extensions/netx-dist.patch \ patches/extensions/netx-umask.patch \ - patches/jtreg-httpTest.patch \ - patches/icedtea-6977640.patch + patches/jtreg-httpTest.patch # Conditional patches diff -r 8197d06d05e5 -r 24c32ab62605 patches/icedtea-6977640.patch --- a/patches/icedtea-6977640.patch Tue Sep 07 13:23:01 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,108 +0,0 @@ - -# HG changeset patch -# User twisti -# Date 1282119736 25200 -# Node ID 13b87063b4d8dea40ba97a283ad5bd3272e876f3 -# Parent a62d332029cf3a8c710687b833d71966e078bbdc -6977640: Zero and Shark fixes -Summary: A number of fixes for Zero and Shark. -Reviewed-by: twisti -Contributed-by: Gary Benson - ---- openjdk/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.inline.hpp Fri Aug 13 15:14:00 2010 -0700 -+++ openjdk/hotspot/src/cpu/zero/vm/bytecodeInterpreter_zero.inline.hpp Wed Aug 18 01:22:16 2010 -0700 -@@ -1,6 +1,6 @@ - /* - * Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved. -- * Copyright 2007 Red Hat, Inc. -+ * Copyright 2007, 2010 Red Hat, Inc. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it -@@ -268,7 +268,7 @@ inline jint BytecodeInterpreter::VMintSu - return op1 - op2; - } - --inline jint BytecodeInterpreter::VMintUshr(jint op1, jint op2) { -+inline juint BytecodeInterpreter::VMintUshr(jint op1, jint op2) { - return ((juint) op1) >> (op2 & 0x1F); - } - ---- openjdk/hotspot/src/cpu/zero/vm/javaFrameAnchor_zero.hpp Fri Aug 13 15:14:00 2010 -0700 -+++ openjdk/hotspot/src/cpu/zero/vm/javaFrameAnchor_zero.hpp Wed Aug 18 01:22:16 2010 -0700 -@@ -82,6 +82,10 @@ - return _last_Java_fp; - } - -+ address last_Java_pc() const { -+ return _last_Java_pc; -+ } -+ - static ByteSize last_Java_fp_offset() { - return byte_offset_of(JavaFrameAnchor, _last_Java_fp); - } ---- openjdk/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp Fri Aug 13 15:14:00 2010 -0700 -+++ openjdk/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp Wed Aug 18 01:22:16 2010 -0700 -@@ -435,22 +435,22 @@ extern "C" { - void _Copy_arrayof_conjoint_bytes(HeapWord* from, - HeapWord* to, - size_t count) { -- ShouldNotCallThis(); -+ memmove(to, from, count); - } - void _Copy_arrayof_conjoint_jshorts(HeapWord* from, - HeapWord* to, - size_t count) { -- ShouldNotCallThis(); -+ memmove(to, from, count * 2); - } - void _Copy_arrayof_conjoint_jints(HeapWord* from, - HeapWord* to, - size_t count) { -- ShouldNotCallThis(); -+ memmove(to, from, count * 4); - } - void _Copy_arrayof_conjoint_jlongs(HeapWord* from, - HeapWord* to, - size_t count) { -- ShouldNotCallThis(); -+ memmove(to, from, count * 8); - } - }; - ---- openjdk/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.cpp Fri Aug 13 15:14:00 2010 -0700 -+++ openjdk/hotspot/src/os_cpu/linux_zero/vm/thread_linux_zero.cpp Wed Aug 18 01:22:16 2010 -0700 -@@ -1,6 +1,6 @@ - /* - * Copyright (c) 1997, 2007, Oracle and/or its affiliates. All rights reserved. -- * Copyright 2009 Red Hat, Inc. -+ * Copyright 2009, 2010 Red Hat, Inc. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it -@@ -23,6 +23,9 @@ - * - */ - --// This file is intentionally empty -+#include "incls/_precompiled.incl" -+#include "incls/_thread_linux_zero.cpp.incl" - --void JavaThread::cache_global_variables() { } -+void JavaThread::cache_global_variables() { -+ // nothing to do -+} ---- openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp Fri Aug 13 15:14:00 2010 -0700 -+++ openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp Wed Aug 18 01:22:16 2010 -0700 -@@ -421,7 +421,9 @@ BytecodeInterpreter::run(interpreterStat - #ifdef ASSERT - if (istate->_msg != initialize) { - assert(abs(istate->_stack_base - istate->_stack_limit) == (istate->_method->max_stack() + 1), "bad stack limit"); -- IA32_ONLY(assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1, "wrong")); -+#ifndef SHARK -+ IA32_ONLY(assert(istate->_stack_limit == istate->_thread->last_Java_sp() + 1, "wrong")); -+#endif // !SHARK - } - // Verify linkages. - interpreterState l = istate; - From ptisnovs at redhat.com Wed Sep 8 00:19:18 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Wed, 08 Sep 2010 09:19:18 +0200 Subject: [1.7 & 1.8 BRANCH APPROVAL]: Backport 6539464: Math functions produce inconsistent results In-Reply-To: <20100903232535.GD11124@rivendell.middle-earth.co.uk> References: <20100903232535.GD11124@rivendell.middle-earth.co.uk> Message-ID: <4C8738F6.3060809@redhat.com> Dr Andrew John Hughes wrote: > Applies to hs14 only. hs16 (1.7 & 1.8 --with-hotspot-build=hs16) and hs17 (1.9, HEAD) have this fix. > > changeset: 1981:0b63ff75d44a > tag: tip > user: Andrew John Hughes > date: Sat Sep 04 00:21:46 2010 +0100 > files: ChangeLog Makefile.am NEWS patches/hotspot/original/6539464-consistent-math.patch > description: > S6539464, RH500077: Ensure Math functions return consistent results. > > 2010-09-03 Andrew John Hughes > > * Makefile.am: Add new patch. > * patches/hotspot/original/6539464-consistent-math.patch: > Backport fix for S6539464 which ensures Math functions > return consistent results. > * NEWS: Updated. > > Ok for 1.7 & 1.8? > Hi Andrew, this patch seems ok for me, I've done our usual tests and there are not any regression. Cheers Pavel From doko at ubuntu.com Wed Sep 8 03:04:40 2010 From: doko at ubuntu.com (Matthias Klose) Date: Wed, 08 Sep 2010 12:04:40 +0200 Subject: [patch, hotspot, sparc] fix compiler error with GCC 4.4 or newer Message-ID: <4C875FB8.3080207@ubuntu.com> the following patch is needed to fix a compiler error with GCC 4.4 or newer, required for openjdk7. Matthias -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: sparc.diff Url: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100908/1c24d6c9/sparc.diff From christian.thalinger at oracle.com Wed Sep 8 03:23:36 2010 From: christian.thalinger at oracle.com (Christian Thalinger) Date: Wed, 08 Sep 2010 12:23:36 +0200 Subject: [patch, hotspot, sparc] fix compiler error with GCC 4.4 or newer In-Reply-To: <4C875FB8.3080207@ubuntu.com> References: <4C875FB8.3080207@ubuntu.com> Message-ID: <1283941416.24114.14.camel@macbook> On Wed, 2010-09-08 at 12:04 +0200, Matthias Klose wrote: > the following patch is needed to fix a compiler error with GCC 4.4 or newer, > required for openjdk7. 6983073: fix compiler error with GCC 4.4 or newer on SPARC The changes look good and I'll push them for you. -- Christian From andrew at icedtea.classpath.org Wed Sep 8 05:16:29 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 08 Sep 2010 12:16:29 +0000 Subject: /hg/icedtea6: Synchronise NEWS with 1.9 branch. Message-ID: changeset e8452eabe369 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e8452eabe369 author: Andrew John Hughes date: Wed Sep 08 13:16:22 2010 +0100 Synchronise NEWS with 1.9 branch. 2010-09-08 Andrew John Hughes * NEWS: Sync with 1.9 branch. diffstat: 2 files changed, 411 insertions(+), 7 deletions(-) ChangeLog | 4 NEWS | 414 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- diffs (462 lines): diff -r b17d4c7ff7a1 -r e8452eabe369 ChangeLog --- a/ChangeLog Tue Sep 07 12:38:02 2010 +0100 +++ b/ChangeLog Wed Sep 08 13:16:22 2010 +0100 @@ -1,3 +1,7 @@ 2010-09-07 Andrew John Hughes + + * NEWS: Sync with 1.9 branch. + 2010-09-07 Andrew John Hughes S6510892, S6969395: diff -r b17d4c7ff7a1 -r e8452eabe369 NEWS --- a/NEWS Tue Sep 07 12:38:02 2010 +0100 +++ b/NEWS Wed Sep 08 13:16:22 2010 +0100 @@ -9,16 +9,18 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY New in release 1.10 (2010-XX-XX): + * Backports from OpenJDK6 - S4356282, RH525870: RFE: T2K should be used to rasterize CID/CFF fonts - S6954424: Support OpenType/CFF fonts in JDK 7 - S6438179: XToolkit.isTraySupported() result has nothing to do with the system tray - - S6951319: enable solaris builds using Sun Studio 12 update 1 (fixes PR398) -* NetX - - RH601281: Possible NullPointerException in splash screen code -New in release 1.9 (2010-XX-XX): +New in release 1.9 (2010-09-07): +* VisualVM support removed; now available in its own package at http://icedtea.classpath.org/hg/visualvm +* A separate build directory is now used for the OpenJDK build: openjdk.build-ecj (stage 1) and + openjdk.build (stage 2) +* The plugin and NetX classes are no longer added to rt.jar, but to plugin.jar and netx.jar respectively. * Updated to OpenJDK6 b20 with HotSpot 17. - S4360113: Evict nmethods when code cache gets full - S4670071: loadClassInternal is too restrictive. @@ -704,14 +706,408 @@ New in release 1.9 (2010-XX-XX): - S6961536: Nimbus code using @Override breaks build with source/target 1.5 - S6961870: More rebranding fixes for templates/gpl-*-header files - S6962193: Rebrand some Zero files +* Updated to OpenJDK6 b19 with HotSpot 16. + - S4670071: loadClassInternal is too restrictive. + - S4766230: Hotspot vtable inconsistencies cause core dumps. 6579515. 6582242. + - S4997835: RFE: crash dump will only be created when running w/ -XX:+ShowMessageBoxOnError + - S5057225: Remove useless I2L conversions + - S6378821: bitCount() should use POPC on SPARC processors and AMD+10h + - S6442502: assert(bits,"Use TypePtr for NULL") on linux-x86 + - S6449385: JCK test dup2_x200106m1 fails with Segmentation Fault on x86 + - S6484956: G1: improve evacuation pause efficiency + - S6484957: G1: parallel concurrent refinement + - S6484959: G1: introduce survivor spaces + - S6490395: G1: Tidy up command line flags. + - S6511613: javac unexpectedly doesn't fail in some cases if an annotation processor specified + - S6539464: Math.log() produces inconsistent results between successive runs. + - S6541756: Reduce executable C-heap + - S6543938: G1: remove the concept of popularity + - S6567360: 3/4 SIGBUS in jvmti RawMonitor magic check for unaligned bad monitor pointer + - S6589834: deoptimization problem with -XX:+DeoptimizeALot + - S6603316: Improve instrumentation for classes loaded at startup + - S6604422: G1: re-use half-promoted regions + - S6614957: HttpsURLConnection not using the set SSLSocketFactory for creating all its Sockets + - S6626217: Fixed loader constraint array handling + - S6632169: HttpClient and HttpsClient should not try to reverse lookup IP address of a proxy server + - S6633872: Policy/PolicyFile leak dynamic ProtectionDomains. + - S6634138: Source generated in last round not compiled + - S6636138: UseSuperWord enabled failure + - S6639665: ThreadGroup finalizer allows creation of false root ThreadGroups + - S6655638: dynamic languages need method handles + - S6655646: dynamic languages need dynamically linked call sites + - S6675856: Open charset tests + - S6676423: (prefs) Opensource unit/regression tests for java.util.prefs + - S6680135: A number of test/closed/java/awt/Focus/* tests should be opened + - S6684007: PrintAssembly plugin not available for linux or windows + - S6686273: Some AWT reg. tests should be moved to open repository (for CRs 6444769, 6480547, and 6560348) + - S6689653: JMapPerm fails with UseConcMarkSweepIncGC and compressed oops off + - S6690928: Use spinning in combination with yields for workstealing termination. + - S6692899: CMS: many vm.parallel_class_loading tests fail with assert "missing Printezis mark" + - S6699669: Hotspot server leaves synchronized block with monitor in bad state + - S6700789: G1: Enable use of compressed oops with G1 heaps + - S6700941: G1: allocation spec missing for some G1 classes + - S6709742: find_base_for_derived's use of Ideal NULL is unsafe causing crashes during register allocation + - S6711117: Assertion in 64bit server vm (flat != TypePtr::BOTTOM,"cannot alias-analyze an untyped ptr") + - S6718964: Swing border tests should be open source + - S6718965: Swing color chooser tests should be open source + - S6720309: G1: don't synchronously update RSet during evacuation pauses + - S6720334: G1: don't update RSets of collection set regions during an evacuation pause + - S6724345: incorrect method resolution for enum classes entered as source files + - S6728271: G1: Cleanup G1CollectedHeap::get_gc_alloc_regions() + - S6736390: File TOCTOU deserialization vulnerability + - S6737700: api/javax_swing/table/DefaultTableCellRenderer/index.html#getset:DefaultTableCellRenderer + - S6741757: minor ctw improvements + - S6745393: Inflater/Deflater clone issue + - S6759521: Move Bidi test programs from closed to open. + - S6760309: G1: update remembered sets during Full GCs + - S6761600: Use sse 4.2 in intrinsics + - S6761856: OpenJDK: vertical text metrics may be significanly different from those returned by Sun JDK + - S6763530: Cannot decode PublicKey (Proider SunPKCS11, curve prime256v1) + - S6766775: X509 certificate hostname checking is broken in JDK1.6.0_10 + - S6771432: createSocket() - smpatch fails using 1.6.0_10 because of "Unconnected sockets not implemented" + - S6772368: REGRESSION:tomcat crashed twice with JDK 7 + - S6772683: Thread.isInterrupted() fails to return true on multiprocessor PC + - S6778657: Casts in SharedRuntime::f2i, f2l, d2i and d2l rely on undefined C++ behaviour + - S6778662: fixes 64-bits libraries directory search paths on linux + - S6778669: Patch from Red Hat -- fixes compilation errors + - S6781583: Hotspot build fails on linux 64 bit platform with gcc 4.3.2 + - S6782232: assert("CreateEx must be first instruction in block" ) + - S6782260: Memory leak in CodeBuffer::create_patch_overflow + - S6783381: NUMA allocator: don't pretouch eden space with UseNUMA + - S6784930: server jvm fails with assert(!n->is_SpillCopy(),"") + - S6786346: intermittent Internal Error (src/share/vm/memory/cardTableModRefBS.cpp:226) + - S6786503: Overflow list performance can be improved + - S6786948: SA on core file fails on solaris-amd64 if vm started with -XX:+StartAttachListener + - S6787106: Hotspot 32 bit build fails on platforms having different definitions for intptr_t & int32_t + - S6787254: Work queue capacity can be increased substantially on some platforms + - S6788347: C2Compiler crash 6u7 + - S6788376: allow to ignore unrecognized VM options + - S6788527: Server vm intermittently fails with assertion "live value must not be garbage" with fastdebug bits + - S6788797: Fork HS14 to HS15 - renumber Major and build numbers of JVM + - S6790182: matcher.cpp:1375: assert(false,"bad AD file") + - S6790209: server VM fails with assert(will_link,"_new: typeflow responsibility") + - S6791132: bad control in autobox split code + - S6791168: Fix invalid code in bytecodeInterpreter that can cause gcc ICE + - S6791178: Specialize for zero as the compressed oop vm heap base + - S6791572: assert("duplicating node that's already been matched") + - S6791656: nsk defclass0 asserts handles.hpp + - S6791815: Fix for 6471657 can cause deadlock on non-Solaris platforms when initializing direct buffer support + - S6791852: assert(b->_nodes[insidx] == n,"got insidx set incorrectly") + - S6792301: StackAlignmentInBytes not honored for compiled native methods + - S6792421: assert(_bitMap->isMarked(addr+size-1),inconsistent Printezis mark) + - S6792705: Add JAR file to bootclasspath when using AggressiveOpts + - S6793825: Missing include dependancies for GCC without predefined headers + - S6793828: G1: invariant: queues are empty when activated + - S6794939: assert(_base == OopPtr,"subclass must override cast_to_ptr_type") + - S6795362: 32bit server compiler leads to wrong results on solaris-x86 + - S6795465: Crash in assembler_sparc.cpp with client compiler on solaris-sparc + - S6795913: A few remaining wrong casts need to be fixed for building hotspot successfully on Mac OS. + - S6796746: rename LoadC (char) opcode class to LoadUS (unsigned short) + - S6797305: Add LoadUB and LoadUI opcode class + - S6797754: G1: combined bugfix + - S6797870: Add -XX:+{HeapDump,PrintClassHistogram}{Before,After}FullGC + - S6798785: Crash in OopFlow::build_oop_map: incorrect comparison of 64bit pointers + - S6798898: CMS: bugs related to class unloading + - S6799141: Build with --hash-style=both so that binaries can work on SuSE 10 + - S6799452: HotSpot tests Makefile should take care of ALT_SLASH_JAVA + - S6799693: Server compiler leads to data corruption when expression throws an Exception + - S6800154: Add comments to long_by_long_mulhi() for better understandability + - S6800586: -XX:+PrintGCDateStamps is using mt-unsafe localtime function + - S6801625: CDS: HeapDump tests crash with internal error in compactingPermGenGen.cpp + - S6802413: G1: G1FixedSurvivorSpaceSize should be converted into regions in calculate_survivors_policy() + - S6802499: EA: assert(false,"unknown node on this path") + - S6803688: Integrate latest JAX-WS (2.1.6) in to JDK 6u14 + - S6804746: G1: guarantee(variance() > -1.0,"variance should be >= 0") (due to evacuation failure) + - S6805427: adlc compiler may generate incorrect machnode emission code + - S6805522: Server VM fails with assertion (block1->start() != block2->start(),"successors have unique bcis") + - S6805724: ModLNode::Ideal() generates functionally incorrect graph when divisor is any (2^k-1) constant. + - S6805748: Assertion "don't reset to 0 -- could be mistaken for never-executed" in CompilationPolicy + - S6805950: Typos in andL_rReg_imm instructions in x86_64.ad + - S6806046: Hotspot build error when compiled from Visual Studio + - S6806226: Signed integer overflow in growable array code causes JVM crash + - S6807084: AutoBox elimination is broken with compressed oops + - S6807345: Bump HS15 build number to 02 + - S6807963: need tool to make sense of LogCompilaton output + - S6808322: ParNew, CMS, G1: ParGCAllocBuffer overflow + - S6808589: Merge vm_version_x86_{32,64}.{cpp,hpp} + - S6809798: SafePointScalarObject node placed into incorrect block during GCM + - S6810474: par compact - crash in summary_phase with very full heap + - S6810653: Change String cache class used by Hotspot from String to StringValue + - S6810672: Comment typos + - S6810698: G1: two small bugs in the sparse remembered sets + - S6810845: Performance regression in mpegaudio on x64 + - S6810855: KILL vs. TEMP ordering restrictions are too strong + - S6811267: Fix for 6809798 broke linux build + - S6811384: MacroAssembler::serialize_memory may touch next page on amd64 + - S6812297: update project creation for Visual Studio 2005-2008 + - S6812428: G1: Error: assert(ret || obj_in_cs(obj),"sanity") + - S6812587: Use auxv to determine SPARC hardware features on Solaris + - S6812678: macro assembler needs delayed binding of a few constants (for 6655638) + - S6812721: Block's frequency should not be NaN + - S6812831: factor duplicated assembly code for megamorphic invokeinterface (for 6655638) + - S6812971: SA: re-attaching to process fails + - S6813212: factor duplicated assembly code for general subclass check (for 6655638) + - S6814467: G1: small fixes related to concurrent marking verboseness + - S6814552: par compact - some compilers fail to optimize bitmap code + - S6814575: Update copyright year + - S6814659: separable cleanups and subroutines for 6655638 + - S6814842: Load shortening optimizations + - S6815683: G1: SEGV during marking + - S6816154: G1: introduce flags to enable/disable RSet updating and scanning + - S6816308: Changes to allow builds with latest Windows SDK 6.1 on 64bit Windows 2003 + - S6816433: Test G1 and ParOld in JPRT + - S6816970: Bump HS15 build number to 03 + - S6817419: G1: Enable extensive verification for humongous regions + - S6818264: Heap dumper unexpectedly adds .hprof suffix + - S6818666: G1: Type lost in g1 pre-barrier + - S6819065: G1: eliminate high serial card table clearing time + - S6819077: G1: first GC thread coming late into the GC. + - S6819085: G1: use larger and/or user settable region size + - S6819098: G1: reduce RSet scanning times + - S6819213: revive sun.boot.library.path + - S6819853: VM does not detect JDK which supports parallel class loaders + - S6819891: ParNew: Fix work queue overflow code to deal correctly with +UseCompressedOops + - S6820167: GCALotAtAllSafepoints + FullGCALot(ScavengeALot) options crash JVM + - S6820321: G1: Error: guarantee(check_nums(total, n, parts), "all seq lengths should match") + - S6820510: assertion failure with unloaded class in subnode.cpp + - S6821003: Update hotspot windows os_win32 for windows 7 + - S6821507: Alignment problem in GC taskqueue + - S6821693: 64-bit TaskQueue capacity still too small + - S6821700: tune VM flags for peak performance + - S6822110: Add AddressLiteral class on SPARC + - S6822204: volatile fences should prefer lock:addl to actual mfence instructions + - S6822263: G1: JVMTI heap iteration fails + - S6822333: _call_stub_compiled_return address handling in SA is broken causing jstack to hang occasionally + - S6822370: ReentrantReadWriteLock: threads hung when there are no threads holding onto the lock (Netra x4450) + - S6822407: heapOopSize lookup is incorrect in Serviceability Agent. + - S6823354: Add intrinsics for {Integer,Long}.{numberOfLeadingZeros,numberOfTrailingZeros}() + - S6823377: Bump HS15 build number to 04 + - S6823453: DeoptimizeALot causes fastdebug server jvm to fail with assert(false,"unscheduable graph") + - S6823454: Oop-typed loadP yields invalid pointer (0x1) on SPECjbb2005 at OSRed method entry + - S6824463: deopt blob is testing wrong register on 64-bit x86 + - S6824570: ParNew: Fix memory leak introduced in 6819891 + - S6825642: nsk sajdi tests fail with NullPointerException + - S6825815: Bump HS15 build number to 05 and update copyright date of HOTSPOT_VM_COPYRIGHT + - S6826261: class file dumping from SA is broken + - S6826318: G1: remove traversal-based refinement code + - S6826736: CMS: core dump with -XX:+UseCompressedOops + - S6826960: C2 Sparc: assert(bb->_nodes(_bb_end)->is_Proj(),"skipping projections after expected call") + - S6827505: sizing logic for vtable and itable stubs needs self-check + - S6827605: new String intrinsics may prevent EA scalar replacement + - S6828024: verification of fixed interval usage is too weak + - S6828069: Change JDK_MINOR_VER to 6 for 6Update HS versions + - S6828076: Fork HS15 to HS16 - renumber Major and build numbers of JVM + - S6829013: G1: set the default value of G1VerifyConcMarkPrintRechable to false + - S6829021: tests for 6636138 use UseSuperword instead of UseSuperWord + - S6829234: Refix 6822407 and 6812971 + - S6829575: 100028: Debug information is incomplete or missing + - S6830069: UseLargePages is broken on Win64 + - S6830542: Performance: JVM_DefineClass already verified. + - S6830815: jprt.config not setting proper compiler version for use in 6u14 + - S6831225: Upgrade JPRT jobs to use newer Linux 2.6 (e.g. Fedora 9) + - S6831323: Use v8plus as minimum required hardware for current Hotspot sources + - S6831604: missing null check in guarantee + - S6832293: JIT compiler got wrong result in type checking with -server + - S6833129: specjvm98 fails with NullPointerException in the compiler with -XX:DeoptimizeALot + - S6833316: jprt.properties not setting values for 6u14 release flag + - S6833573: C2 sparc: assert(c < 64 && (c & 1) == 0,"bad double float register") + - S6833576: G1: assert illegal index, growableArray.hpp:186 + - S6833879: Assigning positive zero is ignored when old value is negative zero + - S6833951: Extra ":" Causes Testcase in CR 6589834 "Parse Exception: Invalid tag: summary:" + - S6834142: method->print_codes(): Error: ShouldNotReachHere() + - S6834177: Running jsynprog on Solaris Nevada can cause JVM crash + - S6834202: Bump the HS16 build number to 02 + - S6835796: Fedora 9 linux_i586-fastdebug-c2-runThese_Xcomp times out + - S6836054: java/util/Arrays/CopyMethods.java fails on solaris-sparc with IllegalArgumentException + - S6837011: SIGSEGV in PhaseIdealLoop in 32bit jvm + - S6837094: False positive for "meet not symmetric" failure + - S6837146: Should perform unswitch before maximally unroll in loop transformation + - S6837224: libsaproc.so on linux needs version of 6799141 + - S6837472: com/sun/jdi/MonitorFrameInfo.java fails with AggressiveOpts in 6u14 + - S6837906: compiler tests of 6636138 fail with IllegalAccessException + - S6838154: make/linux/makefiles/sa.make needs hash-style fix + - S6838819: Bump the HS16 build number to 03 + - S6838842: NUMA allocator: Segfault during startup on Linux + - S6839126: Type error found by newer windows compiler + - S6839151: Add a JPRT default test of -Xshare:dump when new hotspot is built + - S6839599: JVM crash while profiling Tomcat and Liferay + - S6840196: NUMA allocator: crash in fastdebug during startup on Linux + - S6840305: Discrepancy in system memory details (when 4G or greater) reported by JVM and Windows OS + - S6840775: Multiple JVM crashes seen with 1.6.0_10 through 1.6.0_14 + - S6841313: G1: dirty cards of survivor regions in parallel + - S6841800: Incorrect boundary values behavior for option -XX:MaxLabelRootDepth=0-6 leads to jvm crash + - S6841831: G1: assert(contains_reference(from),"We just added it!") fires + - S6842999: Update hotspot windows os_win32 for windows 2008 R2 + - S6843041: Remove duplicate README files in repositories (make/README) + - S6843292: "Expect to be beyond new region unless impacting another region" assertion too strong + - S6843580: JavaThread.getStackBase throws sun.jvm.hotspot.WrongTypeException invoked by jstack + - S6843694: G1: assert(index < _vs.committed_size(),"bad index"), g1BlockOffsetTable.inline.hpp:55 + - S6843752: missing code for an anti-dependent Phi in GCM + - S6843761: Update langtools tests to remove unncessary -source and -target options + - S6845368: large objects cause a crash or unexpected exception + - S6847305: solaris reorder mapfiles generate too many warnings + - S6848466: frame::frame_size() assertion failure with -XX:+DebugDeoptimization + - S6848641: CMSCollector::_roots_scanning_options should be initialized + - S6849122: G1: Typo introduced during implementation of the parallel refinement + - S6849574: VM crash using NonBlockingHashMap (high_scale_lib) + - S6849716: BitMap - performance regression introduced with G1 + - S6850551: Bump the HS16 build number to 04 + - S6850846: G1: extend G1 marking verification + - S6850869: G1: RSet "scrubbing" scrubs too much + - S6850957: Honor -XX:OnOutOfMemoryError when array size exceeds VM limit + - S6851282: JIT miscompilation results in null entry in array when using CompressedOops + - S6851386: assert(b->find_node(def) < j,"uses must follow definitions") + - S6851742: (EA) allocation elimination doesn't work with UseG1GC + - S6851829: solaris build fails with 5.8 compilers + - S6851908: interpreter null check profiling broken causing extra compilation invalidation + - S6852078: HSX 14/16 in jdk 5.0: api/javax_management api/org_omg jck tests crashes or make tnameserv crash + - S6854027: Precompiled headers are not being updated in Linux/GCC builds + - S6854812: 6.0_14-b08 crashes with a SIGSEGV + - S6855115: G1: Fix for 6850869 is incorrect + - S6855164: SIGSEGV during compilation of method involving loop over CharSequence. + - S6855215: Calculation error (NaN) after about 1500 calculations + - S6855236: Compiler Tree API TreePath class generates NullPointerException from Iterator + - S6855834: G1: minimize the output when -XX:+PrintHeapAtGC is set + - S6856025: assert(_base >= OopPtr && _base <= KlassPtr,"Not a Java pointer") + - S6856257: Bump the HS16 build number to 05 + - S6857159: local schedule failed with checkcast of Thread.currentThread() + - S6857194: Add hotspot perf counters to aid class loading performance measurement + - S6857661: 64-bit server VM: assert(is_Initialize(),"invalid node class") + - S6857707: Add missing test case for CR 6855164 from its bug description. + - S6858208: jvm crash when specifying TypeProfileWidth=0 on jdk 6.0 + - S6858886: G1: guarantee(_next_marked_bytes <= used(),"invariant") at heapRegion.hpp:359 + - S6859338: amd64 native unverified entry point pushes values before implicit null check + - S6859411: Bump the HS16 build number to 06 + - S6859911: G1: assert(Heap_lock->owner() = NULL, "Should be owned on this thread's behalf") + - S6860469: remix_address_expressions sets incorrect control causing crash in split_if_with_block_post + - S6860599: nodes limit could be reached during Output phase + - S6860920: serialize.cpp shouldn't use objArrayOopDesc::base_offset_in_bytes(T_BYTE) + - S6861513: correct copyright attribution in test for 6837094 and 6860469 + - S6861660: OopMapBlock count/size confusion + - S6861984: solaris version of libsaproc.so should support SA_ALTROOT directly + - S6862534: -XX:NewRatio completely ignored when combined with -XX:+UseConcMarkSweepG + - S6862576: vmIntrinsics needs cleanup in order to support JSR 292 intrinsics + - S6862661: G1: _gc_alloc_region_counts is not updated properly after 6604422 + - S6862863: C2 compiler fails in elide_copy() + - S6862919: Update copyright year + - S6862945: 4/3 conversion of jmethodID to methodOop in JVMTI is too expensive + - S6863155: Server compiler generates incorrect code (x86, long, bitshift, bitmask) + - S6863216: Clean up debugging debris inadvertently pushed with 6700789 + - S6863420: os::javaTimeNanos() go backward on Solaris x86 + - S6864003: Modify JVM_FindClassFromBootLoader to return null if class not found + - S6864886: G1: rename -XX parameters related to update buffers + - S6864901: Bump the HS16 build number to 07 + - S6864914: SPECjvm2008 produces invalid result with zero based Compressed Oops + - S6865031: Application gives bad result (throws bad exception) with compressed oops + - S6865703: G1: Parallelize hot card cache cleanup + - S6866585: debug code in ciObjectFactory too slow for large objects + - S6866591: G1: print update buffer processing stats more often + - S6867645: java -Xshare:dump failed - read only space too small + - S6868051: (SA) FreeChunk support for compressed oops is broken + - S6868269: CompileTheWorld assertion failure introduced by the reexecute bit implementation + - S6868486: timouts and outOfMemory in regression tests + - S6868487: EnableInvokeDynamic and EnableMethodHandles should not be visible flags in JDK6 or JDK7 + - S6868991: JPRT: elide GCBasher_G1 test on winx64 until 6867250 is resolved + - S6869822: assert(Universe::narrow_oop_shift() == 0,"use unscaled narrow oop") + - S6870843: G1: G1 GC memory leak + - S6871111: G1: remove the concurrent overhead tracker + - S6871765: Bump the HS16 build number to 08 + - S6872000: G1: compilation fails on linux/older gcc + - S6873059: Explicitly use -source 5 -target 5 when compiling with the boot jdk + - S6873059: Explicitly use -source 5 -target 5 when compiling with the boot jdk javac + - S6875329: fix for 6795465 broke exception handler cloning + - S6875866: Intrinsic for String.indexOf() is broken on x86 with SSE4.2 + - S6876276: assert(!is_visited,"visit only once") + - S6876584: parameters order is incorrect for enc_String_Equals() in x86_32.ad + - S6879058: Change default JPRT release target for 6Update series VMs + - S6879061: Bump the HS16 build number to 09 + - S6879572: SA fails with "RuntimeException: field "_is_marked_dependent" not found + - S6879689: Fix warning about ignored return value when compiling with -O2 + - S6880053: assert(alloc_obj->as_CheckCastPP()->type() != TypeInstPtr::NOTNULL) + - S6883468: C2 compiler enters infinite loop in PhaseIterGVN::transform + - S6886024: G1: assert(recent_avg_pause_time_ratio() < 1.00,"All GC?") + - S6886353: For DeoptimizeALot, JTreg tests should "IgnoreUnrecognizedVMOptions on a product build + - S6887571: Increase default heap config sizes + - S6887703: Unsigned applet can retrieve the dragged information before drop action occur + - S6887914: Bump the HS16 build number to 10 + - S6888149: AtomicReferenceArray causes SIGSEGV -> SEGV_MAPERR error + - S6888898: CMS: ReduceInitialCardMarks unsafe in the presence of cms precleaning + - S6889740: G1: OpenDS fails with "unhandled exception in compiled code" + - S6889757: G1: enable card mark elision for initializing writes from compiled code (ReduceInitialCardMarks) + - S6890137: G1: revamp reachable object dump + - S6890308: integrate zero assembler hotspot changes + - S6891677: java/build integrate zero assembler JDK changes + - S6892079: live value must not be garbage failure after fix for 6854812 + - S6892265: System.arraycopy unable to reference elements beyond Integer.MAX_VALUE bytes + - S6892658: C2 should optimize some stringbuilder patterns + - S6892749: assert(UseParNewGC || UseSerialGC || UseConcMarkSweepGC, "...") fails + - S6893095: G1: bulk G1 backports to hs16 + - S6893554: SPECjvm2008 mpegaudio fails with SecurityException + - S6893947: Deserialization of RMIConnectionImpl objects should enforce stricter checks [ZDI-CAN-588] + - S6893954: Subclasses of InetAddress may incorrectly interpret network addresses + - S6893995: Bump the HS16 build number to 11 + - S6893996: change default JPRT release target to be 6u18 + - S6894807: No ClassCastException for HashAttributeSet constructors if run with -Xcomp + - S6895788: G1: SATB and update buffer allocation code allocates too much space + - S6896043: first round of zero fixes + - S6896084: VM does not reserve protected page below heap for compressed oops implicit null checks + - S6896647: card marks can be deferred too long + - S6898160: Need serviceability support for new vm argument type 'uint64_t' + - S6898622: ObjectIdentifer.equals is not capable of detecting incorrectly encoded CommonName OIDs + - S6898739: TLS renegotiation issue + - S6898857: [Regression] -XX:NewRatio with -XX:+UseConcMarkSweepGC causes fatal error + - S6899653: Sun Java Runtime CMM readMabCurveData Buffer Overflow Vulnerability + - S6900341: jaxp/jaxws ant scripts using ant runtime in classpath, needs to be explicit + - S6900899: vm fails to start when -Xmx value is less than OldSize + NewSize + - S6900997: Bump the HS16 build number to 12 + - S6902299: Java JAR "unpack200" must verify input parameters + - S6903453: Zero build on ARM and IA-64 + - S6904191: OptimizeStringConcat should be product instead of experimental + - S6904691: Java Applet Trusted Methods Chaining Privilege Escalation Vulnerability + - S6904996: Bump the HS16 build number to 13 + - S6906727: UseCompressedOops: some card-marking fixes related to object arrays + - S6908208: UseCompressedOops: array_size() returns incorrect size for MAX_INT object array following 6906727 + - S6909153: Fix broken options on Zero + - S6909281: NPE is thrown when running rmid + - S6909480: Disable Escape Analysis in jdk 6u18 + - S6909597: Sun Java Runtime Environment JPEGImageReader stepX Integer Overflow Vulnerability + - S6910590: Application can modify command array, in ProcessBuilder + - S6913869: Zero assert fix + - S6914622: Print values of all flags for product VM + - S6914823: Java AWT Library Invalid Index Vulnerability + - S6914866: Sun JRE ImagingLib arbitrary code execution vulnerability + - S6914986: Make sure openjdk doc generation not turned off with JDK_UPDATE_VERSION + - S6917485: Corba doc warnings + - S6918421: 1/1 in-process JVM now ignores preset Windows unhandled exception filter + - S6920732: opensource test/java/nio/charset + - S6923976: TestProviderLeak.java is using too small of an initial heap under newer Hotspot (b79+) + - S6926703: apt tests should run with assertions enabled + - S6927797: langtools/test/tools/javac/EarlyAssert.java fails when run with assertions enabled (-ea) + - S6928623: Behaviour of VERBOSE=true on langtools build + - S6929005: Fix HS16 merge issues in OpenJDK 6 + - S6932480: Crash in CompilerThread/Parser. Unloaded array klass? + - S6933846: GCC 4.5 warning removals + - S6934327: Update linux fontconfigs for Ubuntu and Fedora. + - S6937417: javac -Xprint returns IndexOutOfBoundsException + - S6938326: Use of "ant -diagnostics" a problem with ant 1.8.0, exit code 1 now + - S6939845: zero needs fallback path in C++ interpreter for platform dependent fast bytecodes + - S6941027: Gervill update, April 2010 + - S6943053: Gervill: failures on invalid ranges and 14-bit banks * Bumped to CACAO 1.1.0 pre-release snapshot. -* VisualVM support removed; now available in its own package at http://icedtea.classpath.org/hg/visualvm * Backports: - S6961732: FontMetrics.getLeading() may be negative in freetype-based OpenJDK builds - S6967533: ExceptionInInitializerError on systems with uninitialized clock - S6795060: VM crash on Linux in ICU layout library when processing \u0DDD (Sinhalese) - S6969395: Synchronization of HttpServlet regression test with OpenJDK7 - S6510892: com/sun/net/httpserver/bugs/B6361557.java fails + - S6307603: [X11] Use RENDER extension for complex operations done in software + - S6668231: Presence of a critical subjectAltName causes JSSE's SunX509 to fail trusted checks + - S6678385: Random java.lang.StackOverflowError from various JDKs + - S6725214: D3D: forward-port the new pipeline from 6u10 + - S6755274: 6u10b33 2d tests fails on sles10x64 with jvm crash + - S6951319, PR398: enable solaris builds using Sun Studio 12 update 1 + - S6963870: NPE in CompoundBorder.getInsets() + - S6791612: OGLBat tests are failed in jdk 7 b42 * Fixes: - Provide font configuration for RHEL 6. - G266295: Provide font configuration for Gentoo. @@ -731,8 +1127,12 @@ New in release 1.9 (2010-XX-XX): - Minor fixes to JNLPRandomAccessFile - Fix browser command in BasicService.showDocument(URL) - Run programs that inherit main(String[]) in their main-class - - Run JNLP file that use spec version 1.6 -* Plugin and NetX classes have been moved from rt.jar into 2 jars, netx.jar and plugin.jar + - Run JNLP files that use spec version 1.6 + - RH601281: Possible NullPointerException in splash screen code +* Plugin + - RH560193: Fix ziperror when applet jar contained another 0-byte jar +* PulseAudio: + - PR438: PulseAudioSourceDataLine falsely returns true to isControlSupported(Gain) New in release 1.8.1 (2010-07-28): From andrew at icedtea.classpath.org Wed Sep 8 05:20:54 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 08 Sep 2010 12:20:54 +0000 Subject: /hg/release/icedtea6-1.7: 2 new changesets Message-ID: changeset 0b63ff75d44a in /hg/release/icedtea6-1.7 details: http://icedtea.classpath.org/hg/release/icedtea6-1.7?cmd=changeset;node=0b63ff75d44a author: Andrew John Hughes date: Sat Sep 04 00:21:46 2010 +0100 S6539464, RH500077: Ensure Math functions return consistent results. 2010-09-03 Andrew John Hughes * Makefile.am: Add new patch. * patches/hotspot/original/6539464-consistent-math.patch: Backport fix for S6539464 which ensures Math functions return consistent results. * NEWS: Updated. changeset 923ab4cf967c in /hg/release/icedtea6-1.7 details: http://icedtea.classpath.org/hg/release/icedtea6-1.7?cmd=changeset;node=923ab4cf967c author: Andrew John Hughes date: Wed Sep 08 13:20:47 2010 +0100 Merge diffstat: 5 files changed, 685 insertions(+), 3 deletions(-) ChangeLog | 16 Makefile.am | 6 NEWS | 5 patches/hotspot/hs16/6951319-sparc_build_fixes.patch | 582 ++++++++++++++++ patches/hotspot/original/6539464-consistent-math.patch | 79 ++ diffs (truncated from 735 to 500 lines): diff -r e508d944ca9d -r 923ab4cf967c ChangeLog --- a/ChangeLog Fri Aug 27 14:46:25 2010 -0400 +++ b/ChangeLog Wed Sep 08 13:20:47 2010 +0100 @@ -1,3 +1,19 @@ 2010-08-27 Deepak Bhole + + * Makefile.am: Add new patch. + * patches/hotspot/original/6539464-consistent-math.patch: + Backport fix for S6539464 which ensures Math functions + return consistent results. + * NEWS: Updated. + +2010-08-27 Andrew John Hughes + Matthias Klose + + PR398, S6951319: + * patches/hotspot/hs16/6951319-sparc_build_fixes.patch: + Backport of 6951319 to fix build issues on GNU/Linux+SPARC. + * NEWS: Updated. + 2010-08-27 Deepak Bhole Fixes rhbz#560193 diff -r e508d944ca9d -r 923ab4cf967c Makefile.am --- a/Makefile.am Fri Aug 27 14:46:25 2010 -0400 +++ b/Makefile.am Wed Sep 08 13:20:47 2010 +0100 @@ -396,13 +396,15 @@ if WITH_ALT_HSBUILD if WITH_ALT_HSBUILD ICEDTEA_PATCHES += patches/hotspot/$(HSBUILD)/openjdk-6886353-ignore_deoptimizealot.patch \ patches/hotspot/$(HSBUILD)/zero.patch \ - patches/hotspot/$(HSBUILD)/shark.patch + patches/hotspot/$(HSBUILD)/shark.patch \ + patches/hotspot/$(HSBUILD)/6951319-sparc_build_fixes.patch else ICEDTEA_PATCHES += patches/hotspot/original/icedtea-6778662-lib64.patch \ patches/hotspot/original/icedtea-6778657-f2i-overflow.patch \ patches/hotspot/original/icedtea-6791168.patch \ patches/hotspot/original/icedtea-6793825-includedb.patch \ - patches/openjdk/6822370-reentrantreadwritelock.patch + patches/openjdk/6822370-reentrantreadwritelock.patch \ + patches/hotspot/original/6539464-consistent-math.patch endif if HAS_PAX diff -r e508d944ca9d -r 923ab4cf967c NEWS --- a/NEWS Fri Aug 27 14:46:25 2010 -0400 +++ b/NEWS Wed Sep 08 13:20:47 2010 +0100 @@ -4,6 +4,9 @@ New in release 1.7.5 (XXXX-XX-XX): - G244901: Skip test_gamma on hardened (PaX-enabled) kernels - G266295: Provide font configuration for Gentoo. - Provide font configuration for RHEL 6. +* Backports + - S6539464, RH500077: Ensure java.lang.Math functions provide consistent results. + - S6951319: enable solaris builds using Sun Studio 12 update 1 (fixes PR398). * NetX - Fix browser command in BasicService.showDocument(URL) - Run programs that inherit main(String[]) in their main-class @@ -26,7 +29,7 @@ New in release 1.7.4 (2010-07-28): * S6963870: Eliminate NullPointerEx in swing class CompoundBorder method getBorderInsets. * S4891262: API spec, javax/accessibility: few invalid javadoc tags. * S6737212: Fixed javadoc warning messages in RowSet classes. -* S6875861: javadoc build warning on java.util.Properites from unconventional @see ordering. +* S6875861: javadoc build warning on java.util.Properties from unconventional @see ordering. * S6909563: Javadoc build warnings in rmi, security, management. * S6879689: Fix warning about ignored return value when compiling with -O2 * S6917485: Corba doc warnings. diff -r e508d944ca9d -r 923ab4cf967c patches/hotspot/hs16/6951319-sparc_build_fixes.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/hs16/6951319-sparc_build_fixes.patch Wed Sep 08 13:20:47 2010 +0100 @@ -0,0 +1,582 @@ +# HG changeset patch +# User jcoomes +# Date 1282936351 -3600 +# Node ID 379b95785a1faacbe5261b7517159718e139e57b +# Parent 13f94cc872531ff5b81d1551edf7145f73864c74 +6951319: enable solaris builds using Sun Studio 12 update 1 +Reviewed-by: kamg, ysr, dholmes, johnc + +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/amd64.make +--- openjdk.orig/hotspot/make/solaris/makefiles/amd64.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/amd64.make Fri Aug 27 20:12:31 2010 +0100 +@@ -33,14 +33,8 @@ + # + ifeq ("${Platform_compiler}", "sparcWorks") + +-# Temporary until C++ compiler is fixed +- +-# _lwp_create_interpose must have a frame +-OPT_CFLAGS/os_solaris_x86_64.o = -xO1 +- + # Temporary until SS10 C++ compiler is fixed + OPT_CFLAGS/generateOptoStub.o = -xO2 +-OPT_CFLAGS/thread.o = -xO2 + + else + +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/fastdebug.make +--- openjdk.orig/hotspot/make/solaris/makefiles/fastdebug.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/fastdebug.make Fri Aug 27 20:12:31 2010 +0100 +@@ -36,15 +36,15 @@ + ifeq ("${Platform_compiler}", "sparcWorks") + OPT_CFLAGS/SLOWER = -xO2 + +-# Problem with SS12 compiler, dtrace doesn't like the .o files (bug 6693876) + ifeq ($(COMPILER_REV_NUMERIC), 509) +- # To avoid jvm98 crash +- OPT_CFLAGS/instanceKlass.o = $(OPT_CFLAGS/SLOWER) +- # Not clear this workaround could be skipped in some cases. +- OPT_CFLAGS/vmGCOperations.o = $(OPT_CFLAGS/SLOWER) +- OPT_CFLAGS/java.o = $(OPT_CFLAGS/SLOWER) +- OPT_CFLAGS/jni.o = $(OPT_CFLAGS/SLOWER) +-endif ++# To avoid jvm98 crash ++OPT_CFLAGS/instanceKlass.o = $(OPT_CFLAGS/SLOWER) ++endif # COMPILER_NUMERIC_REV == 509 ++ ++ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1) ++# dtrace cannot handle tail call optimization (6672627, 6693876) ++OPT_CFLAGS/jni.o = $(OPT_CFLAGS/DEFAULT) $(OPT_CCFLAGS/NO_TAIL_CALL_OPT) ++endif # COMPILER_NUMERIC_REV >= 509 + + ifeq ($(COMPILER_REV_NUMERIC), 505) + # CC 5.5 has bug 4908364 with -xO4 (Fixed in 5.6) +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/i486.make +--- openjdk.orig/hotspot/make/solaris/makefiles/i486.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/i486.make Fri Aug 27 20:12:31 2010 +0100 +@@ -33,25 +33,6 @@ + # Special case flags for compilers and compiler versions on i486. + # + ifeq ("${Platform_compiler}", "sparcWorks") +- +-# _lwp_create_interpose must have a frame +-OPT_CFLAGS/os_solaris_x86.o = -xO1 +-else +- +-ifeq ("${Platform_compiler}", "gcc") +-# gcc +-# _lwp_create_interpose must have a frame +-OPT_CFLAGS/os_solaris_x86.o = -fno-omit-frame-pointer +-# +-else +-# error +-_JUNK2_ := $(shell echo >&2 \ +- "*** ERROR: this compiler is not yet supported by this code base!") +- @exit 1 +-endif +-endif +- +-ifeq ("${Platform_compiler}", "sparcWorks") + # ILD is gone as of SS11 (5.8), not supported in SS10 (5.7) + ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \< 507), 1) + # +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/optimized.make +--- openjdk.orig/hotspot/make/solaris/makefiles/optimized.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/optimized.make Fri Aug 27 20:12:31 2010 +0100 +@@ -32,13 +32,10 @@ + # (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files) + ifeq ("${Platform_compiler}", "sparcWorks") + +-# Problem with SS12 compiler, dtrace doesn't like the .o files (bug 6693876) +-ifeq ($(COMPILER_REV_NUMERIC),509) +- # Not clear this workaround could be skipped in some cases. +- OPT_CFLAGS/vmGCOperations.o = $(OPT_CFLAGS/SLOWER) -g +- OPT_CFLAGS/java.o = $(OPT_CFLAGS/SLOWER) -g +- OPT_CFLAGS/jni.o = $(OPT_CFLAGS/SLOWER) -g +-endif ++ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1) ++# dtrace cannot handle tail call optimization (6672627, 6693876) ++OPT_CFLAGS/jni.o = $(OPT_CFLAGS/DEFAULT) $(OPT_CCFLAGS/NO_TAIL_CALL_OPT) ++endif # COMPILER_NUMERIC_REV >= 509 + + # Workaround SS11 bug 6345274 (all platforms) (Fixed in SS11 patch and SS12) + ifeq ($(COMPILER_REV_NUMERIC),508) +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/product.make +--- openjdk.orig/hotspot/make/solaris/makefiles/product.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/product.make Fri Aug 27 20:12:31 2010 +0100 +@@ -40,13 +40,10 @@ + # (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files) + ifeq ("${Platform_compiler}", "sparcWorks") + +-# Problem with SS12 compiler, dtrace doesn't like the .o files (bug 6693876) +-ifeq ($(COMPILER_REV_NUMERIC),509) +- # Not clear this workaround could be skipped in some cases. +- OPT_CFLAGS/vmGCOperations.o = $(OPT_CFLAGS/SLOWER) -g +- OPT_CFLAGS/java.o = $(OPT_CFLAGS/SLOWER) -g +- OPT_CFLAGS/jni.o = $(OPT_CFLAGS/SLOWER) -g +-endif ++ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1) ++# dtrace cannot handle tail call optimization (6672627, 6693876) ++OPT_CFLAGS/jni.o = $(OPT_CFLAGS/DEFAULT) $(OPT_CCFLAGS/NO_TAIL_CALL_OPT) ++endif # COMPILER_NUMERIC_REV >= 509 + + # Workaround SS11 bug 6345274 (all platforms) (Fixed in SS11 patch and SS12) + ifeq ($(COMPILER_REV_NUMERIC),508) +diff -r 13f94cc87253 -r 379b95785a1f make/solaris/makefiles/sparcWorks.make +--- openjdk.orig/hotspot/make/solaris/makefiles/sparcWorks.make Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/make/solaris/makefiles/sparcWorks.make Fri Aug 27 20:12:31 2010 +0100 +@@ -48,27 +48,33 @@ + # Pick which compiler is validated + ifeq ($(JRE_RELEASE_VER),1.6.0) + # Validated compiler for JDK6 is SS11 (5.8) +- VALIDATED_COMPILER_REV := 5.8 +- VALIDATED_C_COMPILER_REV := 5.8 ++ VALIDATED_COMPILER_REVS := 5.8 ++ VALIDATED_C_COMPILER_REVS := 5.8 + else +- # Validated compiler for JDK7 is SS12 (5.9) +- VALIDATED_COMPILER_REV := 5.9 +- VALIDATED_C_COMPILER_REV := 5.9 ++ # Validated compilers for JDK7 are SS12 (5.9) or SS12 update 1 (5.10) ++ VALIDATED_COMPILER_REVS := 5.9 5.10 ++ VALIDATED_C_COMPILER_REVS := 5.9 5.10 + endif + +-# Warning messages about not using the above validated version +-ENFORCE_COMPILER_REV${ENFORCE_COMPILER_REV} := ${VALIDATED_COMPILER_REV} +-ifneq (${COMPILER_REV},${ENFORCE_COMPILER_REV}) +-dummy_target_to_enforce_compiler_rev:=\ +-$(shell echo >&2 WARNING: You are using CC version ${COMPILER_REV} \ +-and should be using version ${ENFORCE_COMPILER_REV}. Set ENFORCE_COMPILER_REV=${COMPILER_REV} to avoid this warning.) ++# Warning messages about not using the above validated versions ++ENFORCE_COMPILER_REV${ENFORCE_COMPILER_REV} := $(strip ${VALIDATED_COMPILER_REVS}) ++ifeq ($(filter ${ENFORCE_COMPILER_REV},${COMPILER_REV}),) ++PRINTABLE_CC_REVS := $(subst $(shell echo ' '), or ,${ENFORCE_COMPILER_REV}) ++dummy_var_to_enforce_compiler_rev := $(shell \ ++ echo >&2 WARNING: You are using CC version ${COMPILER_REV} and \ ++ should be using version ${PRINTABLE_CC_REVS}.; \ ++ echo >&2 Set ENFORCE_COMPILER_REV=${COMPILER_REV} to avoid this \ ++ warning.) + endif + +-ENFORCE_C_COMPILER_REV${ENFORCE_C_COMPILER_REV} := ${VALIDATED_C_COMPILER_REV} +-ifneq (${C_COMPILER_REV},${ENFORCE_C_COMPILER_REV}) +-dummy_target_to_enforce_c_compiler_rev:=\ +-$(shell echo >&2 WARNING: You are using cc version ${C_COMPILER_REV} \ +-and should be using version ${ENFORCE_C_COMPILER_REV}. Set ENFORCE_C_COMPILER_REV=${C_COMPILER_REV} to avoid this warning.) ++ENFORCE_C_COMPILER_REV${ENFORCE_C_COMPILER_REV} := $(strip ${VALIDATED_C_COMPILER_REVS}) ++ifeq ($(filter ${ENFORCE_C_COMPILER_REV},${C_COMPILER_REV}),) ++PRINTABLE_C_REVS := $(subst $(shell echo ' '), or ,${ENFORCE_C_COMPILER_REV}) ++dummy_var_to_enforce_c_compiler_rev := $(shell \ ++ echo >&2 WARNING: You are using cc version ${C_COMPILER_REV} and \ ++ should be using version ${PRINTABLE_C_REVS}.; \ ++ echo >&2 Set ENFORCE_C_COMPILER_REV=${C_COMPILER_REV} to avoid this \ ++ warning.) + endif + + COMPILER_REV_NUMERIC := $(shell echo $(COMPILER_REV) | awk -F. '{ print $$1 * 100 + $$2 }') +@@ -139,6 +145,13 @@ + OPT_CFLAGS/O2=-xO2 + OPT_CFLAGS/NOOPT=-xO1 + ++ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1) ++ifeq ($(Platform_arch), x86) ++OPT_CFLAGS/NO_TAIL_CALL_OPT = -Wu,-O~yz ++OPT_CCFLAGS/NO_TAIL_CALL_OPT = -Qoption ube -O~yz ++endif # Platform_arch == x86 ++endif # COMPILER_REV_NUMERIC >= 509 ++ + ################################################# + # Begin current (>=5.6) Forte compiler options # + ################################################# +@@ -181,10 +194,7 @@ + + ifeq ("${Platform_arch_model}", "x86_32") + +-OPT_CFLAGS=-xtarget=pentium $(EXTRA_OPT_CFLAGS) +- +-# UBE (CC 5.5) has bug 4923569 with -xO4 +-OPT_CFLAGS+=-xO3 ++OPT_CFLAGS=-xtarget=pentium -xO4 $(EXTRA_OPT_CFLAGS) + + endif # 32bit x86 + +@@ -461,7 +471,7 @@ + # The -g0 setting allows the C++ frontend to inline, which is a big win. + + # Special global options for SS12 +-ifeq ($(COMPILER_REV_NUMERIC),509) ++ifeq ($(shell expr $(COMPILER_REV_NUMERIC) \>= 509), 1) + # There appears to be multiple issues with the new Dwarf2 debug format, so + # we tell the compiler to use the older 'stabs' debug format all the time. + # Note that this needs to be used in optimized compiles too to be 100%. +diff -r 13f94cc87253 -r 379b95785a1f src/cpu/sparc/vm/assembler_sparc.hpp +--- openjdk.orig/hotspot/src/cpu/sparc/vm/assembler_sparc.hpp Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/src/cpu/sparc/vm/assembler_sparc.hpp Fri Aug 27 20:12:31 2010 +0100 +@@ -2239,7 +2239,7 @@ + AddressLiteral constant_oop_address(jobject obj); // find_index + inline void set_oop (jobject obj, Register d); // uses allocate_oop_address + inline void set_oop_constant (jobject obj, Register d); // uses constant_oop_address +- inline void set_oop (AddressLiteral& obj_addr, Register d); // same as load_address ++ inline void set_oop (const AddressLiteral& obj_addr, Register d); // same as load_address + + void set_narrow_oop( jobject obj, Register d ); + +diff -r 13f94cc87253 -r 379b95785a1f src/cpu/sparc/vm/assembler_sparc.inline.hpp +--- openjdk.orig/hotspot/src/cpu/sparc/vm/assembler_sparc.inline.hpp Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/src/cpu/sparc/vm/assembler_sparc.inline.hpp Fri Aug 27 20:12:31 2010 +0100 +@@ -707,7 +707,7 @@ + } + + +-inline void MacroAssembler::set_oop(AddressLiteral& obj_addr, Register d) { ++inline void MacroAssembler::set_oop(const AddressLiteral& obj_addr, Register d) { + assert(obj_addr.rspec().type() == relocInfo::oop_type, "must be an oop reloc"); + set(obj_addr, d); + } +diff -r 13f94cc87253 -r 379b95785a1f src/os_cpu/solaris_x86/vm/atomic_solaris_x86.inline.hpp +--- openjdk.orig/hotspot/src/os_cpu/solaris_x86/vm/atomic_solaris_x86.inline.hpp Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/src/os_cpu/solaris_x86/vm/atomic_solaris_x86.inline.hpp Fri Aug 27 20:12:31 2010 +0100 +@@ -47,40 +47,56 @@ + // For Sun Studio - implementation is in solaris_x86_[32/64].il. + // For gcc - implementation is just below. + +-extern "C" jint _Atomic_add(jint add_value, volatile jint* dest, int mp); +-extern "C" jint _Atomic_xchg(jint exchange_value, volatile jint* dest); +-extern "C" jint _Atomic_cmpxchg(jint exchange_value, volatile jint* dest, jint compare_value, int mp); +-extern "C" jlong _Atomic_cmpxchg_long(jlong exchange_value, volatile jlong* dest, jlong compare_value, int mp); ++// The lock prefix can be omitted for certain instructions on uniprocessors; to ++// facilitate this, os::is_MP() is passed as an additional argument. 64-bit ++// processors are assumed to be multi-threaded and/or multi-core, so the extra ++// argument is unnecessary. ++#ifndef _LP64 ++#define IS_MP_DECL() , int is_mp ++#define IS_MP_ARG() , (int) os::is_MP() ++#else ++#define IS_MP_DECL() ++#define IS_MP_ARG() ++#endif // _LP64 ++ ++extern "C" { ++ jint _Atomic_add(jint add_value, volatile jint* dest IS_MP_DECL()); ++ jint _Atomic_xchg(jint exchange_value, volatile jint* dest); ++ jint _Atomic_cmpxchg(jint exchange_value, volatile jint* dest, ++ jint compare_value IS_MP_DECL()); ++ jlong _Atomic_cmpxchg_long(jlong exchange_value, volatile jlong* dest, ++ jlong compare_value IS_MP_DECL()); ++} + + inline jint Atomic::add (jint add_value, volatile jint* dest) { +- return _Atomic_add(add_value, dest, (int) os::is_MP()); ++ return _Atomic_add(add_value, dest IS_MP_ARG()); ++} ++ ++inline jint Atomic::xchg (jint exchange_value, volatile jint* dest) { ++ return _Atomic_xchg(exchange_value, dest); + } + + inline jint Atomic::cmpxchg (jint exchange_value, volatile jint* dest, jint compare_value) { +- return _Atomic_cmpxchg(exchange_value, dest, compare_value, (int) os::is_MP()); ++ return _Atomic_cmpxchg(exchange_value, dest, compare_value IS_MP_ARG()); + } + + inline jlong Atomic::cmpxchg (jlong exchange_value, volatile jlong* dest, jlong compare_value) { +- return _Atomic_cmpxchg_long(exchange_value, dest, compare_value, (int) os::is_MP()); ++ return _Atomic_cmpxchg_long(exchange_value, dest, compare_value IS_MP_ARG()); + } + + + #ifdef AMD64 + inline void Atomic::store (jlong store_value, jlong* dest) { *dest = store_value; } + inline void Atomic::store (jlong store_value, volatile jlong* dest) { *dest = store_value; } +-extern "C" jlong _Atomic_add_long(jlong add_value, volatile jlong* dest, int mp); ++extern "C" jlong _Atomic_add_long(jlong add_value, volatile jlong* dest); + extern "C" jlong _Atomic_xchg_long(jlong exchange_value, volatile jlong* dest); + + inline intptr_t Atomic::add_ptr(intptr_t add_value, volatile intptr_t* dest) { +- return (intptr_t)_Atomic_add_long((jlong)add_value, (volatile jlong*)dest, (int) os::is_MP()); ++ return (intptr_t)_Atomic_add_long((jlong)add_value, (volatile jlong*)dest); + } + + inline void* Atomic::add_ptr(intptr_t add_value, volatile void* dest) { +- return (void*)_Atomic_add_long((jlong)add_value, (volatile jlong*)dest, (int) os::is_MP()); +-} +- +-inline jint Atomic::xchg (jint exchange_value, volatile jint* dest) { +- return _Atomic_xchg(exchange_value, dest); ++ return (void*)_Atomic_add_long((jlong)add_value, (volatile jlong*)dest); + } + + inline intptr_t Atomic::xchg_ptr(intptr_t exchange_value, volatile intptr_t* dest) { +@@ -92,11 +108,11 @@ + } + + inline intptr_t Atomic::cmpxchg_ptr(intptr_t exchange_value, volatile intptr_t* dest, intptr_t compare_value) { +- return (intptr_t)_Atomic_cmpxchg_long((jlong)exchange_value, (volatile jlong*)dest, (jlong)compare_value, (int) os::is_MP()); ++ return (intptr_t)_Atomic_cmpxchg_long((jlong)exchange_value, (volatile jlong*)dest, (jlong)compare_value); + } + + inline void* Atomic::cmpxchg_ptr(void* exchange_value, volatile void* dest, void* compare_value) { +- return (void*)_Atomic_cmpxchg_long((jlong)exchange_value, (volatile jlong*)dest, (jlong)compare_value, (int) os::is_MP()); ++ return (void*)_Atomic_cmpxchg_long((jlong)exchange_value, (volatile jlong*)dest, (jlong)compare_value); + } + + inline jlong Atomic::load(volatile jlong* src) { return *src; } +@@ -111,13 +127,6 @@ + return (void*)add((jint)add_value, (volatile jint*)dest); + } + +-inline jint Atomic::xchg (jint exchange_value, volatile jint* dest) { +- // We noticed a CC5.5 bug (4894807), so keep calling the stub just to be safe. +- // Will use the inline template version after 4894807 is fixed. +- // return _Atomic_xchg(exchange_value, dest); +- return (*os::atomic_xchg_func)(exchange_value, dest); +-} +- + inline intptr_t Atomic::xchg_ptr(intptr_t exchange_value, volatile intptr_t* dest) { + return (intptr_t)xchg((jint)exchange_value, (volatile jint*)dest); + } +@@ -179,9 +188,6 @@ + #endif // AMD64 + + inline jint _Atomic_xchg(jint exchange_value, volatile jint* dest) { +- +- // 32bit version originally did nothing!! +- + __asm__ __volatile__ ("xchgl (%2),%0" + : "=r" (exchange_value) + : "0" (exchange_value), "r" (dest) +diff -r 13f94cc87253 -r 379b95785a1f src/os_cpu/solaris_x86/vm/solaris_x86_32.il +--- openjdk.orig/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.il Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_32.il Fri Aug 27 20:12:31 2010 +0100 +@@ -50,10 +50,12 @@ + movl 4(%esp), %edx // dest + movl %eax, %ecx + cmpl $0, 8(%esp) // MP test +- je 1f +- lock +-1: xaddl %eax, (%edx) +- addl %ecx, %eax ++ jne 1f ++ xaddl %eax, (%edx) ++ jmp 2f ++1: lock ++ xaddl %eax, (%edx) ++2: addl %ecx, %eax + .end + + // Support for jint Atomic::xchg(jint exchange_value, volatile jint* dest). +@@ -72,9 +74,12 @@ + movl 0(%esp), %ecx // exchange_value + movl 4(%esp), %edx // dest + cmp $0, 12(%esp) // MP test +- je 1f +- lock +-1: cmpxchgl %ecx, (%edx) ++ jne 1f ++ cmpxchgl %ecx, (%edx) ++ jmp 2f ++1: lock ++ cmpxchgl %ecx, (%edx) ++2: + .end + + // Support for jlong Atomic::cmpxchg(jlong exchange_value, +@@ -90,10 +95,12 @@ + movl 8(%esp), %ebx // exchange_value (low) + movl 12(%esp), %ecx // exchange_high (high) + cmp $0, 28(%esp) // MP test +- je 1f +- lock +-1: cmpxchg8b (%edi) +- popl %edi ++ jne 1f ++ cmpxchg8b (%edi) ++ jmp 2f ++1: lock ++ cmpxchg8b (%edi) ++2: popl %edi + popl %ebx + .end + +diff -r 13f94cc87253 -r 379b95785a1f src/os_cpu/solaris_x86/vm/solaris_x86_64.il +--- openjdk.orig/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.il Fri Jun 18 01:17:46 2010 -0700 +--- openjdk/hotspot/src/os_cpu/solaris_x86/vm/solaris_x86_64.il Fri Aug 27 20:12:31 2010 +0100 +@@ -37,24 +37,18 @@ + .end + + // Support for jint Atomic::add(jint add_value, volatile jint* dest) +- // An additional bool (os::is_MP()) is passed as the last argument. +- .inline _Atomic_add,3 ++ .inline _Atomic_add,2 + movl %edi, %eax // save add_value for return +- testl %edx, %edx // MP test +- je 1f + lock +-1: xaddl %edi, (%rsi) ++ xaddl %edi, (%rsi) + addl %edi, %eax + .end + + // Support for jlong Atomic::add(jlong add_value, volatile jlong* dest) +- // An additional bool (os::is_MP()) is passed as the last argument. +- .inline _Atomic_add_long,3 ++ .inline _Atomic_add_long,2 + movq %rdi, %rax // save add_value for return +- testq %rdx, %rdx // MP test +- je 1f + lock +-1: xaddq %rdi, (%rsi) ++ xaddq %rdi, (%rsi) From andrew at icedtea.classpath.org Wed Sep 8 05:21:14 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 08 Sep 2010 12:21:14 +0000 Subject: /hg/release/icedtea6-1.8: S6539464, RH500077: Ensure Math functi... Message-ID: changeset 4e8e7394fd77 in /hg/release/icedtea6-1.8 details: http://icedtea.classpath.org/hg/release/icedtea6-1.8?cmd=changeset;node=4e8e7394fd77 author: Andrew John Hughes date: Mon Sep 06 14:48:38 2010 +0100 S6539464, RH500077: Ensure Math functions return consistent results. 2010-09-03 Andrew John Hughes * Makefile.am: Add new patch. * patches/hotspot/original/6539464-consistent-math.patch: Backport fix for S6539464 which ensures Math functions return consistent results. * NEWS: Updated. diffstat: 4 files changed, 90 insertions(+), 1 deletion(-) ChangeLog | 8 + Makefile.am | 3 NEWS | 1 patches/hotspot/original/6539464-consistent-math.patch | 79 ++++++++++++++++ diffs (122 lines): diff -r 59c86078a676 -r 4e8e7394fd77 ChangeLog --- a/ChangeLog Sun Aug 29 12:54:00 2010 +0200 +++ b/ChangeLog Mon Sep 06 14:48:38 2010 +0100 @@ -1,3 +1,11 @@ 2010-08-27 Andrew John Hughes + + * Makefile.am: Add new patch. + * patches/hotspot/original/6539464-consistent-math.patch: + Backport fix for S6539464 which ensures Math functions + return consistent results. + * NEWS: Updated. + 2010-08-27 Andrew John Hughes Matthias Klose diff -r 59c86078a676 -r 4e8e7394fd77 Makefile.am --- a/Makefile.am Sun Aug 29 12:54:00 2010 +0200 +++ b/Makefile.am Mon Sep 06 14:48:38 2010 +0100 @@ -400,7 +400,8 @@ ICEDTEA_PATCHES += patches/hotspot/origi patches/hotspot/original/icedtea-6778657-f2i-overflow.patch \ patches/hotspot/original/icedtea-6791168.patch \ patches/hotspot/original/icedtea-6793825-includedb.patch \ - patches/openjdk/6822370-reentrantreadwritelock.patch + patches/openjdk/6822370-reentrantreadwritelock.patch \ + patches/hotspot/original/6539464-consistent-math.patch endif if HAS_PAX diff -r 59c86078a676 -r 4e8e7394fd77 NEWS --- a/NEWS Sun Aug 29 12:54:00 2010 +0200 +++ b/NEWS Mon Sep 06 14:48:38 2010 +0100 @@ -5,6 +5,7 @@ New in release 1.8.2 (XXXX-XX-XX): - G266295: Provide font configuration for Gentoo. - Provide font configuration for RHEL 6. - S6951319: enable solaris builds using Sun Studio 12 update 1 (fixes PR398) + - S6539464, RH500077: Ensure java.lang.Math functions provide consistent results. - NetX: - Fix browser command in BasicService.showDocument(URL) - Run programs that inherit main(String[]) in their main-class diff -r 59c86078a676 -r 4e8e7394fd77 patches/hotspot/original/6539464-consistent-math.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/original/6539464-consistent-math.patch Mon Sep 06 14:48:38 2010 +0100 @@ -0,0 +1,79 @@ +# HG changeset patch +# User never +# Date 1239043997 25200 +# Node ID 819880572f0972750d759c1fa6f8705c33b42172 +# Parent 1f2abec697143b7575318be7db855e5e9f893e69 +6539464: Math.log() produces inconsistent results between successive runs. +Reviewed-by: kvn + +diff -r 1f2abec69714 -r 819880572f09 src/cpu/x86/vm/templateInterpreter_x86_64.cpp +--- openjdk.orig/hotspot/src/cpu/x86/vm/templateInterpreter_x86_64.cpp Fri Apr 03 18:51:31 2009 -0700 ++++ openjdk/hotspot/src/cpu/x86/vm/templateInterpreter_x86_64.cpp Mon Apr 06 11:53:17 2009 -0700 +@@ -1393,12 +1393,13 @@ + case Interpreter::empty : entry_point = ((InterpreterGenerator*) this)->generate_empty_entry(); break; + case Interpreter::accessor : entry_point = ((InterpreterGenerator*) this)->generate_accessor_entry(); break; + case Interpreter::abstract : entry_point = ((InterpreterGenerator*) this)->generate_abstract_entry(); break; +- case Interpreter::java_lang_math_sin : break; +- case Interpreter::java_lang_math_cos : break; +- case Interpreter::java_lang_math_tan : break; +- case Interpreter::java_lang_math_abs : break; +- case Interpreter::java_lang_math_log : break; +- case Interpreter::java_lang_math_log10 : break; ++ ++ case Interpreter::java_lang_math_sin : // fall thru ++ case Interpreter::java_lang_math_cos : // fall thru ++ case Interpreter::java_lang_math_tan : // fall thru ++ case Interpreter::java_lang_math_abs : // fall thru ++ case Interpreter::java_lang_math_log : // fall thru ++ case Interpreter::java_lang_math_log10 : // fall thru + case Interpreter::java_lang_math_sqrt : entry_point = ((InterpreterGenerator*) this)->generate_math_entry(kind); break; + default : ShouldNotReachHere(); break; + } +diff -r 1f2abec69714 -r 819880572f09 test/compiler/6539464/Test.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/hotspot/test/compiler/6539464/Test.java Mon Apr 06 11:53:17 2009 -0700 +@@ -0,0 +1,44 @@ ++/* ++ * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/** ++ * @test ++ * @bug 6539464 ++ * @summary Math.log() produces inconsistent results between successive runs. ++ * ++ * @run main/othervm -Xcomp -XX:CompileOnly=Test.main Test ++ */ ++ ++public class Test { ++ static double log_value = 17197; ++ static double log_result = Math.log(log_value); ++ ++ public static void main(String[] args) throws Exception { ++ for (int i = 0; i < 1000000; i++) { ++ double log_result2 = Math.log(log_value); ++ if (log_result2 != log_result) { ++ throw new InternalError("Math.log produces inconsistent results: " + log_result2 + " != " + log_result); ++ } ++ } ++ } ++} From ahughes at redhat.com Wed Sep 8 05:21:23 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Wed, 8 Sep 2010 13:21:23 +0100 Subject: [1.7 & 1.8 BRANCH APPROVAL]: Backport 6539464: Math functions produce inconsistent results In-Reply-To: <4C8738F6.3060809@redhat.com> References: <20100903232535.GD11124@rivendell.middle-earth.co.uk> <4C8738F6.3060809@redhat.com> Message-ID: <20100908122123.GA27470@bree.middle-earth.co.uk> On 09:19 Wed 08 Sep , Pavel Tisnovsky wrote: > Dr Andrew John Hughes wrote: > > Applies to hs14 only. hs16 (1.7 & 1.8 --with-hotspot-build=hs16) and hs17 (1.9, HEAD) have this fix. > > > > changeset: 1981:0b63ff75d44a > > tag: tip > > user: Andrew John Hughes > > date: Sat Sep 04 00:21:46 2010 +0100 > > files: ChangeLog Makefile.am NEWS patches/hotspot/original/6539464-consistent-math.patch > > description: > > S6539464, RH500077: Ensure Math functions return consistent results. > > > > 2010-09-03 Andrew John Hughes > > > > * Makefile.am: Add new patch. > > * patches/hotspot/original/6539464-consistent-math.patch: > > Backport fix for S6539464 which ensures Math functions > > return consistent results. > > * NEWS: Updated. > > > > Ok for 1.7 & 1.8? > > > Hi Andrew, > > this patch seems ok for me, I've done our usual tests and there are not > any regression. > Thanks. Pushed. > Cheers > Pavel -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Wed Sep 8 05:30:03 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Sep 2010 12:30:03 +0000 Subject: [Bug 545] eclipse 3.5 - 4.0 crash on startup when using icedtea with cacao Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=545 ------- Comment #1 from gnu_andrew at member.fsf.org 2010-09-08 12:30 ------- 1.9 went into java-overlay yesterday afternoon (+0100 UTC). Along with many OpenJDK fixes, it also has a new version of CACAO: $ java -version java version "1.6.0_20" IcedTea Runtime Environment (1.9) (Gentoo build 1.6.0_20-b20) CACAO (build 1.1.0pre1, compiled mode) Can you try with this and see if the problem persists? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From andrew at icedtea.classpath.org Wed Sep 8 05:36:06 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 08 Sep 2010 12:36:06 +0000 Subject: /hg/release/icedtea6-1.9: Bump to 1.9.1pre, post-release. Message-ID: changeset 358b64f8f0bf in /hg/release/icedtea6-1.9 details: http://icedtea.classpath.org/hg/release/icedtea6-1.9?cmd=changeset;node=358b64f8f0bf author: Andrew John Hughes date: Wed Sep 08 13:35:51 2010 +0100 Bump to 1.9.1pre, post-release. 2010-09-08 Andrew John Hughes * configure.ac: Bump to 1.9.1pre. diffstat: 2 files changed, 5 insertions(+), 1 deletion(-) ChangeLog | 4 ++++ configure.ac | 2 +- diffs (20 lines): diff -r e24fa15b2826 -r 358b64f8f0bf ChangeLog --- a/ChangeLog Tue Sep 07 15:20:49 2010 +0100 +++ b/ChangeLog Wed Sep 08 13:35:51 2010 +0100 @@ -1,3 +1,7 @@ 2010-09-07 Andrew John Hughes + + * configure.ac: Bump to 1.9.1pre. + 2010-09-07 Andrew John Hughes * NEWS: Yet more updates. diff -r e24fa15b2826 -r 358b64f8f0bf configure.ac --- a/configure.ac Tue Sep 07 15:20:49 2010 +0100 +++ b/configure.ac Wed Sep 08 13:35:51 2010 +0100 @@ -1,4 +1,4 @@ AC_INIT([icedtea6],[1.9],[distro-pkg-dev -AC_INIT([icedtea6],[1.9],[distro-pkg-dev at openjdk.java.net]) +AC_INIT([icedtea6],[1.9.1pre],[distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile]) From ahughes at redhat.com Wed Sep 8 05:52:47 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Wed, 8 Sep 2010 13:52:47 +0100 Subject: 1.9 BRANCH FROZEN FOR 1.9.0 RELEASE In-Reply-To: <20100907120904.GA12529@bree.middle-earth.co.uk> References: <20100907120904.GA12529@bree.middle-earth.co.uk> Message-ID: <20100908125247.GB27470@bree.middle-earth.co.uk> On 13:09 Tue 07 Sep , Dr Andrew John Hughes wrote: > As subject. > > Please do NOT commit to the 1.9 branch until the release later today. > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > Support Free Java! > Contribute to GNU Classpath and the OpenJDK > http://www.gnu.org/software/classpath > http://openjdk.java.net > PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 The branch is now open for approved fixes for 1.9.1. Same approval policy applies as before. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ahughes at redhat.com Wed Sep 8 07:12:02 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Wed, 8 Sep 2010 15:12:02 +0100 Subject: VisualVM 1.3 patch In-Reply-To: <5EA84020-F426-46B0-9B83-F1889553057F@googlemail.com> References: <5EA84020-F426-46B0-9B83-F1889553057F@googlemail.com> Message-ID: <20100908141202.GC27470@bree.middle-earth.co.uk> On 15:40 Fri 06 Aug , Tomas Hurka wrote: > Hi Andrew, > attached is a patch to update VisualVM to the latest (1.3). The patch is done against new VisualVM mercurial repository (http://icedtea.classpath.org/hg/visualvm). Can somebody commit these changes for me? > > Note that VisualVM 1.3 requires NetBeans Platform 6.9, which is currently available only in rawhide repo. > > Bye, > -- > Tomas Hurka > NetBeans Profiler http://profiler.netbeans.org > VisualVM http://visualvm.dev.java.net > Software Engineer, Developer Platforms Group > Sun Microsystems, Praha Czech Republic > > > > This has now been added; use --with-visualvm-version=1.3 to build 1.3, or just ./configure to build 1.2.2 as before. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From andrew at icedtea.classpath.org Wed Sep 8 07:12:17 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 08 Sep 2010 14:12:17 +0000 Subject: /hg/visualvm: Support both VisualVM 1.2.2 and 1.3. Message-ID: changeset eb52a28e265d in /hg/visualvm details: http://icedtea.classpath.org/hg/visualvm?cmd=changeset;node=eb52a28e265d author: Andrew John Hughes date: Wed Sep 08 15:09:55 2010 +0100 Support both VisualVM 1.2.2 and 1.3. 2010-09-08 Andrew John Hughes Support both 1.2.2 and 1.3. * Makefile.am: Set URL, source zip and checksum based on VisualVM version. (nbplatform): Handle differences between 1.2.2 and 1.3 through conditional definition. (visualvm): Likewise. Fix broken reference to srcdir rather than builddir. * acinclude.m4: (VV_CHECK_WITH_VISUALVM_VERSION): Provide --with-visualvm-version option to allow selection of 1.2.2 (default) or 1.3. * configure.ac: Enable above macro. 2010-08-06 Tomas Hurka * Makefile.am: Upgrade to VisualVM 1.3 and NetBeans platform 6.9. diffstat: 4 files changed, 89 insertions(+), 14 deletions(-) ChangeLog | 21 ++++++++++++++++++++ Makefile.am | 60 ++++++++++++++++++++++++++++++++++++++++++++-------------- acinclude.m4 | 21 ++++++++++++++++++++ configure.ac | 1 diffs (165 lines): diff -r b1df771a3be3 -r eb52a28e265d ChangeLog --- a/ChangeLog Thu Aug 26 18:50:04 2010 +0200 +++ b/ChangeLog Wed Sep 08 15:09:55 2010 +0100 @@ -1,3 +1,24 @@ 2010-08-26 Matthias Klose + + Support both 1.2.2 and 1.3. + * Makefile.am: + Set URL, source zip and checksum based on + VisualVM version. + (nbplatform): Handle differences between + 1.2.2 and 1.3 through conditional definition. + (visualvm): Likewise. Fix broken reference to + srcdir rather than builddir. + * acinclude.m4: + (VV_CHECK_WITH_VISUALVM_VERSION): Provide + --with-visualvm-version option to allow selection + of 1.2.2 (default) or 1.3. + * configure.ac: Enable above macro. + +2010-08-06 Tomas Hurka + + * Makefile.am: Upgrade to VisualVM 1.3 and + NetBeans platform 6.9. + 2010-08-26 Matthias Klose * Makefile.am (install-exec-local): Honor DESTDIR. diff -r b1df771a3be3 -r eb52a28e265d Makefile.am --- a/Makefile.am Thu Aug 26 18:50:04 2010 +0200 +++ b/Makefile.am Wed Sep 08 15:09:55 2010 +0100 @@ -1,12 +1,44 @@ NETBEANS_PROFILER_URL = https://visualvm -NETBEANS_PROFILER_URL = https://visualvm.dev.java.net/files/documents/7163/149581/ -NETBEANS_PROFILER_SRC_ZIP = netbeans-profiler-visualvm_release68.tar.gz -NETBEANS_PROFILER_SHA256SUM = d0a52d023973a8987b48b39488ff4c9374dec96536823226abd7abfdabfc136b +NETBEANS_68_PROFILER_URL = https://visualvm.dev.java.net/files/documents/7163/149581/ +NETBEANS_68_PROFILER_SRC_ZIP = netbeans-profiler-visualvm_release68.tar.gz +NETBEANS_68_PROFILER_SHA256SUM = d0a52d023973a8987b48b39488ff4c9374dec96536823226abd7abfdabfc136b -VISUALVM_URL = https://visualvm.dev.java.net/files/documents/7163/146746/ -VISUALVM_SRC_ZIP = visualvm_122-src.tar.gz -VISUALVM_SHA256SUM = 1b1cd77354757d64ca902722bb9481e1292a88c4884ffea8af7bb47f8ae24af5 +NETBEANS_69_PROFILER_URL = https://visualvm.dev.java.net/files/documents/7163/152022/ +NETBEANS_69_PROFILER_SRC_ZIP = netbeans-profiler-visualvm_release69.tar.gz +NETBEANS_69_PROFILER_SHA256SUM = 201060e9ccb4243f7ff1bb490e66a23f3fb16d450892e15f9adbd0728ec0ec83 + +VISUALVM_122_URL = https://visualvm.dev.java.net/files/documents/7163/146746/ +VISUALVM_122_SRC_ZIP = visualvm_122-src.tar.gz +VISUALVM_122_SHA256SUM = 1b1cd77354757d64ca902722bb9481e1292a88c4884ffea8af7bb47f8ae24af5 + +VISUALVM_13_URL = https://visualvm.dev.java.net/files/documents/7163/151835/ +VISUALVM_13_SRC_ZIP = visualvm_13-src.tar.gz +VISUALVM_13_SHA256SUM = 18105c1e05347caac04830a8ee940219c573a5447d3cd9b084d6883c9ff07353 NB_PLATFORM = $(shell ls $(SYSTEM_NETBEANS_DIR) | grep platform | tail -n1) + +if VVVERSION_13 + NETBEANS_PROFILER_URL=$(NETBEANS_69_PROFILER_URL) + NETBEANS_PROFILER_SRC_ZIP=$(NETBEANS_69_PROFILER_SRC_ZIP) + NETBEANS_PROFILER_SHA256SUM=$(NETBEANS_69_PROFILER_SHA256SUM) + VISUALVM_URL=$(VISUALVM_13_URL) + VISUALVM_SRC_ZIP=$(VISUALVM_13_SRC_ZIP) + VISUALVM_SHA256SUM=$(VISUALVM_13_SHA256SUM) + NBPLATFORM_DIR=netbeans/nbbuild/netbeans_visualvm/platform + NBPLATFORM_DIR_COPY=$(NBPLATFORM_DIR) + ADDITIONAL_DIRS=profiler.oql + PROFILER=profiler +else + NETBEANS_PROFILER_URL=$(NETBEANS_68_PROFILER_URL) + NETBEANS_PROFILER_SRC_ZIP=$(NETBEANS_68_PROFILER_SRC_ZIP) + NETBEANS_PROFILER_SHA256SUM=$(NETBEANS_68_PROFILER_SHA256SUM) + VISUALVM_URL=$(VISUALVM_122_URL) + VISUALVM_SRC_ZIP=$(VISUALVM_122_SRC_ZIP) + VISUALVM_SHA256SUM=$(VISUALVM_122_SHA256SUM) + NBPLATFORM_DIR=netbeans/nbbuild/netbeans_visualvm + NBPLATFORM_DIR_COPY=$(NBPLATFORM_DIR)/$(NB_PLATFORM) + NBBUILD_PROPERTIES=-Dpermit.jdk6.builds=true -Dbuildnumber=091221-4fc006d17cb1 + PROFILER=profiler3 +endif all: visualvm @@ -110,7 +142,7 @@ stamps/nbplatform.stamp: stamps/extract- stamps/nbplatform.stamp: stamps/extract-netbeans-profiler.stamp rm -f netbeans/nbbuild/external/binaries-list mkdir -p netbeans/nbbuild/netbeans_visualvm/ - ln -s $(SYSTEM_NETBEANS_DIR)/$(NB_PLATFORM)/ netbeans/nbbuild/netbeans_visualvm + ln -s $(SYSTEM_NETBEANS_DIR)/$(NB_PLATFORM)/ $(NBPLATFORM_DIR) ln -s $(SYSTEM_NETBEANS_DIR)/harness/ netbeans/nbbuild/netbeans_visualvm mkdir -p netbeans/lib.profiler/release/lib/deployed/jdk15/linux-amd64 mkdir -p netbeans/lib.profiler/release/lib/deployed/jdk16/linux-amd64 @@ -119,9 +151,9 @@ stamps/nbplatform.stamp: stamps/extract- cd netbeans/lib.profiler/native/build && \ sed -i -e 's#gcc32#$(CC)#' -e 's#-m64#$(ARCHFLAG)#' buildnative-linux64.sh && \ JAVA_HOME_15=$(SYSTEM_JDK_DIR) JAVA_HOME_16=$(SYSTEM_JDK_DIR) ./buildnative-linux64.sh - JAVA_HOME=$(SYSTEM_JDK_DIR) $(ANT) -Dpermit.jdk6.builds=true -f netbeans/nbbuild/build.xml bootstrap - for dir in lib.profiler lib.profiler.charts lib.profiler.ui lib.profiler.common profiler ; do \ - JAVA_HOME=$(SYSTEM_JDK_DIR) $(ANT) -Dpermit.jdk6.builds=true -Dbuildnumber=091221-4fc006d17cb1 \ + JAVA_HOME=$(SYSTEM_JDK_DIR) $(ANT) $(NBBUILD_PROPERTIES) -f netbeans/nbbuild/build.xml bootstrap + for dir in lib.profiler lib.profiler.charts lib.profiler.ui lib.profiler.common profiler $(ADDITIONAL_DIRS); do \ + JAVA_HOME=$(SYSTEM_JDK_DIR) $(ANT) $(NBBUILD_PROPERTIES) \ -Dnetbeans.dest.dir=$(abs_top_builddir)/netbeans/nbbuild/netbeans_visualvm \ -f netbeans/$$dir/build.xml ; \ done @@ -133,7 +165,7 @@ clean-nbplatform: rm -f stamps/nbplatform.stamp stamps/visualvm.stamp: stamps/extract-visualvm.stamp stamps/nbplatform.stamp - ln -s $(abs_top_srcdir)/netbeans/nbbuild/netbeans_visualvm visualvm/netbeans ; + ln -s $(abs_top_builddir)/netbeans/nbbuild/netbeans_visualvm visualvm/netbeans ; cd visualvm && JAVA_HOME=$(SYSTEM_JDK_DIR) $(ANT) build mkdir -p stamps touch $@ @@ -153,10 +185,10 @@ install-exec-local: chmod a+x $(DESTDIR)$(bindir)/jvisualvm cp visualvm/launcher/visualvm.conf $(DESTDIR)$(libdir)/visualvm/etc echo visualvm >> $(DESTDIR)$(libdir)/visualvm/etc/visualvm.clusters - echo profiler3 >> $(DESTDIR)$(libdir)/visualvm/etc/visualvm.clusters + echo $(PROFILER) >> $(DESTDIR)$(libdir)/visualvm/etc/visualvm.clusters cp -r visualvm/build/cluster/* $(DESTDIR)$(libdir)/visualvm/visualvm - cp -r netbeans/nbbuild/netbeans_visualvm/$(NB_PLATFORM) $(DESTDIR)$(libdir)/visualvm - cp -r netbeans/nbbuild/netbeans_visualvm/profiler3 $(DESTDIR)$(libdir)/visualvm + cp -r $(NBPLATFORM_DIR_COPY) $(DESTDIR)$(libdir)/visualvm + cp -r netbeans/nbbuild/netbeans_visualvm/$(PROFILER) $(DESTDIR)$(libdir)/visualvm cp visualvm.desktop $(DESTDIR)$(datadir) download-netbeans-profiler: stamps/download-netbeans-profiler.stamp diff -r b1df771a3be3 -r eb52a28e265d acinclude.m4 --- a/acinclude.m4 Thu Aug 26 18:50:04 2010 +0200 +++ b/acinclude.m4 Wed Sep 08 15:09:55 2010 +0100 @@ -107,3 +107,24 @@ AC_DEFUN([VV_SET_ARCH_SETTINGS], esac AC_SUBST(ARCHFLAG) ]) + +AC_DEFUN([VV_CHECK_WITH_VISUALVM_VERSION], +[ + DEFAULT_VERSION="1.2.2" + AC_MSG_CHECKING([which VisualVM version to build]) + AC_ARG_WITH([visualvm-version], + [AS_HELP_STRING(--with-visualvm-version,the VisualVM version to build (see Makefile.am))], + [ + VVVERSION="${withval}" + ], + [ + VVVERSION="${DEFAULT_VERSION}" + ]) + if test "x${VVVERSION}" = xyes; then + VVVERSION="${DEFAULT_VERSION}" + elif test "x${VVVERSION}" = xno; then + VVVERSION="${DEFAULT_VERSION}" + fi + AC_MSG_RESULT([${VVVERSION}]) + AM_CONDITIONAL([VVVERSION_13], [test "$VVVERSION" = "1.3"]) +]) diff -r b1df771a3be3 -r eb52a28e265d configure.ac --- a/configure.ac Thu Aug 26 18:50:04 2010 +0200 +++ b/configure.ac Wed Sep 08 15:09:55 2010 +0100 @@ -40,5 +40,6 @@ VV_SET_ARCH_SETTINGS VV_SET_ARCH_SETTINGS VV_WITH_NETBEANS_PROFILER_ZIP VV_WITH_VISUALVM_ZIP +VV_CHECK_WITH_VISUALVM_VERSION AC_OUTPUT From bugzilla-daemon at icedtea.classpath.org Wed Sep 8 09:18:29 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Sep 2010 16:18:29 +0000 Subject: [Bug 543] zero fails to build on icedtea7 trunk 20100907 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=543 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|gnu_andrew at member.fsf.org |.org | ------- Comment #4 from gnu_andrew at member.fsf.org 2010-09-08 16:18 ------- 6977640 now in the IcedTea forest and used by IcedTea7. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From ahughes at redhat.com Wed Sep 8 10:11:59 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Wed, 8 Sep 2010 18:11:59 +0100 Subject: Fwd: Re-thinking JDK 7 In-Reply-To: <20100908162102.16AC6547@eggemoggin.niobe.net> References: <20100908162102.16AC6547@eggemoggin.niobe.net> Message-ID: For anyone who may have missed this on the jdk7 list... ---------- Forwarded message ---------- From: Date: 8 September 2010 17:21 Subject: Re-thinking JDK 7 To: jdk7-dev at openjdk.java.net It's been clear for some time that the most recent JDK 7 development schedule [1] is, to put it mildly, unrealistic. We created that schedule over nine months ago, prior to the acquisition of Sun by Oracle. ?The post-acquisition integration process took longer than any of us anticipated, unfortunately, but we're now ready and able to focus on this release with a larger (and still growing) staff which will continue to work in the open alongside other contributors. So, whither JDK 7? Our present best estimate is that we could complete, test, and stabilize the planned work in time for a release around the middle of 2012. Looking at what's in the forest today, however, much of that work is in fact already done, or very nearly so. ?The main outstanding items are the Lambda and Jigsaw Projects, along with a few of the Coin proposals. We've made a lot of progress on these features, and they now have more Oracle engineers working on them than before, but significant work remains to be done. Another possibility, therefore, is to take everything we have now, test and stabilize it, and ship that as JDK 7. ?We could then finish Lambda, Jigsaw, the rest of Coin, and maybe a few additional key features in a JDK 8 release which would ship fairly soon thereafter. This approach would give developers production-quality access to the nearly-finished features sooner rather than later, and with much less risk. ?It would also allow more time to really shake out Lambda and Jigsaw, which is critical given that these higher-risk efforts are making deep changes to the very foundations of the platform. Our current estimate for this "Plan B" is that we could ship a reduced JDK 7 in mid-2011 and JDK 8 in the second half of 2012. To summarize: ?Plan A: ?JDK 7 (as currently defined) ? ? ? ? ? ? ? ? ? ? ?Mid 2012 ?Plan B: ?JDK 7 (minus Lambda, Jigsaw, and part of Coin) ? ?Mid 2011 ? ? ? ? ? JDK 8 (Lambda, Jigsaw, the rest of Coin, ++) ? ? Late 2012 (As always, our intent is that JDK 7 will ship concurrently with a Java ?SE 7 JSR, and likewise for JDK 8 and Java SE 8, and also that there ?will be JSRs for Lambda and Coin.) Here at Oracle we're leaning heavily toward the lower-risk Plan B. ?The platform has been idle for (more than!) long enough -- it's time to get Java moving again. ?If there are good reasons to prefer Plan A, however, then I'd like to hear them. - Mark [1] http://openjdk.java.net/projects/jdk7/milestones/ -- Andrew :-) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint: F8EF F1EA 401E 2E60 15FA? 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Wed Sep 8 11:23:12 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Sep 2010 18:23:12 +0000 Subject: [Bug 546] New: VisualVM doesn't fail during configure if NetBeans is absent Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=546 Summary: VisualVM doesn't fail during configure if NetBeans is absent Product: VisualVM Harness Version: 1.0 Platform: all OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: VisualVM AssignedTo: unassigned at icedtea.classpath.org ReportedBy: gnu_andrew at member.fsf.org It fails eventually: build-init: Scanning for modules in /mnt/builder/visualvm/netbeans/nbbuild/netbeans_visualvm/harness Scanning for modules in /mnt/builder/visualvm/netbeans/nbbuild/netbeans_visualvm/moduleCluster.properties Scanning for modules in /mnt/builder/visualvm/netbeans/nbbuild/netbeans_visualvm/netbeans Scanning for modules in /mnt/builder/visualvm/netbeans/nbbuild/netbeans_visualvm/profiler3 Loading module list from /mnt/builder/visualvm/netbeans/nbbuild/nbproject/private/scan-cache-standard.ser BUILD FAILED /mnt/builder/visualvm/netbeans/nbbuild/templates/projectized.xml:103: No dependent module org.jdesktop.layout but should detect an appropriate NetBeans version during configure. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From andrew at icedtea.classpath.org Wed Sep 8 12:32:31 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 08 Sep 2010 19:32:31 +0000 Subject: /hg/visualvm: 5 new changesets Message-ID: changeset 69b02bea9cf4 in /hg/visualvm details: http://icedtea.classpath.org/hg/visualvm?cmd=changeset;node=69b02bea9cf4 author: Andrew John Hughes date: Wed Sep 08 17:11:14 2010 +0100 Ignore remaining autoconf files and clean empty stamps directory post-build. 2010-09-08 Andrew John Hughes * .hgignore: Add config.guess and config.sub. * Makefile.am: (clean-local): Remove empty stamps directory. changeset 11eff73a8d6d in /hg/visualvm details: http://icedtea.classpath.org/hg/visualvm?cmd=changeset;node=11eff73a8d6d author: Andrew John Hughes date: Wed Sep 08 19:55:06 2010 +0100 Add README and INSTALL files and set version ready for release. 2010-09-08 Andrew John Hughes * INSTALL: Added. * Makefile.am: (clean-local): Move stamps removal... (distclean-local): ... to here. * README: Added. * configure.ac: Fix version to visualvm_harness 1.0 ready for release. changeset 37857184a6d9 in /hg/visualvm details: http://icedtea.classpath.org/hg/visualvm?cmd=changeset;node=37857184a6d9 author: Andrew John Hughes date: Wed Sep 08 20:08:55 2010 +0100 PR546: Check for the NetBeans platform directory appropriate to the version being built. 2010-09-08 Andrew John Hughes PR546: * Makefile.am: (NB_PLATFORM): Removed; defined by configure. * acinclude.m4: (VV_WITH_NETBEANS_PROFILER_ZIP): Define once only. (VV_WITH_VISUALVM_ZIP): Likewise. (IT_CHECK_FOR_JDK): Likewise. (VV_SET_ARCH_SETTINGS): Likewise. (VV_CHECK_WITH_VISUALVM_VERSION): Likewise. (VV_CHECK_FOR_NETBEANS): Check that NetBeans home exists and contains the appropriate platform for the version being built. * configure.ac: Call VV_CHECK_FOR_NETBEANS rather than doing it inline. changeset 8b1172973c70 in /hg/visualvm details: http://icedtea.classpath.org/hg/visualvm?cmd=changeset;node=8b1172973c70 author: Andrew John Hughes date: Wed Sep 08 20:22:32 2010 +0100 Set NB_PLATFORM to a relative path as before. 2010-09-08 Andrew John Hughes * Makefile.am: (nbplatform): Remove trailing slash. * acinclude.m4: (VV_CHECK_FOR_NETBEANS): Set NB_PLATFORM to a relative path. changeset 3538695338d9 in /hg/visualvm details: http://icedtea.classpath.org/hg/visualvm?cmd=changeset;node=3538695338d9 author: Andrew John Hughes date: Wed Sep 08 20:31:33 2010 +0100 Added tag 1.0 for changeset 8b1172973c70 diffstat: 8 files changed, 166 insertions(+), 28 deletions(-) .hgignore | 2 ++ .hgtags | 1 + ChangeLog | 41 +++++++++++++++++++++++++++++++++++++++++ INSTALL | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ Makefile.am | 7 ++++--- README | 25 +++++++++++++++++++++++++ acinclude.m4 | 42 +++++++++++++++++++++++++++++++++++++----- configure.ac | 22 ++-------------------- diffs (303 lines): diff -r eb52a28e265d -r 3538695338d9 .hgignore --- a/.hgignore Wed Sep 08 15:09:55 2010 +0100 +++ b/.hgignore Wed Sep 08 20:31:33 2010 +0100 @@ -4,3 +4,5 @@ configure configure install-sh missing +config.guess +config.sub diff -r eb52a28e265d -r 3538695338d9 .hgtags --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.hgtags Wed Sep 08 20:31:33 2010 +0100 @@ -0,0 +1,1 @@ +8b1172973c70ab07f27468f719b6b34c96586779 1.0 diff -r eb52a28e265d -r 3538695338d9 ChangeLog --- a/ChangeLog Wed Sep 08 15:09:55 2010 +0100 +++ b/ChangeLog Wed Sep 08 20:31:33 2010 +0100 @@ -1,3 +1,44 @@ 2010-09-08 Andrew John Hughes + + * Makefile.am: + (nbplatform): Remove trailing slash. + * acinclude.m4: + (VV_CHECK_FOR_NETBEANS): Set NB_PLATFORM to + a relative path. + +2010-09-08 Andrew John Hughes + + PR546: + * Makefile.am: + (NB_PLATFORM): Removed; defined by configure. + * acinclude.m4: + (VV_WITH_NETBEANS_PROFILER_ZIP): Define once only. + (VV_WITH_VISUALVM_ZIP): Likewise. + (IT_CHECK_FOR_JDK): Likewise. + (VV_SET_ARCH_SETTINGS): Likewise. + (VV_CHECK_WITH_VISUALVM_VERSION): Likewise. + (VV_CHECK_FOR_NETBEANS): Check that NetBeans home + exists and contains the appropriate platform for + the version being built. + * configure.ac: Call VV_CHECK_FOR_NETBEANS rather + than doing it inline. + +2010-09-08 Andrew John Hughes + + * INSTALL: Added. + * Makefile.am: + (clean-local): Move stamps removal... + (distclean-local): ... to here. + * README: Added. + * configure.ac: Fix version to visualvm_harness + 1.0 ready for release. + +2010-09-08 Andrew John Hughes + + * .hgignore: Add config.guess and config.sub. + * Makefile.am: + (clean-local): Remove empty stamps directory. + 2010-09-08 Andrew John Hughes Support both 1.2.2 and 1.3. diff -r eb52a28e265d -r 3538695338d9 INSTALL --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/INSTALL Wed Sep 08 20:31:33 2010 +0100 @@ -0,0 +1,54 @@ +Building VisualVM +================= + +For convenience we've provided make targets that automatically +download, extract and build the source code for VisualVM. + +Building requires a bootstrap JDK and an appropriate version of +NetBeans. Currently, we support the use of IcedTea6 as packaged with +most GNU/Linux distributions. + +See ./configure --help if you need to override the defaults. + +$ ./autogen.sh +$ ./configure --prefix= +$ make +$ make install + +The default version is currently 1.2.2. Supported versions +are: + +* 1.2.2 with NetBeans 6.8 +* 1.3 with NetBeans 6.9 + +To build with a version other than the default, specify +--with-visualvm-version=x where x is the version. + +VisualVM is installed in the specified prefix as with normal packages. +To achieve the effect previously used when VisualVM was integrated +into IcedTea, just use a prefix equal to the JDK's location. + +Build Modification Options +========================== + +The build process may be modified by passing the following options +to configure: + +* --with-netbeans-home: Specifies the path to the NetBeans installation + to use to build. Defaults to /usr/share/netbeans. +* --with-jdk-home: Specifies teh path to the JDK to use to build. + The first of: + + * /usr/lib/jvm/java-openjdk + * /usr/lib/jvm/icedtea6 + * /usr/lib/jvm/java-6-openjdk + * /usr/lib/jvm/openjdk + * /usr/lib/jvm/java-icedtea + + which is found to be present is used by default. +* --with-netbeans-profiler-zip: The path to the appropriate NetBeans + profiler zip file to avoid downloading it. +* --with-visualvm-zip: The path to the appropriate VisualVM zip file + to avoid downloading it. +* --with-visualvm-version: Specify the version of VisualVM to build + from those supported. The default is 1.2.2. diff -r eb52a28e265d -r 3538695338d9 Makefile.am --- a/Makefile.am Wed Sep 08 15:09:55 2010 +0100 +++ b/Makefile.am Wed Sep 08 20:31:33 2010 +0100 @@ -13,8 +13,6 @@ VISUALVM_13_URL = https://visualvm.dev.j VISUALVM_13_URL = https://visualvm.dev.java.net/files/documents/7163/151835/ VISUALVM_13_SRC_ZIP = visualvm_13-src.tar.gz VISUALVM_13_SHA256SUM = 18105c1e05347caac04830a8ee940219c573a5447d3cd9b084d6883c9ff07353 - -NB_PLATFORM = $(shell ls $(SYSTEM_NETBEANS_DIR) | grep platform | tail -n1) if VVVERSION_13 NETBEANS_PROFILER_URL=$(NETBEANS_69_PROFILER_URL) @@ -45,6 +43,9 @@ clean-local: clean-visualvm clean-nbplat clean-local: clean-visualvm clean-nbplatform clean-extract distclean-local: clean-local clean-download + if [ -e stamps ]; then \ + rmdir stamps ; \ + fi stamps/download.stamp: stamps/download-netbeans-profiler.stamp stamps/download-visualvm.stamp mkdir -p stamps @@ -142,7 +143,7 @@ stamps/nbplatform.stamp: stamps/extract- stamps/nbplatform.stamp: stamps/extract-netbeans-profiler.stamp rm -f netbeans/nbbuild/external/binaries-list mkdir -p netbeans/nbbuild/netbeans_visualvm/ - ln -s $(SYSTEM_NETBEANS_DIR)/$(NB_PLATFORM)/ $(NBPLATFORM_DIR) + ln -s $(SYSTEM_NETBEANS_DIR)/$(NB_PLATFORM) $(NBPLATFORM_DIR) ln -s $(SYSTEM_NETBEANS_DIR)/harness/ netbeans/nbbuild/netbeans_visualvm mkdir -p netbeans/lib.profiler/release/lib/deployed/jdk15/linux-amd64 mkdir -p netbeans/lib.profiler/release/lib/deployed/jdk16/linux-amd64 diff -r eb52a28e265d -r 3538695338d9 README --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README Wed Sep 08 20:31:33 2010 +0100 @@ -0,0 +1,25 @@ +VisualVM Harness +================ + +The VisualVM harness is part of the IcedTea project and provides a +means to build the source code of various versions of VisualVM +(https://visualvm.dev.java.net/) using Free Software tools and +dependencies. + +See INSTALL for build instructions. + +Homepage (wiki): + http://icedtea.classpath.org/ + +Bugs (bugzilla): + http://icedtea.classpath.org/bugzilla + +Mailing List: + distro-pkg-dev at openjdk.java.net + http://mail.openjdk.java.net/mailman/listinfo/distro-pkg-dev + +FAQ: + http://icedtea.classpath.org/wiki/FrequentlyAskedQuestions + +Anonymous Mercurial checkout: + hg clone http://icedtea.classpath.org/hg/visualvm diff -r eb52a28e265d -r 3538695338d9 acinclude.m4 --- a/acinclude.m4 Wed Sep 08 15:09:55 2010 +0100 +++ b/acinclude.m4 Wed Sep 08 20:31:33 2010 +0100 @@ -1,4 +1,4 @@ AC_DEFUN([VV_WITH_NETBEANS_PROFILER_ZIP] -AC_DEFUN([VV_WITH_NETBEANS_PROFILER_ZIP], +AC_DEFUN_ONCE([VV_WITH_NETBEANS_PROFILER_ZIP], [ AC_MSG_CHECKING(for a NetBeans profiler zip) AC_ARG_WITH([netbeans-profiler-zip], @@ -14,7 +14,7 @@ AC_DEFUN([VV_WITH_NETBEANS_PROFILER_ZIP] AC_SUBST(ALT_NETBEANS_PROFILER_ZIP) ]) -AC_DEFUN([VV_WITH_VISUALVM_ZIP], +AC_DEFUN_ONCE([VV_WITH_VISUALVM_ZIP], [ AC_MSG_CHECKING(for a VisualVM zip) AC_ARG_WITH([visualvm-zip], @@ -30,7 +30,7 @@ AC_DEFUN([VV_WITH_VISUALVM_ZIP], AC_SUBST(ALT_VISUALVM_ZIP) ]) -AC_DEFUN([IT_CHECK_FOR_JDK], +AC_DEFUN_ONCE([IT_CHECK_FOR_JDK], [ AC_MSG_CHECKING([for a JDK home directory]) AC_ARG_WITH([jdk-home], @@ -76,7 +76,7 @@ AC_DEFUN([IT_FIND_TOOL], AC_SUBST([$1]) ]) -AC_DEFUN([VV_SET_ARCH_SETTINGS], +AC_DEFUN_ONCE([VV_SET_ARCH_SETTINGS], [ AC_REQUIRE([AC_CANONICAL_HOST]) case "${host_cpu}" in @@ -108,7 +108,7 @@ AC_DEFUN([VV_SET_ARCH_SETTINGS], AC_SUBST(ARCHFLAG) ]) -AC_DEFUN([VV_CHECK_WITH_VISUALVM_VERSION], +AC_DEFUN_ONCE([VV_CHECK_WITH_VISUALVM_VERSION], [ DEFAULT_VERSION="1.2.2" AC_MSG_CHECKING([which VisualVM version to build]) @@ -128,3 +128,35 @@ AC_DEFUN([VV_CHECK_WITH_VISUALVM_VERSION AC_MSG_RESULT([${VVVERSION}]) AM_CONDITIONAL([VVVERSION_13], [test "$VVVERSION" = "1.3"]) ]) + +AC_DEFUN_ONCE([VV_CHECK_FOR_NETBEANS], +[ +AC_REQUIRE([VV_CHECK_WITH_VISUALVM_VERSION]) +AC_MSG_CHECKING([for a NetBeans installation]) +AC_ARG_WITH([netbeans-home], + [AS_HELP_STRING([--with-netbeans-home], + [NetBeans home directory (default is /usr/share/netbeans)])], + [ + if test "x${withval}" = x + then + SYSTEM_NETBEANS_DIR=/usr/share/netbeans + else + SYSTEM_NETBEANS_DIR=${withval} + fi + ], + [ + SYSTEM_NETBEANS_DIR=/usr/share/netbeans + ]) +AC_MSG_RESULT([${SYSTEM_NETBEANS_DIR}]) +AC_SUBST(SYSTEM_NETBEANS_DIR) +if test "$VVVERSION" = "1.3"; then + NB_PLATFORM=platform12; +else + NB_PLATFORM=platform11; +fi +if ! test -d ${SYSTEM_NETBEANS_DIR}/${NB_PLATFORM} ; then + AC_MSG_ERROR([Couldn't find NetBeans platform directory: ${SYSTEM_NETBEANS_DIR}/${NB_PLATFORM}]) +fi +AC_SUBST([NB_PLATFORM]) +]) + diff -r eb52a28e265d -r 3538695338d9 configure.ac --- a/configure.ac Wed Sep 08 15:09:55 2010 +0100 +++ b/configure.ac Wed Sep 08 20:31:33 2010 +0100 @@ -1,4 +1,4 @@ AC_INIT([visualvm], [1.2.2], [distro-pkg -AC_INIT([visualvm], [1.2.2], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([visualvm_harness], [1.0], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile visualvm.desktop]) @@ -13,24 +13,6 @@ AC_SUBST(abs_top_srcdir) AC_PROG_CC -AC_MSG_CHECKING([for a NetBeans installation]) -AC_ARG_WITH([netbeans-home], - [AS_HELP_STRING([--with-netbeans-home], - [NetBeans home directory (default is /usr/share/netbeans)])], - [ - if test "x${withval}" = x - then - SYSTEM_NETBEANS_DIR=/usr/share/netbeans - else - SYSTEM_NETBEANS_DIR=${withval} - fi - ], - [ - SYSTEM_NETBEANS_DIR=/usr/share/netbeans - ]) -AC_MSG_RESULT([${SYSTEM_NETBEANS_DIR}]) -AC_SUBST(SYSTEM_NETBEANS_DIR) - IT_CHECK_FOR_JDK IT_FIND_TOOL([ANT], [ant]) IT_FIND_TOOL([SHA256SUM], [sha256sum]) @@ -40,6 +22,6 @@ VV_SET_ARCH_SETTINGS VV_SET_ARCH_SETTINGS VV_WITH_NETBEANS_PROFILER_ZIP VV_WITH_VISUALVM_ZIP -VV_CHECK_WITH_VISUALVM_VERSION +VV_CHECK_FOR_NETBEANS AC_OUTPUT From bugzilla-daemon at icedtea.classpath.org Wed Sep 8 12:33:23 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Sep 2010 19:33:23 +0000 Subject: [Bug 546] VisualVM doesn't fail during configure if NetBeans is absent Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=546 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED ------- Comment #1 from gnu_andrew at member.fsf.org 2010-09-08 19:33 ------- Fixed: http://icedtea.classpath.org/hg/visualvm/rev/37857184a6d9 Thanks to doko for his help with 1.3 on IRC. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Sep 8 12:34:50 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Sep 2010 19:34:50 +0000 Subject: [Bug 546] VisualVM doesn't fail during configure if NetBeans is absent Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=546 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |1.0 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Sep 8 12:35:33 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Sep 2010 19:35:33 +0000 Subject: [Bug 546] VisualVM doesn't fail during configure if NetBeans is absent Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=546 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Version|1.0 |hg -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ahughes at redhat.com Wed Sep 8 13:15:13 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Wed, 8 Sep 2010 21:15:13 +0100 Subject: VisualVM Harness 1.0 Released! Message-ID: <20100908201513.GC20792@rivendell.middle-earth.co.uk> We are pleased to announce the first release of the VisualVM harness! VisualVM build support was formerly part of IcedTea but has been split out to allow for easier packaging, avoiding the need for OpenJDK builds to be dependent on NetBeans platform changes. As of IcedTea6 1.9, released yesterday, there is no VisualVM support in IcedTea6. What's New ========== * Separation of VisualVM build harness from IcedTea6. * Support for both VisualVM 1.2.2 (NetBeans 6.8) and 1.3 (NetBeans 6.9) The tarball can be downloaded from: http://icedtea.classpath.org/download/source/visualvm_harness-1.0.tar.gz sha256sum: 4d9db608322c9f1dc7022d264b02b7f6b901fa669ffb1dda46b67935ad831e0b The following people helped with the 1.0 release: Andrew John Hughes, Tomas Hurka, Matthias Klose We would also like to thank all the bug reporters and testers! To get started: $ tar xzf visualvm_harness-1.0.tar.gz $ ./configure $ make $ make install Full build requirements and instructions are in INSTALL. To build VisualVM 1.3, the option --with-visualvm-version=1.3 should be specified. The default is 1.2.2. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Wed Sep 8 13:25:45 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 08 Sep 2010 20:25:45 +0000 Subject: [Bug 545] eclipse 3.5 - 4.0 crash on startup when using icedtea with cacao Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=545 ------- Comment #2 from Michael.Gaber at gmx.net 2010-09-08 20:25 ------- this fixed it for 3.5.* downloaded from the homepage. 4.0 still crashes with the followiung error which seems the same as before: tigerchen at keksdose-mobile ~ $ ./eclipse-4.0/eclipse ERROR: Unable to create class 'org.eclipse.e4.ui.internal.workbench.ResourceHandler' from bundle '61' org.eclipse.e4.core.di.InjectionException: java.lang.LinkageError: subtype constraint violated (java.lang.Object is not a subclass of org.eclipse.emf.common.util.BasicEMap$Entry) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:54) at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:795) at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:104) at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:292) at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:219) at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:152) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:90) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:64) at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:53) at org.eclipse.e4.ui.internal.workbench.swt.E4Application.loadApplicationModel(E4Application.java:314) at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createE4Workbench(E4Application.java:185) at org.eclipse.ui.internal.Workbench$3.run(Workbench.java:532) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:525) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574) at org.eclipse.equinox.launcher.Main.run(Main.java:1407) at org.eclipse.equinox.launcher.Main.main(Main.java:1383) Caused by: java.lang.LinkageError: subtype constraint violated (java.lang.Object is not a subclass of org.eclipse.emf.common.util.BasicEMap$Entry) at org.eclipse.emf.ecore.util.EcoreEMap$DelegateEObjectContainmentEList.didAdd(EcoreEMap.java:130) at org.eclipse.emf.common.util.BasicEList.addUnique(BasicEList.java:425) at org.eclipse.emf.common.notify.impl.NotifyingListImpl.doAddUnique(NotifyingListImpl.java:331) at org.eclipse.emf.common.notify.impl.NotifyingListImpl.addUnique(NotifyingListImpl.java:315) at org.eclipse.emf.common.util.AbstractEList.add(AbstractEList.java:307) at org.eclipse.emf.common.util.BasicEMap.put(BasicEMap.java:591) at org.eclipse.emf.ecore.impl.EPackageImpl.addAnnotation(EPackageImpl.java:1655) at org.eclipse.emf.ecore.impl.EPackageImpl.addAnnotation(EPackageImpl.java:1640) at org.eclipse.emf.ecore.impl.EPackageImpl.addAnnotation(EPackageImpl.java:1635) at org.eclipse.emf.ecore.impl.EcorePackageImpl.createExtendedMetaDataAnnotations(EcorePackageImpl.java:2923) at org.eclipse.emf.ecore.impl.EcorePackageImpl.internalBootstrap(EcorePackageImpl.java:524) at org.eclipse.emf.ecore.EcorePackage.(EcorePackage.java:6582) at org.eclipse.emf.ecore.impl.EPackageImpl.(EPackageImpl.java:191) at org.eclipse.e4.ui.model.application.impl.ApplicationPackageImpl.(ApplicationPackageImpl.java:614) at org.eclipse.e4.ui.model.application.impl.ApplicationPackageImpl.init(ApplicationPackageImpl.java:640) at org.eclipse.e4.ui.model.application.impl.ApplicationPackageImpl.(ApplicationPackageImpl.java:80) at org.eclipse.e4.ui.internal.workbench.ResourceHandler.init(ResourceHandler.java:106) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:616) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:47) ... 28 more -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From andrew at icedtea.classpath.org Thu Sep 9 04:59:44 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 09 Sep 2010 11:59:44 +0000 Subject: /hg/visualvm: Bump to 1.1pre and add NEWS from release announcem... Message-ID: changeset 12011c66e520 in /hg/visualvm details: http://icedtea.classpath.org/hg/visualvm?cmd=changeset;node=12011c66e520 author: Andrew John Hughes date: Thu Sep 09 12:59:32 2010 +0100 Bump to 1.1pre and add NEWS from release announcement. 2010-09-09 Andrew John Hughes * configure.ac: Bump to 1.1pre. * NEWS: Added. diffstat: 3 files changed, 20 insertions(+), 1 deletion(-) ChangeLog | 5 +++++ NEWS | 14 ++++++++++++++ configure.ac | 2 +- diffs (39 lines): diff -r 3538695338d9 -r 12011c66e520 ChangeLog --- a/ChangeLog Wed Sep 08 20:31:33 2010 +0100 +++ b/ChangeLog Thu Sep 09 12:59:32 2010 +0100 @@ -1,3 +1,8 @@ 2010-09-08 Andrew John Hughes + + * configure.ac: Bump to 1.1pre. + * NEWS: Added. + 2010-09-08 Andrew John Hughes * Makefile.am: diff -r 3538695338d9 -r 12011c66e520 NEWS --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/NEWS Thu Sep 09 12:59:32 2010 +0100 @@ -0,0 +1,14 @@ +Key: + +SX - http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6969395 +PRX - http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=X +RHX - https://bugzilla.redhat.com/show_bug.cgi?id=X +DX - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=X +GX - http://bugs.gentoo.org/show_bug.cgi?id=X + +CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY + +New in release 1.0 (2010-09-08): + +* Separation of VisualVM build harness from IcedTea6. +* Support for both VisualVM 1.2.2 (NetBeans 6.8) and 1.3 (NetBeans 6.9) diff -r 3538695338d9 -r 12011c66e520 configure.ac --- a/configure.ac Wed Sep 08 20:31:33 2010 +0100 +++ b/configure.ac Thu Sep 09 12:59:32 2010 +0100 @@ -1,4 +1,4 @@ AC_INIT([visualvm_harness], [1.0], [dist -AC_INIT([visualvm_harness], [1.0], [distro-pkg-dev at openjdk.java.net]) +AC_INIT([visualvm_harness], [1.1pre], [distro-pkg-dev at openjdk.java.net]) AM_INIT_AUTOMAKE([1.9 tar-pax foreign]) AC_CONFIG_FILES([Makefile visualvm.desktop]) From doko at icedtea.classpath.org Thu Sep 9 08:59:18 2010 From: doko at icedtea.classpath.org (doko at icedtea.classpath.org) Date: Thu, 09 Sep 2010 15:59:18 +0000 Subject: /hg/icedtea: patch doesn't apply anymore, set the env var DISABL... Message-ID: changeset 48e9cd4206ad in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=48e9cd4206ad author: doko at ubuntu.com date: Thu Sep 09 17:56:38 2010 +0200 patch doesn't apply anymore, set the env var DISABLE_PRECOMPILED_HEADER to an non-empty value instead, for not using the precompiled header file. 2010-09-09 Matthias Klose * patches/hotspot/default/icedtea-no-precompiled.patch: Remove. diffstat: 2 files changed, 4 insertions(+), 32 deletions(-) ChangeLog | 4 ++ patches/hotspot/default/icedtea-no-precompiled.patch | 32 ------------------ diffs (47 lines): diff -r 24c32ab62605 -r 48e9cd4206ad ChangeLog --- a/ChangeLog Tue Sep 07 23:34:25 2010 +0100 +++ b/ChangeLog Thu Sep 09 17:56:38 2010 +0200 @@ -1,3 +1,7 @@ 2010-09-07 Andrew John Hughes + + * patches/hotspot/default/icedtea-no-precompiled.patch: Remove. + 2010-09-07 Andrew John Hughes * patches/icedtea-6977640.patch: Dropped. diff -r 24c32ab62605 -r 48e9cd4206ad patches/hotspot/default/icedtea-no-precompiled.patch --- a/patches/hotspot/default/icedtea-no-precompiled.patch Tue Sep 07 23:34:25 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,32 +0,0 @@ ---- openjdk/hotspot/make/linux/makefiles/gcc.make.orig 2009-01-04 13:51:38.000000000 +0000 -+++ openjdk/hotspot/make/linux/makefiles/gcc.make 2009-01-04 13:53:34.000000000 +0000 -@@ -34,13 +34,6 @@ - CC_VER_MAJOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f1) - CC_VER_MINOR := $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2) - --# check for precompiled headers support --ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0" --USE_PRECOMPILED_HEADER=1 --PRECOMPILED_HEADER_DIR=. --PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/incls/_precompiled.incl.gch --endif -- - - #------------------------------------------------------------------------ - # Compiler flags ---- openjdk/hotspot/make/solaris/makefiles/gcc.make.orig 2009-01-04 14:44:12.000000000 +0000 -+++ openjdk/hotspot/make/solaris/makefiles/gcc.make 2009-01-04 17:06:50.000000000 +0000 -@@ -45,13 +45,6 @@ - $(shell $(CC) -dumpversion | sed 's/egcs-//' | cut -d'.' -f2) - - --# check for precompiled headers support --ifneq "$(shell expr \( $(CC_VER_MAJOR) \> 3 \) \| \( \( $(CC_VER_MAJOR) = 3 \) \& \( $(CC_VER_MINOR) \>= 4 \) \))" "0" --USE_PRECOMPILED_HEADER=1 --PRECOMPILED_HEADER_DIR=. --PRECOMPILED_HEADER=$(PRECOMPILED_HEADER_DIR)/incls/_precompiled.incl.gch --endif -- - - #------------------------------------------------------------------------ - # Compiler flags From ptisnovs at icedtea.classpath.org Thu Sep 9 10:26:37 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 09 Sep 2010 17:26:37 +0000 Subject: /hg/gfx-test: Updated test reporter, now it can create proper in... Message-ID: changeset e3e509624def in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=e3e509624def author: Pavel Tisnovsky date: Thu Sep 09 19:26:50 2010 +0200 Updated test reporter, now it can create proper index.html containing statistic for all tests. diffstat: 3 files changed, 208 insertions(+), 11 deletions(-) src/org/gfxtest/reporter/Reporter.java | 170 ++++++++++++++++++++++++++++-- src/org/gfxtest/reporter/TestResult.java | 12 ++ template_test_result.html | 37 ++++++ diffs (301 lines): diff -r 44b7fc94cdca -r e3e509624def src/org/gfxtest/reporter/Reporter.java --- a/src/org/gfxtest/reporter/Reporter.java Mon Sep 06 18:20:13 2010 +0200 +++ b/src/org/gfxtest/reporter/Reporter.java Thu Sep 09 19:26:50 2010 +0200 @@ -40,9 +40,10 @@ exception statement from your version. package org.gfxtest.reporter; -import java.io.File; -import java.util.HashMap; -import java.util.Map; +import java.io.*; +import java.util.*; +import javax.xml.parsers.*; +import org.w3c.dom.*; import org.gfxtest.common.ConfigurationException; import org.gfxtest.framework.Log; @@ -52,20 +53,22 @@ import org.gfxtest.framework.Log; * * @author Pavel Tisnovsky */ + at SuppressWarnings("nls") public class Reporter { private Log log = null; private ReporterConfiguration configuration = null; - @SuppressWarnings("nls") - private final String[] SPECTESTS = new String[] {"BlankImage"}; + private static final String INPUT_FILE_NAME = "template_test_result.html"; - @SuppressWarnings("nls") - private final String[] ENTITIES = new String[] {"Line", "Polyline", "Polygon", "Rectangle", "Circle", "Ellipse", "Arc"}; + private static final String OUTPUT_FILE_NAME = "index.html"; - @SuppressWarnings("nls") - private final String[] STYLES = new String[] {"Normal", "Filled", "Dashed", "Scaled"}; + private static final String[] SPECTESTS = new String[] {"BlankImage"}; + + private static final String[] ENTITIES = new String[] {"Lines", "Polylines", "Polygons", "Rectangles", "Round Rectangles", "Circles", "Ellipses", "Arcs"}; + + private static final String[] STYLES = new String[] {"Normal", "Filled", "Dashed", "AA"}; /** * Write report writer duration to the log file. @@ -80,6 +83,8 @@ public class Reporter private void doReport(String[] args) { + BufferedReader input = null; + BufferedWriter output = null; long t1 = System.currentTimeMillis(); this.log = new Log(this.getClass().getName(), true); this.log.logBegin("report"); //$NON-NLS-1$ @@ -87,16 +92,105 @@ public class Reporter { this.configuration = new ReporterConfiguration(args, this.log); Map testResults = readAllTestResults(); + input = new BufferedReader(new FileReader(new File(INPUT_FILE_NAME))); + output = new BufferedWriter(new FileWriter(new File(this.configuration.getOutputPath(), OUTPUT_FILE_NAME))); + writeHtmlHeader(input, output); + writeHeaderForCommonTests(output); + for (String entity : ENTITIES) + { + writeEntityHeader(output, entity); + for (String style : STYLES) + { + String testSuiteName = style + entity; + TestResult testResult = testResults.get(testSuiteName); + writeTestResult(output, testResult, testSuiteName); + this.log.logSet(testSuiteName, testResult); + } + output.write("\n"); + } + output.write(" \n"); + for (String entity : SPECTESTS) + { + writeEntityHeader(output, entity); + String testSuiteName = entity; + TestResult testResult = testResults.get(testSuiteName); + writeTestResult(output, testResult, testSuiteName); + output.write(" \n"); + this.log.logSet(testSuiteName, testResult); + } + writeHtmlFooter(input, output); } catch (ConfigurationException e) { e.printStackTrace(); } + catch (IOException e) + { + e.printStackTrace(); + } finally { + try + { + if (output != null) + { + output.close(); + } + } + catch (IOException e) + { + e.printStackTrace(); + } long t2 = System.currentTimeMillis(); this.log.logEnd("report"); //$NON-NLS-1$ printDuration(t1, t2); + } + } + + private void writeHeaderForCommonTests(BufferedWriter output) throws IOException + { + output.write("Entity"); + for (String style : STYLES) + { + output.write("" + style + ""); + } + output.write("\n"); + } + + private void writeEntityHeader(BufferedWriter output, String entity) throws IOException + { + output.write("" + entity +""); + } + + private void writeTestResult(BufferedWriter output, TestResult testResult, String testSuiteName) throws IOException + { + if (testResult == null) + { + output.write("×"); + } + else + { + output.write(String.format("%s", testSuiteName, testResult.toString())); + } + } + + private void writeHtmlHeader(BufferedReader input, BufferedWriter output) throws IOException + { + String line; + while( (line = input.readLine())!=null && !"${RESULT}".equals(line.trim())) + { + output.write(line); + output.write('\n'); + } + } + + private void writeHtmlFooter(BufferedReader input, BufferedWriter output) throws IOException + { + String line; + while( (line = input.readLine())!=null) + { + output.write(line); + output.write('\n'); } } @@ -111,9 +205,64 @@ public class Reporter } for (String resultDir : inputDir.list()) { - System.out.println("***" + resultDir); + File dir = new File(inputDir, resultDir); + if (dir.isDirectory()) + { + this.log.logBegin("processing directory " + resultDir); + TestResult result = readTestResult(dir); + results.put(resultDir, result); + this.log.logEnd("processing directory " + resultDir); + } } return results; + } + + @SuppressWarnings({ "boxing" }) + private TestResult readTestResult(File resultDirectory) + { + File resultFile = new File(resultDirectory, "results.xml"); + TestResult testResult = new TestResult(); + int totalTests = 0; + int sameImages = 0; + int differentImages = 0; + try + { + DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder(); + Document document = builder.parse(resultFile); + NodeList nodes = document.getElementsByTagName("test"); + for (int i = 0; i < nodes.getLength(); i++) + { + Element testNode = (Element) nodes.item(i); + this.log.logSet(testNode.getNodeName(), ""+i); + + Element patternNode = (Element) testNode.getElementsByTagName("pattern").item(0); + String result = patternNode.getAttribute("result"); + this.log.logSet("result", result); + totalTests ++; + if ("same".equals(result)) + { + sameImages++; + } + else + { + differentImages++; + } + } + } + catch (Exception e) + { + e.printStackTrace(); + } + finally + { + testResult.setTotalTests(totalTests); + testResult.setSameImages(sameImages); + testResult.setDifferentImages(differentImages); + this.log.logSet("total tests", totalTests); + this.log.logSet("same images", sameImages); + this.log.logSet("different images", differentImages); + } + return testResult; } /** @@ -124,5 +273,4 @@ public class Reporter new Reporter().doReport(args); } - } diff -r 44b7fc94cdca -r e3e509624def src/org/gfxtest/reporter/TestResult.java --- a/src/org/gfxtest/reporter/TestResult.java Mon Sep 06 18:20:13 2010 +0200 +++ b/src/org/gfxtest/reporter/TestResult.java Thu Sep 09 19:26:50 2010 +0200 @@ -5,6 +5,11 @@ public class TestResult private int totalTests; private int sameImages; private int differentImages; + + public TestResult() + { + // empty + } public int getTotalTests() { @@ -35,4 +40,11 @@ public class TestResult { this.differentImages = differentImages; } + + @SuppressWarnings({ "boxing", "nls" }) + @Override + public String toString() + { + return String.format("all: %d, same: %d, diff: %d", this.getTotalTests(), this.getSameImages(), this.getDifferentImages()); + } } diff -r 44b7fc94cdca -r e3e509624def template_test_result.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/template_test_result.html Thu Sep 09 19:26:50 2010 +0200 @@ -0,0 +1,37 @@ + + + + Graphics test report + + + + + + + +

Graphics test report

+ + ${RESULT} +
+
+
+

Generated by Reporter

+ + + From doko at icedtea.classpath.org Thu Sep 9 10:34:40 2010 From: doko at icedtea.classpath.org (doko at icedtea.classpath.org) Date: Thu, 09 Sep 2010 17:34:40 +0000 Subject: /hg/icedtea: Remove more obsolete patches (current patches are i... Message-ID: changeset ad2ccd203c51 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=ad2ccd203c51 author: doko at ubuntu.com date: Thu Sep 09 19:31:54 2010 +0200 Remove more obsolete patches (current patches are in patches/hotspot/default) 2010-09-09 Matthias Klose * patches/icedtea-hotspot-use-idx_t.patch: Remove. * patches/icedtea-hotspot-params-cast-size_t.patch: Remove. diffstat: 1 file changed, 2 insertions(+) ChangeLog | 2 ++ diffs (12 lines): diff -r 48e9cd4206ad -r ad2ccd203c51 ChangeLog --- a/ChangeLog Thu Sep 09 17:56:38 2010 +0200 +++ b/ChangeLog Thu Sep 09 19:31:54 2010 +0200 @@ -1,6 +1,8 @@ 2010-09-09 Matthias Klose * patches/hotspot/default/icedtea-no-precompiled.patch: Remove. + * patches/icedtea-hotspot-use-idx_t.patch: Remove. + * patches/icedtea-hotspot-params-cast-size_t.patch: Remove. 2010-09-07 Andrew John Hughes From omajid at redhat.com Thu Sep 9 11:37:13 2010 From: omajid at redhat.com (Omair Majid) Date: Thu, 09 Sep 2010 14:37:13 -0400 Subject: [patch] add a man page for javaws Message-ID: <4C892959.1010308@redhat.com> Hi, OpenJDK6 contains a man page for javaws, but it has two problems: - it not applicable to netx which has different quirks and options - openjdk's javaws man page is only "built" on a 32 bit arch. The attached patch adds a man page for javaws, which overwrites the one from openjdk. This man page should be much more relevant to anyone using IcedTea. Any comments or concerns? 2010-09-09 Omair Majid Add a new man page for netx's javaws. * Makefile.am (stamps/add-netx.stamp): Copy over the javaws man page into the build. (clean-add-netx): Remove the javaws man pages on clean. (stamps/add-netx-debug.stamp): Copy over the javaws man page. (clean-add-netx-debug): Remove the javaws man page. * netx/javaws.1: New man page for netx's javaws. Cheers, Omair -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea6-javaws-man-page.patch Type: text/x-patch Size: 5148 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100909/17915f5d/icedtea6-javaws-man-page.patch From ahughes at redhat.com Thu Sep 9 14:10:03 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Thu, 9 Sep 2010 22:10:03 +0100 Subject: [patch] add a man page for javaws In-Reply-To: <4C892959.1010308@redhat.com> References: <4C892959.1010308@redhat.com> Message-ID: <20100909211002.GA14990@rivendell.middle-earth.co.uk> On 14:37 Thu 09 Sep , Omair Majid wrote: > Hi, > > OpenJDK6 contains a man page for javaws, but it has two problems: > - it not applicable to netx which has different quirks and options > - openjdk's javaws man page is only "built" on a 32 bit arch. > > The attached patch adds a man page for javaws, which overwrites the one > from openjdk. This man page should be much more relevant to anyone using > IcedTea. Any comments or concerns? > Looks good. I'm surprised this hasn't been picked up before! Approved for HEAD and all three branches (1.7, 1.8 and 1.9) > 2010-09-09 Omair Majid > > Add a new man page for netx's javaws. > * Makefile.am > (stamps/add-netx.stamp): Copy over the javaws man page into the > build. > (clean-add-netx): Remove the javaws man pages on clean. > (stamps/add-netx-debug.stamp): Copy over the javaws man page. > (clean-add-netx-debug): Remove the javaws man page. > * netx/javaws.1: New man page for netx's javaws. > > Cheers, > Omair > diff -r e8452eabe369 Makefile.am > --- a/Makefile.am Wed Sep 08 13:16:22 2010 +0100 > +++ b/Makefile.am Thu Sep 09 14:15:03 2010 -0400 > @@ -1422,6 +1422,10 @@ > $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib > cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ > $(BUILD_OUTPUT_DIR)/j2re-image/lib > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 > touch stamps/add-netx.stamp > > clean-add-netx: > @@ -1431,6 +1435,8 @@ > rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar > rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp > rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar > + rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 > + rm -f $(BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 > rm -f stamps/add-netx.stamp > > stamps/add-netx-debug.stamp: stamps/netx-dist.stamp extra-lib/about.jar > @@ -1442,6 +1448,10 @@ > $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib > cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ > $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 > touch stamps/add-netx-debug.stamp > > clean-add-netx-debug: > @@ -1451,6 +1461,8 @@ > rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar > rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp > rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar > + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 > + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 > rm -f stamps/add-netx-debug.stamp > > # OpenJDK ecj Targets > @@ -2166,6 +2178,10 @@ > > netx-dist: stamps/netx-dist.stamp > > +add-netx: stamps/add-netx.stamp > + > +add-netx-debug: stamps/add-netx-debug.stamp > + > overlay: stamps/overlay.stamp > > patch: stamps/patch.stamp > diff -r e8452eabe369 netx/javaws.1 > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/netx/javaws.1 Thu Sep 09 14:15:03 2010 -0400 > @@ -0,0 +1,123 @@ > +.TH javaws 1 "9 Sep 2010" > +.SH NAME > +javaws - a Java Web Start client > +.SH SYNOPSYS > +.B javaws > +[-run-options] jnlp-file > +.br > +.B javaws > +[-control-option] > +.SH DESCRIPTION > +.B javaws > +is an implementation of a JNLP client. It uses a JNLP (Java Network > +Launch Protocol) file to securely run a remote Java application or > +a Java applet. This implementation of > +.B javaws > +is from the IcedTea project and is based on the NetX project. > +.PP > +A JNLP file is an xml file that describes how to securely run a > +remote Java application or a Java applet. > + > +.SH OPTIONS > +When specifying options, the name of the jnlp file must be the last > +argument to > +.B javaws > +- all the options must preceede it. > +.PP > +The jnlp-file can either be a url or a local path. > +.PP > +.B Control Options > +.PP > +By default > +.B javaws > +will launch the jnlp file specified on the command line. The control > +options can be used to change this behaviour. > +.TP 12 > +\-about > +Shows a sample application that can be used to test the basic functionality > +of this implementation. > +.TP > +\-viewer > +Shows the trusted certificate viewer. This allows a user to list, examine, remove > +or export trusted certificates. Note that this only reflects the certificates > +trusted by > +.B javaws > +and not any other certificates or programs. > + > +.PP > +.B Run Options > +.PP > +In the default mode, the following run-options can be used: > +.TP 12 > +\-basedir dir > +Directory where the cache and certificates to be used are stored. > +.TP > +\-arg arg > +Adds an application argument before launching. > +.TP > +\-param name=value > +Adds an applet parameter before launching. > +.TP > +\-property name=value > +Sets a system property before launching. > +.TP > +\-update seconds > +Update check if seconds since last checked. > +.TP > +\-license > +Display the GPL license and exit. > +.TP > +\-verbose > +Enable verbose output. Very useful in debugging. > +.TP > +\-nosecurity > +Disables the secure runtime environment. > +.TP > +\-noupdate > +Disables checking for updates. > +.TP > +\-headless > +Disables download window, other UIs. > +.TP > +\-strict > +Enables strict checking of JNLP file format. Any deviations from > +the JNLP DTD will cause > +.B javaws > +to abort. > +.TP > +\-umask=value > +Sets the umask for files created by an application. > +.TP > +\-Xnofork > +Do not create another JVM, even if the JNLP file asks for running in > +a separate JVM. This is useful for debugging. > +.TP > +\-Jjava-option > +This passes along java-option to the java binary that is running > +javaws. For example, to make javaws run with a max heap size > +of 80m, use -J-Xmx80m. > +.TP > +\-help > +Print a help message and exit. > + > +.SH FILES > +~/.netxrc specifies the location of the base directory > + > +.SH BUGS > +There arent any known bugs. If you come across one, please file it at > + http://icedtea.classpath.org/bugzilla/ > +.br > +Please run javaws in verbose mode and include that output along > +with the jnlp file when filing out the bug report. > + > +.SH AUTHOR > +Originally written by Jon. A. Maxwell. > +.br > +Currently maintained by the IcedTea contributors. > + > +.SH SEE ALSO > +.BR java (1) > +.br > +http://icedtea.classpath.org/ > +.br > +http://jnlp.sourceforge.net/netx/ -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From omajid at redhat.com Thu Sep 9 14:18:50 2010 From: omajid at redhat.com (Omair Majid) Date: Thu, 09 Sep 2010 17:18:50 -0400 Subject: [patch] add a man page for javaws In-Reply-To: <20100909211002.GA14990@rivendell.middle-earth.co.uk> References: <4C892959.1010308@redhat.com> <20100909211002.GA14990@rivendell.middle-earth.co.uk> Message-ID: <4C894F3A.1010803@redhat.com> On 09/09/2010 05:10 PM, Dr Andrew John Hughes wrote: > On 14:37 Thu 09 Sep , Omair Majid wrote: >> Hi, >> >> OpenJDK6 contains a man page for javaws, but it has two problems: >> - it not applicable to netx which has different quirks and options >> - openjdk's javaws man page is only "built" on a 32 bit arch. >> >> The attached patch adds a man page for javaws, which overwrites the one >> from openjdk. This man page should be much more relevant to anyone using >> IcedTea. Any comments or concerns? >> > > Looks good. I'm surprised this hasn't been picked up before! > Well, the fedora rpm just deletes the man page for javaws. I am not sure what other distributions do. > Approved for HEAD and all three branches (1.7, 1.8 and 1.9) > Thanks! Omair From bugzilla-daemon at icedtea.classpath.org Thu Sep 9 22:21:10 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Sep 2010 05:21:10 +0000 Subject: [Bug 548] New: Error: Deadlock in safepoint code. Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=548 Summary: Error: Deadlock in safepoint code. Product: IcedTea Version: 6-1.8 Platform: 64-bit OS/Version: Linux Status: NEW Severity: critical Priority: P2 Component: IcedTea6 AssignedTo: unassigned at icedtea.classpath.org ReportedBy: dot618point at gmail.com # # A fatal error has been detected by the Java Runtime Environment: # # Internal Error (safepoint.cpp:555), pid=10773, tid=2199866675792 # Error: Deadlock in safepoint code. Should have called back to the VM before blocking. # # JRE version: 6.0_18-b18 # Java VM: OpenJDK 64-Bit Zero VM (14.0-b16 interpreted mode linux-alpha ) # Derivative: IcedTea6 1.8 # Distribution: Custom build (Sun Oct 17 19:52:19 CST 2010) # If you would like to submit a bug report, please include # instructions how to reproduce the bug and visit: # http://icedtea.classpath.org/bugzilla # --------------- T H R E A D --------------- Current thread (0x00000001200a2260): JavaThread "Signal Dispatcher" daemon [_thread_in_native_trans, id=10778, stack(0x00000200322da000,0x000002003245a000)] Stack: [0x00000200322da000,0x000002003245a000], sp=0x0000020032398b40, free space=762k Java frames: 0x0000020032458008: unboxed parameter[4] = 0x00000200324580f8 0x0000020032458010: unboxed parameter[2] = 0x0000020032458108 0x0000020032458018: parameter[0] (JNIEnv) = 0x0000020032398fd0 0x0000020032458020: parameter[1] (mirror) = 0x0000020032398fc0 0x0000020032458028: parameter[2] = 0x0000020032458010 0x0000020032458030: parameter[3] = 0x0000020032458100 0x0000020032458038: parameter[4] = 0x0000020032458008 0x0000020032458040: parameter[5] = 0x00000200324580f0 0x0000020032458048: parameter[6] = 0x00000200324580e8 0x0000020032458050: istate->_thread = 0x00000001200a2260 0x0000020032458058: istate->_bcp = 0x0000000000000000 0x0000020032458060: istate->_locals = 0x0000020032458108 0x0000020032458068: istate->_constants = 0x000002002c8ad748 0x0000020032458070: istate->_method = java.lang.System.arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V 0x0000020032458078: istate->_mdx = 0x0000000000000000 0x0000020032458080: istate->_stack = 0x0000020032458048 0x0000020032458088: istate->_msg = 0x0000000000000002 0x0000020032458090: istate->_result = 0x0000000000000000 0x0000020032458098: (istate->_result) = 0x0000000000000000 0x00000200324580a0: (istate->_result) = 0x0000000000000000 0x00000200324580a8: istate->_prev_link = 0x0000000000000000 0x00000200324580b0: istate->_oop_temp = 0x000002002c824370 0x00000200324580b8: istate->_stack_base = 0x0000020032458050 0x00000200324580c0: istate->_stack_limit = 0x0000020032458048 0x00000200324580c8: istate->_monitor_base = 0x0000020032458050 0x00000200324580d0: istate->_self_link = 0x0000020032458050 0x00000200324580d8: frame_type = INTERPRETER_FRAME 0x00000200324580e0: next_frame = 0x00000200324581b0 0x00000200324580e8: local[4] = 0x0000020000000000 0x00000200324580f0: local[3] = 0x0000020000000002 0x00000200324580f8: local[2] = 0x0000020002bf11b0 0x0000020032458100: local[1] = 0x0000020000000003 0x0000020032458108: local[0] = 0x0000020002bf11b0 0x0000020032458110: monitor[0]->_lock = 0x0000000000000001 0x0000020032458118: monitor[0]->_obj = 0x0000020002bf0918 0x0000020032458120: istate->_thread = 0x00000001200a2260 0x0000020032458128: istate->_bcp = 0x000002002c84369e (bci 54) 0x0000020032458130: istate->_locals = 0x00000200324581d0 0x0000020032458138: istate->_constants = 0x000002002c8ae1a8 0x0000020032458140: istate->_method = java.lang.ThreadGroup.remove(Ljava/lang/Thread;)V 0x0000020032458148: istate->_mdx = 0x0000000000000000 0x0000020032458150: istate->_stack = 0x00000200324580e0 0x0000020032458158: istate->_msg = 0x0000020000000008 0x0000020032458160: istate->_result = 0x000002002c822a98 0x0000020032458168: (istate->_result) = 0x0000020000b681f8 0x0000020032458170: (istate->_result) = 0x0000000100000003 0x0000020032458178: istate->_prev_link = 0x0000000000000000 0x0000020032458180: istate->_oop_temp = 0x0000000000000000 0x0000020032458188: istate->_stack_base = 0x0000020032458110 0x0000020032458190: istate->_stack_limit = 0x00000200324580d0 0x0000020032458198: istate->_monitor_base = 0x0000020032458120 0x00000200324581a0: istate->_self_link = 0x0000020032458120 0x00000200324581a8: frame_type = INTERPRETER_FRAME 0x00000200324581b0: next_frame = 0x0000020032458268 0x00000200324581b8: local[3] = 0x0000020000000002 0x00000200324581c0: local[2] = 0x0000020002bf0918 0x00000200324581c8: local[1] = 0x0000020002c17410 0x00000200324581d0: local[0] = 0x0000020002bf0918 0x00000200324581d8: istate->_thread = 0x00000001200a2260 0x00000200324581e0: istate->_bcp = 0x000002002c83bef4 (bci 12) 0x00000200324581e8: istate->_locals = 0x0000020032458270 0x00000200324581f0: istate->_constants = 0x000002002c8af018 0x00000200324581f8: istate->_method = java.lang.Thread.exit()V 0x0000020032458200: istate->_mdx = 0x0000000000000000 0x0000020032458208: istate->_stack = 0x00000200324581c0 0x0000020032458210: istate->_msg = 0x0000000000000008 0x0000020032458218: istate->_result = 0x000002002c843730 0x0000020032458220: (istate->_result) = 0x0000020000b681a0 0x0000020032458228: (istate->_result) = 0x0000000100000003 0x0000020032458230: istate->_prev_link = 0x0000000000000000 0x0000020032458238: istate->_oop_temp = 0x0000000000000000 0x0000020032458240: istate->_stack_base = 0x00000200324581d8 0x0000020032458248: istate->_stack_limit = 0x00000200324581c0 0x0000020032458250: istate->_monitor_base = 0x00000200324581d8 0x0000020032458258: istate->_self_link = 0x00000200324581d8 0x0000020032458260: frame_type = INTERPRETER_FRAME 0x0000020032458268: next_frame = 0x0000020032458288 0x0000020032458270: local[0] = 0x0000020002c17410 0x0000020032458278: call_wrapper = 0x0000020032458380 0x0000020032458280: frame_type = ENTRY_FRAME 0x0000020032458288: next_frame = 0x0000000000000000 --------------- P R O C E S S --------------- Java Threads: ( => current thread ) 0x00000001200a41a0 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=10779, stack(0x000002003245a000,0x00000200325da000)] =>0x00000001200a2260 JavaThread "Signal Dispatcher" daemon [_thread_in_native_trans, id=10778, stack(0x00000200322da000,0x000002003245a000)] 0x000000012007f340 JavaThread "Finalizer" daemon [_thread_blocked, id=10777, stack(0x000002003215a000,0x00000200322da000)] 0x000000012007db00 JavaThread "Reference Handler" daemon [_thread_blocked, id=10776, stack(0x0000020031fda000,0x000002003215a000)] Other Threads: 0x0000000120079600 VMThread [stack: 0x0000020031edc000,0x0000020031fda000] [id=10775] VM state:synchronizing (normal execution) VM Mutex/Monitor currently owned by a thread: ([mutex/lock_event]) [0x0000000120022d80] Heap_lock - owner thread: 0x00000001200236c0 Heap def new generation total 2368K, used 193K [0x0000020002bf0000, 0x0000020002e80000, 0x000002000b180000) eden space 2112K, 9% used [0x0000020002bf0000, 0x0000020002c206c8, 0x0000020002e00000) from space 256K, 0% used [0x0000020002e00000, 0x0000020002e00000, 0x0000020002e40000) to space 256K, 0% used [0x0000020002e40000, 0x0000020002e40000, 0x0000020002e80000) tenured generation total 5312K, used 0K [0x000002000b180000, 0x000002000b6b0000, 0x000002002c7f0000) the space 5312K, 0% used [0x000002000b180000, 0x000002000b180000, 0x000002000b180200, 0x000002000b6b0000) compacting perm gen total 5312K, used 2711K [0x000002002c7f0000, 0x000002002cd20000, 0x0000020031bf0000) the space 5312K, 51% used [0x000002002c7f0000, 0x000002002ca95f88, 0x000002002ca96000, 0x000002002cd20000) No shared spaces configured. Dynamic libraries: 11ffd6000-120000000 rw-p 11ffd6000 00:00 0 [stack] 120000000-12000c000 r-xp 00000000 08:03 48550961 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/bin/java 12001a000-12001c000 rwxp 0000a000 08:03 48550961 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/bin/java 12001c000-1200ca000 rwxp 12001c000 00:00 0 [heap] 20000000000-20000022000 r-xp 00000000 08:01 11813232 /lib/ld-2.4.90.so 20000022000-20000026000 rw-p 20000022000 00:00 0 20000026000-20000028000 ---p 20000026000 00:00 0 20000028000-2000002a000 rw-p 20000028000 00:00 0 2000002a000-20000032000 rw-s 00000000 08:01 5476810 /tmp/hsperfdata_root/10773 20000032000-20000034000 r--p 00022000 08:01 11813232 /lib/ld-2.4.90.so 20000034000-20000036000 rwxp 00024000 08:01 11813232 /lib/ld-2.4.90.so 20000036000-2000004c000 r-xp 00000000 08:01 11813137 /lib/libpthread-2.4.90.so 2000004c000-2000005c000 ---p 00016000 08:01 11813137 /lib/libpthread-2.4.90.so 2000005c000-2000005e000 r--p 00016000 08:01 11813137 /lib/libpthread-2.4.90.so 2000005e000-20000060000 rwxp 00018000 08:01 11813137 /lib/libpthread-2.4.90.so 20000060000-20000064000 rwxp 20000060000 00:00 0 20000064000-20000072000 r-xp 00000000 08:03 48593167 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/jli/libjli.so 20000072000-20000080000 ---p 0000e000 08:03 48593167 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/jli/libjli.so 20000080000-20000082000 rwxp 0000c000 08:03 48593167 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/jli/libjli.so 20000082000-20000086000 r-xp 00000000 08:01 11813234 /lib/libdl-2.4.90.so 20000086000-20000094000 ---p 00004000 08:01 11813234 /lib/libdl-2.4.90.so 20000094000-20000096000 r--p 00002000 08:01 11813234 /lib/libdl-2.4.90.so 20000096000-20000098000 rwxp 00004000 08:01 11813234 /lib/libdl-2.4.90.so 20000098000-20000204000 r-xp 00000000 08:01 11813102 /lib/libc.so.6.1 20000204000-20000214000 ---p 0016c000 08:01 11813102 /lib/libc.so.6.1 20000214000-20000218000 r--p 0016c000 08:01 11813102 /lib/libc.so.6.1 20000218000-2000021c000 rwxp 00170000 08:01 11813102 /lib/libc.so.6.1 2000021c000-20000220000 rwxp 2000021c000 00:00 0 20000220000-20000714000 r-xp 00000000 08:03 48550948 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/server/libjvm.so 20000714000-20000724000 ---p 004f4000 08:03 48550948 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/server/libjvm.so 20000724000-200007b8000 rwxp 004f4000 08:03 48550948 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/server/libjvm.so 200007b8000-200007dc000 rwxp 200007b8000 00:00 0 200007dc000-20000882000 r-xp 00000000 08:01 11813120 /lib/libm-2.4.90.so 20000882000-20000890000 ---p 000a6000 08:01 11813120 /lib/libm-2.4.90.so 20000890000-20000892000 r--p 000a4000 08:01 11813120 /lib/libm-2.4.90.so 20000892000-20000896000 rwxp 000a6000 08:01 11813120 /lib/libm-2.4.90.so 20000896000-2000089a000 r--s 00012000 08:03 48550981 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/jce.jar 2000089a000-200008a0000 r--s 0007e000 08:03 48551006 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/ext/localedata.jar 200008a0000-200008a2000 r--s 00002000 08:03 48550986 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/ext/dnsns.jar 200008a2000-200008a6000 r--s 00032000 08:03 48551010 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/ext/sunjce_provider.jar 200008a6000-200008b4000 r-xp 00000000 08:01 5064185 /usr/local/lib/libffi.so.5.0.10 200008b4000-200008c2000 ---p 0000e000 08:01 5064185 /usr/local/lib/libffi.so.5.0.10 200008c2000-200008c4000 rwxp 0000c000 08:01 5064185 /usr/local/lib/libffi.so.5.0.10 200008c4000-200008c6000 ---p 200008c4000 00:00 0 200008c6000-200008cc000 rwxp 200008c6000 00:00 0 200008cc000-20000a44000 rw-p 200008cc000 00:00 0 20000a44000-20000a50000 r-xp 00000000 08:01 11813139 /lib/librt-2.4.90.so 20000a50000-20000a5e000 ---p 0000c000 08:01 11813139 /lib/librt-2.4.90.so 20000a5e000-20000a60000 r--p 0000a000 08:01 11813139 /lib/librt-2.4.90.so 20000a60000-20000a62000 rwxp 0000c000 08:01 11813139 /lib/librt-2.4.90.so 20000a62000-20000a72000 rwxp 20000a62000 00:00 0 20000a72000-20000a80000 r-xp 00000000 08:03 48550955 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/libverify.so 20000a80000-20000a90000 ---p 0000e000 08:03 48550955 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/libverify.so 20000a90000-20000a92000 rwxp 0000e000 08:03 48550955 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/libverify.so 20000a92000-20000ac4000 r-xp 00000000 08:03 48550956 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/libjava.so 20000ac4000-20000ad2000 ---p 00032000 08:03 48550956 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/libjava.so 20000ad2000-20000ad8000 rwxp 00030000 08:03 48550956 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/libjava.so 20000ad8000-20000af0000 r-xp 00000000 08:01 11813133 /lib/libnsl-2.4.90.so 20000af0000-20000afe000 ---p 00018000 08:01 11813133 /lib/libnsl-2.4.90.so 20000afe000-20000b00000 r--p 00016000 08:01 11813133 /lib/libnsl-2.4.90.so 20000b00000-20000b02000 rwxp 00018000 08:01 11813133 /lib/libnsl-2.4.90.so 20000b02000-20000b04000 rwxp 20000b02000 00:00 0 20000b04000-20000b0e000 r-xp 00000000 08:03 48550937 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/native_threads/libhpi.so 20000b0e000-20000b1e000 ---p 0000a000 08:03 48550937 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/native_threads/libhpi.so 20000b1e000-20000b20000 rwxp 0000a000 08:03 48550937 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/native_threads/libhpi.so 20000b20000-20000b2c000 r-xp 00000000 08:01 11813235 /lib/libnss_files-2.4.90.so 20000b2c000-20000b3a000 ---p 0000c000 08:01 11813235 /lib/libnss_files-2.4.90.so 20000b3a000-20000b3c000 r--p 0000a000 08:01 11813235 /lib/libnss_files-2.4.90.so 20000b3c000-20000b3e000 rwxp 0000c000 08:01 11813235 /lib/libnss_files-2.4.90.so 20000b3e000-20000b58000 r-xp 00000000 08:03 48550962 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/libzip.so 20000b58000-20000b66000 ---p 0001a000 08:03 48550962 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/libzip.so 20000b66000-20000b68000 rwxp 00018000 08:03 48550962 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/libzip.so 20000b68000-20000b90000 rwxp 20000b68000 00:00 0 20000b90000-20002b68000 rwxp 20000b90000 00:00 0 20002b68000-20002b6a000 rwxp 20002b68000 00:00 0 20002b6a000-20002be8000 rwxp 20002b6a000 00:00 0 20002be8000-20002bec000 r--s 00038000 08:03 48550984 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/ext/sunpkcs11.jar 20002bf0000-20002e80000 rwxp 20002bf0000 00:00 0 20002e80000-2000b180000 rwxp 20002e80000 00:00 0 2000b180000-2000b6b0000 rwxp 2000b180000 00:00 0 2000b6b0000-2002c7f0000 rwxp 2000b6b0000 00:00 0 2002c7f0000-2002cd20000 rwxp 2002c7f0000 00:00 0 2002cd20000-20031bf0000 rwxp 2002cd20000 00:00 0 20031bf0000-20031bf2000 rwxp 20031bf0000 00:00 0 20031bf2000-20031c32000 rwxp 20031bf2000 00:00 0 20031c32000-20031c36000 rwxp 20031c32000 00:00 0 20031c36000-20031d3e000 rwxp 20031c36000 00:00 0 20031d3e000-20031d42000 rwxp 20031d3e000 00:00 0 20031d42000-20031d68000 rwxp 20031d42000 00:00 0 20031d68000-20031d6e000 rwxp 20031d68000 00:00 0 20031d6e000-20031e76000 rwxp 20031d6e000 00:00 0 20031e76000-20031e7a000 rwxp 20031e76000 00:00 0 20031e7a000-20031ea2000 rwxp 20031e7a000 00:00 0 20031ea2000-20031eca000 rw-p 20031ea2000 00:00 0 20031eca000-20031eda000 r--s 0036a000 08:03 48551007 /home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/charsets.jar 20031eda000-20031edc000 ---p 20031eda000 00:00 0 20031edc000-20031fda000 rw-p 20031edc000 00:00 0 20031fda000-20031fe0000 ---p 20031fda000 00:00 0 20031fe0000-2003215a000 rw-p 20031fe0000 00:00 0 2003215a000-20032160000 ---p 2003215a000 00:00 0 20032160000-200322da000 rw-p 20032160000 00:00 0 200322da000-200322e0000 ---p 200322da000 00:00 0 200322e0000-2003245a000 rw-p 200322e0000 00:00 0 2003245a000-20032460000 ---p 2003245a000 00:00 0 20032460000-200325da000 rw-p 20032460000 00:00 0 200325da000-200325dc000 ---p 200325da000 00:00 0 200325dc000-200326da000 rw-p 200325dc000 00:00 0 VM Arguments: java_command: Hello Launcher Type: SUN_STANDARD Environment Variables: PATH=/home/zheng/bin:/usr/local/sbin:/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/X11R6/bin:/usr/local/apache2/bin:/opt/mysql/bin:/usr/local/ant/bin:/opt/qt/bin:/opt/kde-3.5.9/bin:/opt/mysql/bin:/usr/local/apache2/bin:/opt/mysql/bin:/usr/local/ant/bin:/root/bin:/opt/qt/bin:/opt/kde-3.5.9/bin LD_LIBRARY_PATH=/home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha/server:/home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/lib/alpha:/home/zheng/icedtea6-1.8/openjdk-ecj/build/linux-alpha/../lib/alpha:/lib:/usr/lib SHELL=/tools/bin/bash Signal Handlers: SIGSEGV: [libjvm.so+0x488f00], sa_mask[0]=0x7ffefeff, sa_flags=0x00000042 SIGBUS: [libjvm.so+0x488f00], sa_mask[0]=0x7ffefeff, sa_flags=0x00000042 SIGFPE: [libjvm.so+0x3b13d0], sa_mask[0]=0x7ffefeff, sa_flags=0x00000042 SIGPIPE: [libjvm.so+0x3b13d0], sa_mask[0]=0x7ffefeff, sa_flags=0x00000042 SIGXFSZ: [libjvm.so+0x3b13d0], sa_mask[0]=0x7ffefeff, sa_flags=0x00000042 SIGILL: [libjvm.so+0x3b13d0], sa_mask[0]=0x7ffefeff, sa_flags=0x00000042 SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000 SIGUSR2: [libjvm.so+0x3b61a0], sa_mask[0]=0x00000000, sa_flags=0x00000042 SIGHUP: [libjvm.so+0x3b31d0], sa_mask[0]=0x7ffefeff, sa_flags=0x00000042 SIGINT: [libjvm.so+0x3b31d0], sa_mask[0]=0x7ffefeff, sa_flags=0x00000042 SIGTERM: [libjvm.so+0x3b31d0], sa_mask[0]=0x7ffefeff, sa_flags=0x00000042 SIGQUIT: [libjvm.so+0x3b31d0], sa_mask[0]=0x7ffefeff, sa_flags=0x00000042 --------------- S Y S T E M --------------- OS:Linux uname:Linux 2.6.15 #119 SMP Wed Sep 1 08:05:56 CST 2010 alpha libc:glibc 2.4.90 NPTL 2.4.90 rlimit: STACK 8192k, CORE 0k, NPROC 8192, NOFILE 1024, AS infinity load average:0.28 0.64 0.39 CPU:total 4 Memory: 8k page, physical 2060928k(18968k free), swap 2104496k(2104488k free) vm_info: OpenJDK 64-Bit Zero VM (14.0-b16) for linux-alpha JRE (1.6.0_18-b18), built on Oct 21 2010 10:38:54 by "root" with gcc 4.1.2 20091130 time: Tue Nov 9 07:18:35 2010 elapsed time: 0 seconds -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Thu Sep 9 22:25:23 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Sep 2010 05:25:23 +0000 Subject: [Bug 549] New: Error occurred during initialization of VM Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=549 Summary: Error occurred during initialization of VM Product: IcedTea Version: 6-1.8 Platform: 64-bit OS/Version: Windows Status: NEW Severity: critical Priority: P2 Component: IcedTea6 AssignedTo: unassigned at icedtea.classpath.org ReportedBy: dot618point at gmail.com Execute commands in directory 'icedtea6-1.8/openjdk-ecj/build/linux-alpha/j2sdk-image/bin/' will be prompted: Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object but commands in directory 'icedtea6-1.8/openjdk-ecj/build/linux-alpha/bin/*' will not be. Why? (Building was not finished.) -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Sep 10 01:49:50 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Sep 2010 08:49:50 +0000 Subject: [Bug 550] New: JVM fatal error - error occurred during error reporting Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=550 Summary: JVM fatal error - error occurred during error reporting Product: IcedTea Version: unspecified Platform: x86_64 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea6 AssignedTo: unassigned at icedtea.classpath.org ReportedBy: karl.kappel at segmueller.de JVM crashes randomly and I have no idea how to solve this problem. See log below. I hope this is the correct place to report it. # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x0000000000000038, pid=8149, tid=140567006427408 # # JRE version: 6.0_18-b18 # Java VM: OpenJDK 64-Bit Server VM (14.0-b16 mixed mode linux-amd64 ) # Derivative: IcedTea6 1.8.1 # Distribution: Custom build (Fri Aug 13 08:29:05 UTC 2010) # Problematic frame: # C 0x0000000000000038 # # If you would like to submit a bug report, please include # instructions how to reproduce the bug and visit: # http://icedtea.classpath.org/bugzilla # --------------- T H R E A D --------------- Current thread (0x00007fd840007000): JavaThread "RMI TCP Connection(897)-127.0.0.2" daemon [_thread_in_vm, id=14835, stack(0x00007fd84e6c3000,0x00007fd84e7c4000)] siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x0000000000000038 Registers: RAX=0x0000000000004009, RBX=0x00007fd84ebc7910, RCX=0x0000000000000038, RDX=0x0000000000000202 RSP=0x00007fd84e7c1588, RBP=0x0000000000000000, RSI=0x00007fd84ebc79e0, RDI=0x00007fd84ebc7910 R8 =0x00007fd84e7c1650, R9 =0x00007fd84ebc7910, R10=0x00007fd8bd873040, R11=0x0000000000000003 R12=0x00007fd84e7c1650, R13=0x00007fd84ebc7910, R14=0x00007fd8bd873040, R15=0x0000000000000003 RIP=0x0000000000000038, EFL=0x0000000000010003, CSGSFS=0x0000000000000033, ERR=0x0000000000000014 TRAPNO=0x000000000000000e Top of Stack: (sp=0x00007fd84e7c1588) 0x00007fd84e7c1588: 00007fd8bd43f8b4 00007fd84ebc79e0 0x00007fd84e7c1598: 00007fd84ebc7910 00007fd84e7c1650 0x00007fd84e7c15a8: 0000000000000000 00007fd84ebc7910 0x00007fd84e7c15b8: 00007fd8bd43fdcc 0000000000000000 0x00007fd84e7c15c8: 0000000000000000 00007fd84e7c1650 0x00007fd84e7c15d8: 0000000000101000 00007fd84e7c1648 0x00007fd84e7c15e8: 00007fd8bc589fa0 00007fd85488c800 0x00007fd84e7c15f8: 00007fd84eac7000 00007fd84e7c1630 0x00007fd84e7c1608: 00007fd854346c00 00007fd84e7c16c0 0x00007fd84e7c1618: 00007fd84e7c1650 00007fd85488c800 0x00007fd84e7c1628: 0000000000000000 0000000000100000 0x00007fd84e7c1638: 00007fd8bc58923b 00007fd84e7c1670 0x00007fd84e7c1648: 00007fd84ebc7910 0000000000000000 0x00007fd84e7c1658: 0000000000000001 0000000000000000 0x00007fd84e7c1668: 0000000000000000 0000000000100000 0x00007fd84e7c1678: 0000000000000000 0000000000000000 0x00007fd84e7c1688: a5c8cb58bf95e949 00007fd84e7c16c0 0x00007fd84e7c1698: 00007fd840007000 00000000006137a0 0x00007fd84e7c16a8: 00007fd84e7c17a8 00007fd85488c800 0x00007fd84e7c16b8: 0000000000000000 00007fd84e7c1730 0x00007fd84e7c16c8: 00007fd8bc44c1e6 00007fd84e7c16d0 0x00007fd84e7c16d8: 0000000000000000 00007fd840007000 0x00007fd84e7c16e8: 00007fd85c90f3a8 00007fd840007000 0x00007fd84e7c16f8: 00007fd85c90d158 0000000000000000 0x00007fd84e7c1708: 00007fd85c7dc010 00007fd840007000 0x00007fd84e7c1718: 00007fd85c7dc010 00007fd84e7c17a8 0x00007fd84e7c1728: 00007fd840007000 00007fd84e7c1788 0x00007fd84e7c1738: 00007fd8b83a2f50 00007fd84e7c1730 0x00007fd84e7c1748: 00007fd84e7c1748 0000000000000000 0x00007fd84e7c1758: 00007fd84e7c17a8 00007fd85c84f870 0x00007fd84e7c1768: 0000000000000000 00007fd85c7dc010 0x00007fd84e7c1778: 0000000000000000 00007fd84e7c17a8 Instructions: (pc=0x0000000000000038) 0x0000000000000028: [error occurred during error reporting (printing registers, top of stack, instructions near pc), id 0xb] Stack: [0x00007fd84e6c3000,0x00007fd84e7c4000], sp=0x00007fd84e7c1588, free space=1017k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) C 0x0000000000000038 [error occurred during error reporting (printing native stack), id 0xb] Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) j java.lang.Thread.start0()V+0 j java.lang.Thread.start()V+24 j de.mendelson.util.d.a(Ljava/lang/String;Ljava/io/PrintStream;Ljava/io/PrintStream;)I+83 j de.mendelson.comm.as2.message.i.a(Lde/mendelson/comm/as2/partner/Partner;Lde/mendelson/comm/as2/partner/Partner;Lde/mendelson/comm/as2/message/AS2MessageInfo;)V+268 j de.mendelson.comm.as2.server.AS2ServerRemoteImpl.a(Lde/mendelson/comm/as2/clientserver/serialize/CommandObjectIncomingMessage;)Lde/mendelson/comm/as2/clientserver/serialize/CommandObjectIncomingMessage;+1321 j de.mendelson.comm.as2.server.AS2ServerRemoteImpl.a(Ljava/lang/Object;)Ljava/lang/Object;+137 j de.mendelson.comm.as2.server.AS2ServerRemoteImpl.execute(Ljava/lang/Object;)Ljava/lang/Object;+2 j sun.reflect.GeneratedMethodAccessor18.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+40 j sun.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+6 j java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+161 j sun.rmi.server.UnicastServerRef.dispatch(Ljava/rmi/Remote;Ljava/rmi/server/RemoteCall;)V+242 j sun.rmi.transport.Transport$1.run()Ljava/lang/Object;+23 v ~StubRoutines::call_stub j java.security.AccessController.doPrivileged(Ljava/security/PrivilegedExceptionAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;+0 j sun.rmi.transport.Transport.serviceCall(Ljava/rmi/server/RemoteCall;)Z+163 j sun.rmi.transport.tcp.TCPTransport.handleMessages(Lsun/rmi/transport/Connection;Z)V+185 j sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0()V+685 j sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run()V+50 j java.util.concurrent.ThreadPoolExecutor.runWorker(Ljava/util/concurrent/ThreadPoolExecutor$Worker;)V+46 j java.util.concurrent.ThreadPoolExecutor$Worker.run()V+5 j java.lang.Thread.run()V+11 v ~StubRoutines::call_stub --------------- P R O C E S S --------------- Java Threads: ( => current thread ) 0x00007fd85488b800 JavaThread "Thread-2281" daemon [_thread_blocked, id=16392, stack(0x00007fd84ebc8000,0x00007fd84ecc9000)] 0x00007fd85488b000 JavaThread "process reaper" daemon [_thread_blocked, id=16384, stack(0x00007fd85963e000,0x00007fd85973f000)] 0x00007fd840062800 JavaThread "process reaper" daemon [_thread_blocked, id=16382, stack(0x00007fd84f2cf000,0x00007fd84f3d0000)] 0x00007fd854345000 JavaThread "RMI TCP Connection(902)-127.0.0.1" daemon [_thread_in_native, id=16308, stack(0x00007fd84e5c2000,0x00007fd84e6c3000)] 0x00007fd840549000 JavaThread "RMI TCP Connection(898)-127.0.0.2" daemon [_thread_in_Java, id=15169, stack(0x00007fd84e9c6000,0x00007fd84eac7000)] =>0x00007fd840007000 JavaThread "RMI TCP Connection(897)-127.0.0.2" daemon [_thread_in_vm, id=14835, stack(0x00007fd84e6c3000,0x00007fd84e7c4000)] 0x00007fd84084d000 JavaThread "RMI TCP Connection(901)-127.0.0.2" daemon [_thread_in_native, id=14834, stack(0x00007fd84ecc9000,0x00007fd84edca000)] 0x00007fd8408b3800 JavaThread "RMI TCP Connection(887)-127.0.0.2" daemon [_thread_in_native, id=14803, stack(0x00007fd84edca000,0x00007fd84eecb000)] 0x00007fd8402f4800 JavaThread "RMI TCP Connection(894)-127.0.0.1" daemon [_thread_in_native, id=14694, stack(0x00007fd84e1be000,0x00007fd84e2bf000)] 0x00007fd840068000 JavaThread "RMI TCP Connection(900)-127.0.0.2" daemon [_thread_blocked, id=14661, stack(0x00007fd84e2bf000,0x00007fd84e3c0000)] 0x00007fd8402f5800 JavaThread "RMI RenewClean-[127.0.0.2:50697]" daemon [_thread_blocked, id=13323, stack(0x00007fd84e4c1000,0x00007fd84e5c2000)] 0x00007fd854868000 JavaThread "tcpReader" [_thread_in_native, id=8537, stack(0x00007fd84eecb000,0x00007fd84efcc000)] 0x0000000000ffd000 JavaThread "(org.objectweb.joram.client.jms.QueueConnection at 957a0039,proxyId=#0.0.1027,key=57)" [_thread_in_native, id=8536, stack(0x00007fd84efcc000,0x00007fd84f0cd000)] 0x00007fd8542c9800 JavaThread "tcpWriter" [_thread_blocked, id=8535, stack(0x00007fd84f1ce000,0x00007fd84f2cf000)] 0x0000000000ffa000 JavaThread "Timer-12" [_thread_blocked, id=8534, stack(0x00007fd84f6d3000,0x00007fd84f7d4000)] 0x0000000000a97800 JavaThread "RMI Scheduler(0)" daemon [_thread_blocked, id=8251, stack(0x00007fd84f3d0000,0x00007fd84f4d1000)] 0x00007fd85404a000 JavaThread "DestroyJavaVM" [_thread_blocked, id=8150, stack(0x00007fd8bd74b000,0x00007fd8bd84c000)] 0x00007fd854042000 JavaThread "pool-13-thread-1" [_thread_blocked, id=8249, stack(0x00007fd84f7d4000,0x00007fd84f8d5000)] 0x00007fd854049800 JavaThread "pool-12-thread-1" [_thread_blocked, id=8248, stack(0x00007fd84f8d5000,0x00007fd84f9d6000)] 0x00007fd854048800 JavaThread "pool-11-thread-1" [_thread_blocked, id=8247, stack(0x00007fd84f9d6000,0x00007fd84fad7000)] 0x00007fd8549ad800 JavaThread "SocketAcceptor-0" [_thread_in_native, id=8246, stack(0x00007fd84fad7000,0x00007fd84fbd8000)] 0x00007fd85404d800 JavaThread "PooledByteBufferExpirer-0" daemon [_thread_blocked, id=8245, stack(0x00007fd84fbd8000,0x00007fd84fcd9000)] 0x00007fd854ae6000 JavaThread "CEM Certificate Controller" [_thread_blocked, id=8244, stack(0x00007fd84fcd9000,0x00007fd84fdda000)] 0x00007fd854ae4000 JavaThread "tcpReader" [_thread_in_native, id=8243, stack(0x00007fd84fdda000,0x00007fd84fedb000)] 0x00007fd854ae2800 JavaThread "Cert expire check" [_thread_blocked, id=8242, stack(0x00007fd84fedb000,0x00007fd84ffdc000)] 0x0000000000ada800 JavaThread "(org.objectweb.joram.client.jms.QueueConnection at 957a0038,proxyId=#0.0.1027,key=56)" [_thread_in_native, id=8241, stack(0x00007fd84ffdc000,0x00007fd8500dd000)] 0x0000000000f27800 JavaThread "tcpWriter" [_thread_blocked, id=8240, stack(0x00007fd8500dd000,0x00007fd8501de000)] 0x00007fd854ae0000 JavaThread "Contol auto as2 statistic delete" [_thread_blocked, id=8239, stack(0x00007fd8501df000,0x00007fd8502e0000)] 0x00007fd854ade800 JavaThread "Contol auto as2 message delete" [_thread_blocked, id=8238, stack(0x00007fd8502e0000,0x00007fd8503e1000)] 0x0000000000f25800 JavaThread "tcpReader" [_thread_in_native, id=8237, stack(0x00007fd8503e1000,0x00007fd8504e2000)] 0x0000000000f23800 JavaThread "(org.objectweb.joram.client.jms.QueueConnection at 957a0037,proxyId=#0.0.1027,key=55)" [_thread_in_native, id=8236, stack(0x00007fd8504e3000,0x00007fd8505e4000)] 0x0000000000f22000 JavaThread "tcpWriter" [_thread_blocked, id=8235, stack(0x00007fd8505e5000,0x00007fd8506e6000)] 0x00007fd854aec000 JavaThread "Check MDN receipt" [_thread_blocked, id=8234, stack(0x00007fd8506e6000,0x00007fd8507e7000)] 0x0000000000f1d800 JavaThread "tcpReader" [_thread_in_native, id=8233, stack(0x00007fd8507e7000,0x00007fd8508e8000)] 0x0000000000f1b800 JavaThread "tcpWriter" [_thread_blocked, id=8232, stack(0x00007fd8508e8000,0x00007fd8509e9000)] 0x00007fd854aea800 JavaThread "RMI TCP Accept-2002" daemon [_thread_in_native, id=8231, stack(0x00007fd8509e9000,0x00007fd850aea000)] 0x0000000000f1a800 JavaThread "(org.objectweb.joram.client.jms.QueueConnection at 957a0036,proxyId=#0.0.1027,key=54)" [_thread_in_native, id=8230, stack(0x00007fd850aea000,0x00007fd850beb000)] 0x00007fd854a64000 JavaThread "GC Daemon" daemon [_thread_blocked, id=8229, stack(0x00007fd850beb000,0x00007fd850cec000)] 0x00007fd854a8a000 JavaThread "RMI Reaper" [_thread_blocked, id=8228, stack(0x00007fd850cec000,0x00007fd850ded000)] 0x0000000000c79800 JavaThread "tcpReader" [_thread_in_native, id=8227, stack(0x00007fd850ded000,0x00007fd850eee000)] 0x0000000000c77800 JavaThread "(org.objectweb.joram.client.jms.QueueConnection at 957a0035,proxyId=#0.0.1027,key=53)" [_thread_in_native, id=8226, stack(0x00007fd850eee000,0x00007fd850fef000)] 0x0000000000a58000 JavaThread "tcpWriter" [_thread_blocked, id=8225, stack(0x00007fd850fef000,0x00007fd8510f0000)] 0x00007fd854a94000 JavaThread "RMI TCP Accept-0" daemon [_thread_in_native, id=8224, stack(0x00007fd8510f0000,0x00007fd8511f1000)] 0x0000000000a55800 JavaThread "Timer-11" [_thread_blocked, id=8223, stack(0x00007fd8511f1000,0x00007fd8512f2000)] 0x0000000000a53800 JavaThread "Timer-10" [_thread_blocked, id=8222, stack(0x00007fd8512f2000,0x00007fd8513f3000)] 0x00000000008bc800 JavaThread "tcpReader" [_thread_in_native, id=8221, stack(0x00007fd8513f3000,0x00007fd8514f4000)] 0x00000000008bb000 JavaThread "(org.objectweb.joram.client.jms.QueueConnection at 957a0034,proxyId=#0.0.1027,key=52)" [_thread_in_native, id=8220, stack(0x00007fd8514f4000,0x00007fd8515f5000)] 0x00007fd854a93800 JavaThread "HSQLDB Connection @c4ce427" [_thread_in_native, id=8219, stack(0x00007fd8515f5000,0x00007fd8516f6000)] 0x00000000006a0800 JavaThread "tcpWriter" [_thread_blocked, id=8218, stack(0x00007fd8516f6000,0x00007fd8517f7000)] 0x0000000000a6f000 JavaThread "Timer-9" [_thread_blocked, id=8217, stack(0x00007fd8517f7000,0x00007fd8518f8000)] 0x000000000066e800 JavaThread "Timer-8" [_thread_blocked, id=8216, stack(0x00007fd8518f8000,0x00007fd8519f9000)] 0x00007fd854a95000 JavaThread "pool-5-thread-1" [_thread_blocked, id=8215, stack(0x00007fd8519f9000,0x00007fd851afa000)] 0x0000000000a2c000 JavaThread "Timer-7" [_thread_blocked, id=8214, stack(0x00007fd851bfb000,0x00007fd851cfc000)] 0x00007fd854a96800 JavaThread "pool-4-thread-1" [_thread_blocked, id=8213, stack(0x00007fd851dfe000,0x00007fd851eff000)] 0x00007fd854a6e000 JavaThread "pool-3-thread-1" [_thread_blocked, id=8212, stack(0x00007fd851cfc000,0x00007fd851dfd000)] 0x00007fd8545c9000 JavaThread "pool-2-thread-1" [_thread_blocked, id=8211, stack(0x00007fd851eff000,0x00007fd852000000)] 0x00007fd8545cd800 JavaThread "pool-1-thread-1" [_thread_blocked, id=8210, stack(0x00007fd851afa000,0x00007fd851bfb000)] 0x00007fd854277800 JavaThread "Engine#0" [_thread_blocked, id=8201, stack(0x00007fd858031000,0x00007fd858132000)] 0x00007fd854276000 JavaThread "JndiServer.Monitor#2" daemon [_thread_in_native, id=8200, stack(0x00007fd858132000,0x00007fd858233000)] 0x00007fd854274800 JavaThread "JndiServer.Monitor#1" daemon [_thread_in_native, id=8199, stack(0x00007fd858233000,0x00007fd858334000)] 0x00007fd854bef800 JavaThread "JndiServer.Monitor#0" daemon [_thread_in_native, id=8198, stack(0x00007fd858334000,0x00007fd858435000)] 0x00007fd854bee800 JavaThread "TcpConnectionListener" [_thread_in_native, id=8197, stack(0x00007fd858435000,0x00007fd858536000)] 0x00007fd854b81000 JavaThread "Timer-5" [_thread_blocked, id=8196, stack(0x00007fd858536000,0x00007fd858637000)] 0x0000000000e79800 JavaThread "Timer-4" daemon [_thread_blocked, id=8195, stack(0x00007fd858637000,0x00007fd858738000)] 0x0000000000e77800 JavaThread "Timer-3" daemon [_thread_blocked, id=8194, stack(0x00007fd858738000,0x00007fd858839000)] 0x00007fd854922000 JavaThread "Timer-2" daemon [_thread_blocked, id=8193, stack(0x00007fd8588c1000,0x00007fd8589c2000)] 0x00007fd854b08000 JavaThread "btpool0-9 - Acceptor0 SelectChannelConnector at 0.0.0.0:8080" [_thread_in_native, id=8180, stack(0x00007fd858a32000,0x00007fd858b33000)] 0x00007fd854b6e000 JavaThread "btpool0-8" [_thread_in_native, id=8179, stack(0x00007fd858b33000,0x00007fd858c34000)] 0x0000000000832000 JavaThread "btpool0-7 - Acceptor1 SelectChannelConnector at 0.0.0.0:8080" [_thread_in_native, id=8178, stack(0x00007fd858c34000,0x00007fd858d35000)] 0x0000000000830000 JavaThread "btpool0-6" [_thread_blocked, id=8177, stack(0x00007fd858d35000,0x00007fd858e36000)] 0x0000000000837800 JavaThread "btpool0-5" [_thread_in_native, id=8176, stack(0x00007fd858e36000,0x00007fd858f37000)] 0x0000000000837000 JavaThread "btpool0-4" [_thread_in_native, id=8175, stack(0x00007fd858f37000,0x00007fd859038000)] 0x0000000000af8800 JavaThread "btpool0-3" [_thread_in_native, id=8174, stack(0x00007fd859038000,0x00007fd859139000)] 0x0000000000986000 JavaThread "btpool0-2" [_thread_blocked, id=8173, stack(0x00007fd859139000,0x00007fd85923a000)] 0x000000000079c800 JavaThread "btpool0-1" [_thread_blocked, id=8172, stack(0x00007fd85923a000,0x00007fd85933b000)] 0x0000000000967800 JavaThread "btpool0-0" [_thread_blocked, id=8171, stack(0x00007fd85933b000,0x00007fd85943c000)] 0x0000000000c3f000 JavaThread "Timer-1" daemon [_thread_blocked, id=8170, stack(0x00007fd85943c000,0x00007fd85953d000)] 0x00007fd8545b5000 JavaThread "HSQLDB Connection @7a7c3885" [_thread_in_native, id=8169, stack(0x00007fd85953d000,0x00007fd85963e000)] 0x000000000091d000 JavaThread "HSQLDB Timer @3f3f210f" daemon [_thread_blocked, id=8163, stack(0x00007fd859950000,0x00007fd859a51000)] 0x000000000091b800 JavaThread "HSQLDB Server @7ec5495e" [_thread_in_native, id=8162, stack(0x00007fd859a51000,0x00007fd859b52000)] 0x00007fd85422f000 JavaThread "Timer-0" daemon [_thread_blocked, id=8161, stack(0x00007fd85b2e5000,0x00007fd85b3e6000)] 0x00007fd854026800 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=8159, stack(0x00007fd85b709000,0x00007fd85b80a000)] 0x00007fd854023800 JavaThread "CompilerThread1" daemon [_thread_blocked, id=8158, stack(0x00007fd85b80a000,0x00007fd85b90b000)] 0x00007fd854021800 JavaThread "CompilerThread0" daemon [_thread_blocked, id=8157, stack(0x00007fd85b90b000,0x00007fd85ba0c000)] 0x00007fd85401f800 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=8156, stack(0x00007fd85ba0c000,0x00007fd85bb0d000)] 0x0000000000680000 JavaThread "Finalizer" daemon [_thread_blocked, id=8155, stack(0x00007fd85bb4d000,0x00007fd85bc4e000)] 0x000000000067e000 JavaThread "Reference Handler" daemon [_thread_blocked, id=8154, stack(0x00007fd85bc4e000,0x00007fd85bd4f000)] Other Threads: 0x0000000000679000 VMThread [stack: 0x00007fd85bd4f000,0x00007fd85be50000] [id=8153] 0x00007fd854029800 WatcherThread [stack: 0x00007fd85b608000,0x00007fd85b709000] [id=8160] VM state:not at safepoint (normal execution) VM Mutex/Monitor currently owned by a thread: ([mutex/lock_event]) [0x00000000006137a0] Threads_lock - owner thread: 0x00007fd840007000 Heap PSYoungGen total 217472K, used 81989K [0x00007fd89d240000, 0x00007fd8ad060000, 0x00007fd8b8390000) eden space 215936K, 37% used [0x00007fd89d240000,0x00007fd8a20dda00,0x00007fd8aa520000) from space 1536K, 96% used [0x00007fd8ac490000,0x00007fd8ac603a10,0x00007fd8ac610000) to space 6720K, 0% used [0x00007fd8ac9d0000,0x00007fd8ac9d0000,0x00007fd8ad060000) PSOldGen total 124736K, used 88975K [0x00007fd866f90000, 0x00007fd86e960000, 0x00007fd89d240000) object space 124736K, 71% used [0x00007fd866f90000,0x00007fd86c673ff0,0x00007fd86e960000) PSPermGen total 30208K, used 29132K [0x00007fd85c790000, 0x00007fd85e510000, 0x00007fd866f90000) object space 30208K, 96% used [0x00007fd85c790000,0x00007fd85e403340,0x00007fd85e510000) Dynamic libraries: 00400000-00409000 r-xp 00000000 08:02 667789 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/bin/java 00608000-00609000 r--p 00008000 08:02 667789 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/bin/java 00609000-0060a000 rw-p 00009000 08:02 667789 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/bin/java 0060a000-01ccf000 rw-p 00000000 00:00 0 [heap] 7fd840000000-7fd841817000 rw-p 00000000 00:00 0 7fd841817000-7fd844000000 ---p 00000000 00:00 0 7fd848000000-7fd849944000 rw-p 00000000 00:00 0 7fd849944000-7fd84c000000 ---p 00000000 00:00 0 7fd84e1be000-7fd84e1c1000 ---p 00000000 00:00 0 7fd84e1c1000-7fd84e2bf000 rw-p 00000000 00:00 0 7fd84e2bf000-7fd84e2c2000 ---p 00000000 00:00 0 7fd84e2c2000-7fd84e3c0000 rw-p 00000000 00:00 0 7fd84e3c0000-7fd84e3c3000 rwxp 00000000 00:00 0 7fd84e3c3000-7fd84e4c1000 rw-p 00000000 00:00 0 7fd84e4c1000-7fd84e4c4000 ---p 00000000 00:00 0 7fd84e4c4000-7fd84e5c2000 rw-p 00000000 00:00 0 7fd84e5c2000-7fd84e5c5000 ---p 00000000 00:00 0 7fd84e5c5000-7fd84e6c3000 rw-p 00000000 00:00 0 7fd84e6c3000-7fd84e6c6000 ---p 00000000 00:00 0 7fd84e6c6000-7fd84e7c4000 rw-p 00000000 00:00 0 7fd84e7c4000-7fd84e7c7000 rwxp 00000000 00:00 0 7fd84e7c7000-7fd84e8c5000 rw-p 00000000 00:00 0 7fd84e8c5000-7fd84e8c8000 rwxp 00000000 00:00 0 7fd84e8c8000-7fd84e9c6000 rw-p 00000000 00:00 0 7fd84e9c6000-7fd84e9c9000 ---p 00000000 00:00 0 7fd84e9c9000-7fd84eac7000 rw-p 00000000 00:00 0 7fd84eac7000-7fd84eaca000 rwxp 00000000 00:00 0 7fd84eaca000-7fd84ebc8000 rw-p 00000000 00:00 0 7fd84ebc8000-7fd84ebcb000 rwxp 00000000 00:00 0 7fd84ebcb000-7fd84ecc9000 rw-p 00000000 00:00 0 7fd84ecc9000-7fd84eccc000 ---p 00000000 00:00 0 7fd84eccc000-7fd84edca000 rw-p 00000000 00:00 0 7fd84edca000-7fd84edcd000 ---p 00000000 00:00 0 7fd84edcd000-7fd84eecb000 rw-p 00000000 00:00 0 7fd84eecb000-7fd84eece000 ---p 00000000 00:00 0 7fd84eece000-7fd84efcc000 rw-p 00000000 00:00 0 7fd84efcc000-7fd84efcf000 ---p 00000000 00:00 0 7fd84efcf000-7fd84f0cd000 rw-p 00000000 00:00 0 7fd84f0cd000-7fd84f0d0000 rwxp 00000000 00:00 0 7fd84f0d0000-7fd84f1ce000 rw-p 00000000 00:00 0 7fd84f1ce000-7fd84f1d1000 ---p 00000000 00:00 0 7fd84f1d1000-7fd84f2cf000 rw-p 00000000 00:00 0 7fd84f2cf000-7fd84f2d2000 rwxp 00000000 00:00 0 7fd84f2d2000-7fd84f3d0000 rw-p 00000000 00:00 0 7fd84f3d0000-7fd84f3d3000 ---p 00000000 00:00 0 7fd84f3d3000-7fd84f4d1000 rw-p 00000000 00:00 0 7fd84f4d1000-7fd84f4d2000 r-xp 00000000 08:02 668085 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/librmi.so 7fd84f4d2000-7fd84f6d1000 ---p 00001000 08:02 668085 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/librmi.so 7fd84f6d1000-7fd84f6d2000 r--p 00000000 08:02 668085 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/librmi.so 7fd84f6d2000-7fd84f6d3000 rw-p 00001000 08:02 668085 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/librmi.so 7fd84f6d3000-7fd84f6d6000 ---p 00000000 00:00 0 7fd84f6d6000-7fd84f7d4000 rw-p 00000000 00:00 0 7fd84f7d4000-7fd84f7d7000 ---p 00000000 00:00 0 7fd84f7d7000-7fd84f8d5000 rw-p 00000000 00:00 0 7fd84f8d5000-7fd84f8d8000 ---p 00000000 00:00 0 7fd84f8d8000-7fd84f9d6000 rw-p 00000000 00:00 0 7fd84f9d6000-7fd84f9d9000 ---p 00000000 00:00 0 7fd84f9d9000-7fd84fad7000 rw-p 00000000 00:00 0 7fd84fad7000-7fd84fada000 ---p 00000000 00:00 0 7fd84fada000-7fd84fbd8000 rw-p 00000000 00:00 0 7fd84fbd8000-7fd84fbdb000 ---p 00000000 00:00 0 7fd84fbdb000-7fd84fcd9000 rw-p 00000000 00:00 0 7fd84fcd9000-7fd84fcdc000 ---p 00000000 00:00 0 7fd84fcdc000-7fd84fdda000 rw-p 00000000 00:00 0 7fd84fdda000-7fd84fddd000 ---p 00000000 00:00 0 7fd84fddd000-7fd84fedb000 rw-p 00000000 00:00 0 7fd84fedb000-7fd84fede000 ---p 00000000 00:00 0 7fd84fede000-7fd84ffdc000 rw-p 00000000 00:00 0 7fd84ffdc000-7fd84ffdf000 ---p 00000000 00:00 0 7fd84ffdf000-7fd8500dd000 rw-p 00000000 00:00 0 7fd8500dd000-7fd8500e0000 ---p 00000000 00:00 0 7fd8500e0000-7fd8501de000 rw-p 00000000 00:00 0 7fd8501df000-7fd8501e2000 ---p 00000000 00:00 0 7fd8501e2000-7fd8502e0000 rw-p 00000000 00:00 0 7fd8502e0000-7fd8502e3000 ---p 00000000 00:00 0 7fd8502e3000-7fd8503e1000 rw-p 00000000 00:00 0 7fd8503e1000-7fd8503e4000 ---p 00000000 00:00 0 7fd8503e4000-7fd8504e2000 rw-p 00000000 00:00 0 7fd8504e3000-7fd8504e6000 ---p 00000000 00:00 0 7fd8504e6000-7fd8505e4000 rw-p 00000000 00:00 0 7fd8505e5000-7fd8505e8000 ---p 00000000 00:00 0 7fd8505e8000-7fd8506e6000 rw-p 00000000 00:00 0 7fd8506e6000-7fd8506e9000 ---p 00000000 00:00 0 7fd8506e9000-7fd8507e7000 rw-p 00000000 00:00 0 7fd8507e7000-7fd8507ea000 ---p 00000000 00:00 0 7fd8507ea000-7fd8508e8000 rw-p 00000000 00:00 0 7fd8508e8000-7fd8508eb000 ---p 00000000 00:00 0 7fd8508eb000-7fd8509e9000 rw-p 00000000 00:00 0 7fd8509e9000-7fd8509ec000 ---p 00000000 00:00 0 7fd8509ec000-7fd850aea000 rw-p 00000000 00:00 0 7fd850aea000-7fd850aed000 ---p 00000000 00:00 0 7fd850aed000-7fd850beb000 rw-p 00000000 00:00 0 7fd850beb000-7fd850bee000 ---p 00000000 00:00 0 7fd850bee000-7fd850cec000 rw-p 00000000 00:00 0 7fd850cec000-7fd850cef000 ---p 00000000 00:00 0 7fd850cef000-7fd850ded000 rw-p 00000000 00:00 0 7fd850ded000-7fd850df0000 ---p 00000000 00:00 0 7fd850df0000-7fd850eee000 rw-p 00000000 00:00 0 7fd850eee000-7fd850ef1000 ---p 00000000 00:00 0 7fd850ef1000-7fd850fef000 rw-p 00000000 00:00 0 7fd850fef000-7fd850ff2000 ---p 00000000 00:00 0 7fd850ff2000-7fd8510f0000 rw-p 00000000 00:00 0 7fd8510f0000-7fd8510f3000 ---p 00000000 00:00 0 7fd8510f3000-7fd8511f1000 rw-p 00000000 00:00 0 7fd8511f1000-7fd8511f4000 ---p 00000000 00:00 0 7fd8511f4000-7fd8512f2000 rw-p 00000000 00:00 0 7fd8512f2000-7fd8512f5000 ---p 00000000 00:00 0 7fd8512f5000-7fd8513f3000 rw-p 00000000 00:00 0 7fd8513f3000-7fd8513f6000 ---p 00000000 00:00 0 7fd8513f6000-7fd8514f4000 rw-p 00000000 00:00 0 7fd8514f4000-7fd8514f7000 ---p 00000000 00:00 0 7fd8514f7000-7fd8515f5000 rw-p 00000000 00:00 0 7fd8515f5000-7fd8515f8000 ---p 00000000 00:00 0 7fd8515f8000-7fd8516f6000 rw-p 00000000 00:00 0 7fd8516f6000-7fd8516f9000 ---p 00000000 00:00 0 7fd8516f9000-7fd8517f7000 rw-p 00000000 00:00 0 7fd8517f7000-7fd8517fa000 ---p 00000000 00:00 0 7fd8517fa000-7fd8518f8000 rw-p 00000000 00:00 0 7fd8518f8000-7fd8518fb000 ---p 00000000 00:00 0 7fd8518fb000-7fd8519f9000 rw-p 00000000 00:00 0 7fd8519f9000-7fd8519fc000 ---p 00000000 00:00 0 7fd8519fc000-7fd851afa000 rw-p 00000000 00:00 0 7fd851afa000-7fd851afd000 ---p 00000000 00:00 0 7fd851afd000-7fd851bfb000 rw-p 00000000 00:00 0 7fd851bfb000-7fd851bfe000 ---p 00000000 00:00 0 7fd851bfe000-7fd851cfc000 rw-p 00000000 00:00 0 7fd851cfc000-7fd851cff000 ---p 00000000 00:00 0 7fd851cff000-7fd851dfd000 rw-p 00000000 00:00 0 7fd851dfe000-7fd851e01000 ---p 00000000 00:00 0 7fd851e01000-7fd851eff000 rw-p 00000000 00:00 0 7fd851eff000-7fd851f02000 ---p 00000000 00:00 0 7fd851f02000-7fd852000000 rw-p 00000000 00:00 0 7fd852000000-7fd854000000 rw-s 00000000 08:02 266573 /opt/as2/AS2_DB.data 7fd854000000-7fd85647f000 rw-p 00000000 00:00 0 7fd85647f000-7fd858000000 ---p 00000000 00:00 0 7fd858031000-7fd858034000 ---p 00000000 00:00 0 7fd858034000-7fd858132000 rw-p 00000000 00:00 0 7fd858132000-7fd858135000 ---p 00000000 00:00 0 7fd858135000-7fd858233000 rw-p 00000000 00:00 0 7fd858233000-7fd858236000 ---p 00000000 00:00 0 7fd858236000-7fd858334000 rw-p 00000000 00:00 0 7fd858334000-7fd858337000 ---p 00000000 00:00 0 7fd858337000-7fd858435000 rw-p 00000000 00:00 0 7fd858435000-7fd858438000 ---p 00000000 00:00 0 7fd858438000-7fd858536000 rw-p 00000000 00:00 0 7fd858536000-7fd858539000 ---p 00000000 00:00 0 7fd858539000-7fd858637000 rw-p 00000000 00:00 0 7fd858637000-7fd85863a000 ---p 00000000 00:00 0 7fd85863a000-7fd858738000 rw-p 00000000 00:00 0 7fd858738000-7fd85873b000 ---p 00000000 00:00 0 7fd85873b000-7fd858839000 rw-p 00000000 00:00 0 7fd858839000-7fd85884e000 r--s 000de000 08:02 666005 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/as2.jar 7fd85884e000-7fd858856000 r--s 00052000 08:02 666243 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/jcalendar-looks-2.0.1.jar 7fd858856000-7fd85885f000 r--s 000a6000 08:02 666161 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/hsqldb.jar 7fd85885f000-7fd858865000 r--s 00032000 08:02 666221 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/jaxen-1.1.1.jar 7fd858865000-7fd858868000 r--s 00018000 08:02 666094 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/commons-io-1.4.jar 7fd858868000-7fd85886d000 r--s 00035000 08:02 666068 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/bcmail-jdk16-145.jar 7fd85886d000-7fd858874000 r--s 0006a000 08:02 666215 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/javamail-1.4.3.jar 7fd858874000-7fd858885000 r--s 0014c000 08:02 666245 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/jfreechart-1.0.13.jar 7fd858885000-7fd8588a9000 r--s 00180000 08:02 666078 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/bcprov-jdk16-145.jar 7fd8588a9000-7fd8588af000 r--s 00046000 08:02 666258 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/jfreechart_jcommon-1.0.16.jar 7fd8588af000-7fd8588b2000 r--s 00025000 08:02 666087 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/commons-dbcp-1.4.jar 7fd8588b2000-7fd8588b5000 r--s 00015000 08:02 666098 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/commons-pool-1.5.4.jar 7fd8588b5000-7fd8588c1000 r--s 00065000 08:02 666476 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/l2fprod-common-all.jar 7fd8588c1000-7fd8588c4000 ---p 00000000 00:00 0 7fd8588c4000-7fd8589c2000 rw-p 00000000 00:00 0 7fd8589c2000-7fd8589d7000 r--s 000de000 08:02 665182 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/as2.jar 7fd8589d7000-7fd8589df000 r--s 00052000 08:02 665514 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/jcalendar-looks-2.0.1.jar 7fd8589df000-7fd8589e8000 r--s 000a6000 08:02 665415 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/hsqldb.jar 7fd8589e8000-7fd8589ee000 r--s 00032000 08:02 665493 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/jaxen-1.1.1.jar 7fd8589ee000-7fd8589f1000 r--s 00018000 08:02 665359 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/commons-io-1.4.jar 7fd8589f1000-7fd8589f6000 r--s 00035000 08:02 665329 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/bcmail-jdk16-145.jar 7fd8589f6000-7fd8589fd000 r--s 0006a000 08:02 665485 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/javamail-1.4.3.jar 7fd8589fd000-7fd858a0e000 r--s 0014c000 08:02 665526 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/jfreechart-1.0.13.jar 7fd858a0e000-7fd858a32000 r--s 00180000 08:02 665341 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/bcprov-jdk16-145.jar 7fd858a32000-7fd858a35000 ---p 00000000 00:00 0 7fd858a35000-7fd858b33000 rw-p 00000000 00:00 0 7fd858b33000-7fd858b36000 ---p 00000000 00:00 0 7fd858b36000-7fd858c34000 rw-p 00000000 00:00 0 7fd858c34000-7fd858c37000 ---p 00000000 00:00 0 7fd858c37000-7fd858d35000 rw-p 00000000 00:00 0 7fd858d35000-7fd858d38000 ---p 00000000 00:00 0 7fd858d38000-7fd858e36000 rw-p 00000000 00:00 0 7fd858e36000-7fd858e39000 ---p 00000000 00:00 0 7fd858e39000-7fd858f37000 rw-p 00000000 00:00 0 7fd858f37000-7fd858f3a000 ---p 00000000 00:00 0 7fd858f3a000-7fd859038000 rw-p 00000000 00:00 0 7fd859038000-7fd85903b000 ---p 00000000 00:00 0 7fd85903b000-7fd859139000 rw-p 00000000 00:00 0 7fd859139000-7fd85913c000 ---p 00000000 00:00 0 7fd85913c000-7fd85923a000 rw-p 00000000 00:00 0 7fd85923a000-7fd85923d000 ---p 00000000 00:00 0 7fd85923d000-7fd85933b000 rw-p 00000000 00:00 0 7fd85933b000-7fd85933e000 ---p 00000000 00:00 0 7fd85933e000-7fd85943c000 rw-p 00000000 00:00 0 7fd85943c000-7fd85943f000 ---p 00000000 00:00 0 7fd85943f000-7fd85953d000 rw-p 00000000 00:00 0 7fd85953d000-7fd859540000 ---p 00000000 00:00 0 7fd859540000-7fd85963e000 rw-p 00000000 00:00 0 7fd85963e000-7fd859641000 rwxp 00000000 00:00 0 7fd859641000-7fd85973f000 rw-p 00000000 00:00 0 7fd85973f000-7fd85974f000 r-xp 00000000 08:02 668067 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libnio.so 7fd85974f000-7fd85994e000 ---p 00010000 08:02 668067 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libnio.so 7fd85994e000-7fd85994f000 r--p 0000f000 08:02 668067 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libnio.so 7fd85994f000-7fd859950000 rw-p 00010000 08:02 668067 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libnio.so 7fd859950000-7fd859953000 ---p 00000000 00:00 0 7fd859953000-7fd859a51000 rw-p 00000000 00:00 0 7fd859a51000-7fd859a54000 ---p 00000000 00:00 0 7fd859a54000-7fd859bb3000 rw-p 00000000 00:00 0 7fd859bb3000-7fd859bc8000 r-xp 00000000 08:02 668059 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libnet.so 7fd859bc8000-7fd859dc7000 ---p 00015000 08:02 668059 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libnet.so 7fd859dc7000-7fd859dc8000 r--p 00014000 08:02 668059 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libnet.so 7fd859dc8000-7fd859dc9000 rw-p 00015000 08:02 668059 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libnet.so 7fd859dc9000-7fd859e2a000 r-xp 00000000 08:02 31434 /lib64/libfreebl3.so 7fd859e2a000-7fd85a02a000 ---p 00061000 08:02 31434 /lib64/libfreebl3.so 7fd85a02a000-7fd85a02b000 r--p 00061000 08:02 31434 /lib64/libfreebl3.so 7fd85a02b000-7fd85a02c000 rw-p 00062000 08:02 31434 /lib64/libfreebl3.so 7fd85a02c000-7fd85a030000 rw-p 00000000 00:00 0 7fd85a030000-7fd85a0cf000 r-xp 00000000 08:02 23586 /usr/lib64/libsqlite3.so.0.8.6 7fd85a0cf000-7fd85a2ce000 ---p 0009f000 08:02 23586 /usr/lib64/libsqlite3.so.0.8.6 7fd85a2ce000-7fd85a2cf000 r--p 0009e000 08:02 23586 /usr/lib64/libsqlite3.so.0.8.6 7fd85a2cf000-7fd85a2d1000 rw-p 0009f000 08:02 23586 /usr/lib64/libsqlite3.so.0.8.6 7fd85a2d1000-7fd85a30e000 r-xp 00000000 08:02 34822 /usr/lib64/libsoftokn3.so 7fd85a30e000-7fd85a50d000 ---p 0003d000 08:02 34822 /usr/lib64/libsoftokn3.so 7fd85a50d000-7fd85a50f000 r--p 0003c000 08:02 34822 /usr/lib64/libsoftokn3.so 7fd85a50f000-7fd85a510000 rw-p 0003e000 08:02 34822 /usr/lib64/libsoftokn3.so 7fd85a510000-7fd85a548000 r-xp 00000000 08:02 34820 /usr/lib64/libnspr4.so 7fd85a548000-7fd85a748000 ---p 00038000 08:02 34820 /usr/lib64/libnspr4.so 7fd85a748000-7fd85a749000 r--p 00038000 08:02 34820 /usr/lib64/libnspr4.so 7fd85a749000-7fd85a74b000 rw-p 00039000 08:02 34820 /usr/lib64/libnspr4.so 7fd85a74b000-7fd85a74d000 rw-p 00000000 00:00 0 7fd85a74d000-7fd85a750000 r-xp 00000000 08:02 34260 /usr/lib64/libplds4.so 7fd85a750000-7fd85a94f000 ---p 00003000 08:02 34260 /usr/lib64/libplds4.so 7fd85a94f000-7fd85a950000 r--p 00002000 08:02 34260 /usr/lib64/libplds4.so 7fd85a950000-7fd85a951000 rw-p 00003000 08:02 34260 /usr/lib64/libplds4.so 7fd85a951000-7fd85a955000 r-xp 00000000 08:02 34860 /usr/lib64/libplc4.so 7fd85a955000-7fd85ab54000 ---p 00004000 08:02 34860 /usr/lib64/libplc4.so 7fd85ab54000-7fd85ab55000 r--p 00003000 08:02 34860 /usr/lib64/libplc4.so 7fd85ab55000-7fd85ab56000 rw-p 00004000 08:02 34860 /usr/lib64/libplc4.so 7fd85ab56000-7fd85ab70000 r-xp 00000000 08:02 35233 /usr/lib64/libnssutil3.so 7fd85ab70000-7fd85ad6f000 ---p 0001a000 08:02 35233 /usr/lib64/libnssutil3.so 7fd85ad6f000-7fd85ad74000 r--p 00019000 08:02 35233 /usr/lib64/libnssutil3.so 7fd85ad74000-7fd85ad75000 rw-p 0001e000 08:02 35233 /usr/lib64/libnssutil3.so 7fd85ad77000-7fd85ad7a000 r--s 0001c000 08:02 666232 /tmp/Jetty_0_0_0_0_8080_as2.sample.war__as2.sample__eaaied/webapp/WEB-INF/lib/jcalendar-1.3.3.jar 7fd85ad7a000-7fd85ad80000 r--s 00046000 08:02 665535 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/jfreechart_jcommon-1.0.16.jar 7fd85ad80000-7fd85ad83000 r--s 00025000 08:02 665347 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/commons-dbcp-1.4.jar 7fd85ad83000-7fd85ad86000 r--s 00015000 08:02 665369 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/commons-pool-1.5.4.jar 7fd85ad86000-7fd85ad89000 r--s 0001c000 08:02 665501 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/jcalendar-1.3.3.jar 7fd85ad89000-7fd85ad95000 r--s 00065000 08:02 665742 /tmp/Jetty_0_0_0_0_8080_as2.war__as2__4x5vr/webapp/WEB-INF/lib/l2fprod-common-all.jar 7fd85ad95000-7fd85aec4000 r-xp 00000000 08:02 83087 /usr/lib64/libnss3.so 7fd85aec4000-7fd85b0c3000 ---p 0012f000 08:02 83087 /usr/lib64/libnss3.so 7fd85b0c3000-7fd85b0c8000 r--p 0012e000 08:02 83087 /usr/lib64/libnss3.so 7fd85b0c8000-7fd85b0ca000 rw-p 00133000 08:02 83087 /usr/lib64/libnss3.so 7fd85b0ca000-7fd85b0cc000 rw-p 00000000 00:00 0 7fd85b0cc000-7fd85b0da000 r-xp 00000000 08:02 667987 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libj2pkcs11.so 7fd85b0da000-7fd85b2d9000 ---p 0000e000 08:02 667987 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libj2pkcs11.so 7fd85b2d9000-7fd85b2da000 r--p 0000d000 08:02 667987 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libj2pkcs11.so 7fd85b2da000-7fd85b2db000 rw-p 0000e000 08:02 667987 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libj2pkcs11.so 7fd85b2db000-7fd85b2de000 r--s 00038000 08:02 668295 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/ext/sunpkcs11.jar 7fd85b2de000-7fd85b2e5000 r--s 00101000 08:02 668538 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/resources.jar 7fd85b2e5000-7fd85b2e8000 ---p 00000000 00:00 0 7fd85b2e8000-7fd85b3e6000 rw-p 00000000 00:00 0 7fd85b3e6000-7fd85b3e7000 r--s 00008000 08:02 268185 /opt/as2/jetty/lib/ext/jetty-html-6.1.22.jar 7fd85b3e7000-7fd85b3ef000 r--s 00046000 08:02 268594 /opt/as2/jlib/mina/mina-core-1.1.7.jar 7fd85b3ef000-7fd85b403000 r--s 00239000 08:02 268261 /opt/as2/jlib/help/oracle_ice.jar 7fd85b403000-7fd85b40e000 r--s 0011d000 08:02 268208 /opt/as2/jetty/lib/jsp-2.0/jasper-compiler-jdt-5.5.15.jar 7fd85b40e000-7fd85b426000 r--s 00291000 08:02 268606 /opt/as2/jlib/wings/wings.jar 7fd85b426000-7fd85b42c000 r--s 00059000 08:02 268226 /opt/as2/jetty/lib/naming/mail-1.4.jar 7fd85b42c000-7fd85b42e000 r--s 00006000 08:02 268597 /opt/as2/jlib/mina/mina-filter-ssl-1.1.7.jar 7fd85b42e000-7fd85b431000 r--s 00018000 08:02 268255 /opt/as2/jlib/commons-io-1.4.jar 7fd85b431000-7fd85b43a000 r--s 00076000 08:02 268200 /opt/as2/jetty/lib/grizzly/grizzly-1.0.7.jar 7fd85b43a000-7fd85b442000 r--s 0003f000 08:02 268607 /opt/as2/jlib/wings/wingset.jar 7fd85b442000-7fd85b444000 r--s 0000d000 08:02 268227 /opt/as2/jetty/lib/plus/jetty-plus-6.1.22.jar 7fd85b444000-7fd85b445000 r--s 00002000 08:02 268190 /opt/as2/jetty/lib/ext/jetty-servlet-tester-6.1.22.jar 7fd85b445000-7fd85b447000 r--s 00008000 08:02 268589 /opt/as2/jlib/jms/kxml.jar 7fd85b447000-7fd85b44d000 r--s 00019000 08:02 268216 /opt/as2/jetty/lib/jsp-2.0/xmlParserAPIs-2.6.2.jar 7fd85b44d000-7fd85b456000 r--s 000a6000 08:02 268264 /opt/as2/jlib/hsqldb.jar 7fd85b456000-7fd85b465000 r--s 000ee000 08:02 268217 /opt/as2/jetty/lib/jsp-2.1/ant-1.6.5.jar 7fd85b465000-7fd85b488000 r--s 00344000 08:02 268218 /opt/as2/jetty/lib/jsp-2.1/core-3.1.1.jar 7fd85b488000-7fd85b48a000 r--s 00001000 08:02 268588 /opt/as2/jlib/jms/jta.jar 7fd85b48a000-7fd85b490000 r--s 00046000 08:02 268571 /opt/as2/jlib/jfreechart_jcommon-1.0.16.jar 7fd85b490000-7fd85b492000 r--s 00000000 08:02 268231 /opt/as2/jetty/lib/xbean/jetty-xbean-6.1.22.jar 7fd85b492000-7fd85b494000 r--s 0000b000 08:02 268586 /opt/as2/jlib/jms/joram-raconfig.jar 7fd85b494000-7fd85b496000 r--s 00003000 08:02 268596 /opt/as2/jlib/mina/mina-filter-compression-1.1.7.jar 7fd85b496000-7fd85b497000 r--s 00006000 08:02 268225 /opt/as2/jetty/lib/naming/jetty-naming-6.1.22.jar 7fd85b497000-7fd85b498000 r--s 00004000 08:02 268198 /opt/as2/jetty/lib/ext/jetty-sslengine-6.1.22.jar 7fd85b498000-7fd85b4a9000 r--s 0014c000 08:02 268570 /opt/as2/jlib/jfreechart-1.0.13.jar 7fd85b4a9000-7fd85b4b4000 r--s 0009e000 08:02 268585 /opt/as2/jlib/jms/joram-mom.jar 7fd85b4b4000-7fd85b4b6000 r--s 00004000 08:02 268189 /opt/as2/jetty/lib/ext/jetty-rewrite-handler-6.1.22.jar 7fd85b4b6000-7fd85b4b8000 r--s 00007000 08:02 268221 /opt/as2/jetty/lib/management/jetty-management-6.1.22.jar 7fd85b4b8000-7fd85b4ba000 r--s 00000000 08:02 268187 /opt/as2/jetty/lib/ext/jetty-java5-threadpool-6.1.22.jar 7fd85b4ba000-7fd85b4c2000 r--s 00040000 08:02 268267 /opt/as2/jlib/httpclient/httpclient-4.0.1.jar 7fd85b4c2000-7fd85b4ca000 r--s 00052000 08:02 268569 /opt/as2/jlib/jcalendar-looks-2.0.1.jar 7fd85b4ca000-7fd85b4cb000 r--s 00001000 08:02 268195 /opt/as2/jetty/lib/ext/jetty-setuid-6.1.22.jar 7fd85b4cb000-7fd85b4ce000 r--s 00019000 08:02 268205 /opt/as2/jetty/lib/jsp-2.0/commons-el-1.0.jar 7fd85b4ce000-7fd85b4d0000 r--s 00006000 08:02 268599 /opt/as2/jlib/mina/mina-integration-spring-1.1.7.jar 7fd85b4d0000-7fd85b4d1000 r--s 00002000 08:02 268181 /opt/as2/jetty/lib/annotations/geronimo-annotation_1.0_spec-1.0.jar 7fd85b4d1000-7fd85b4d8000 r--s 00058000 08:02 268605 /opt/as2/jlib/wings/dwr.jar 7fd85b4d8000-7fd85b4da000 r--s 0000e000 08:02 268224 /opt/as2/jetty/lib/naming/activation-1.1.jar 7fd85b4da000-7fd85b4db000 r--s 00002000 08:02 268213 /opt/as2/jetty/lib/jsp-2.0/slf4j-api-1.3.1.jar 7fd85b4db000-7fd85b4dc000 r--s 00000000 08:02 268583 /opt/as2/jlib/jms/joram-gui.jar 7fd85b4dc000-7fd85b4de000 r--s 00000000 08:02 268219 /opt/as2/jetty/lib/jsp-2.1/jsp-2.1-jetty-6.1.22.jar 7fd85b4de000-7fd85b4e2000 r--s 00035000 08:02 268592 /opt/as2/jlib/jms/soap.jar 7fd85b4e2000-7fd85b4e4000 r--s 00006000 08:02 268183 /opt/as2/jetty/lib/ext/jetty-ajp-6.1.22.jar 7fd85b4e4000-7fd85b4e6000 r--s 0001f000 08:02 268228 /opt/as2/jetty/lib/servlet-api-2.5-20081211.jar 7fd85b4e6000-7fd85b4ec000 r--s 00051000 08:02 268577 /opt/as2/jlib/jms/jmxri.jar 7fd85b4ec000-7fd85b4f5000 r--s 00078000 08:02 268590 /opt/as2/jlib/jms/midpapi.jar 7fd85b4f5000-7fd85b4f7000 r--s 00000000 08:02 268186 /opt/as2/jetty/lib/ext/jetty-java5-stats-6.1.22.jar 7fd85b4f7000-7fd85b4f9000 r--s 00003000 08:02 268598 /opt/as2/jlib/mina/mina-integration-jmx-1.1.7.jar 7fd85b4f9000-7fd85b4fe000 r--s 00026000 08:02 268268 /opt/as2/jlib/httpclient/httpcore-4.0.1.jar 7fd85b4fe000-7fd85b500000 r--s 00006000 08:02 268201 /opt/as2/jetty/lib/grizzly/jetty-grizzly-6.1.0.jar 7fd85b500000-7fd85b504000 r--s 00028000 08:02 268203 /opt/as2/jetty/lib/jetty-util-6.1.22.jar 7fd85b504000-7fd85b510000 r--s 00065000 08:02 268593 /opt/as2/jlib/l2fprod-common-all.jar 7fd85b510000-7fd85b513000 r--s 00015000 08:02 268256 /opt/as2/jlib/commons-pool-1.5.4.jar 7fd85b513000-7fd85b528000 r--s 0017f000 08:02 268575 /opt/as2/jlib/jms/jgroups-all.jar 7fd85b528000-7fd85b52d000 r--s 00026000 08:02 268584 /opt/as2/jlib/jms/joram-kclient.jar 7fd85b52d000-7fd85b52f000 r--s 00001000 08:02 268601 /opt/as2/jlib/mina/slf4j-jdk14-1.5.0.jar 7fd85b52f000-7fd85b531000 r--s 00014000 08:02 268572 /opt/as2/jlib/jms/JCup.jar 7fd85b531000-7fd85b538000 r--s 0007d000 08:02 268202 /opt/as2/jetty/lib/jetty-6.1.22.jar 7fd85b538000-7fd85b53a000 r--s 0000c000 08:02 268262 /opt/as2/jlib/help/share.jar 7fd85b53a000-7fd85b53e000 r--s 00015000 08:02 268579 /opt/as2/jlib/jms/jndi.jar 7fd85b53e000-7fd85b545000 r--s 0005d000 08:02 268222 /opt/as2/jetty/lib/management/mx4j/mx4j-3.0.1.jar 7fd85b545000-7fd85b547000 r--s 00011000 08:02 268209 /opt/as2/jetty/lib/jsp-2.0/jasper-runtime-5.5.15.jar 7fd85b547000-7fd85b549000 r--s 00005000 08:02 268576 /opt/as2/jlib/jms/jms.jar 7fd85b549000-7fd85b550000 r--s 0006a000 08:02 268566 /opt/as2/jlib/javamail-1.4.3.jar 7fd85b550000-7fd85b554000 r--s 0001c000 08:02 268591 /opt/as2/jlib/jms/ow_monolog.jar 7fd85b554000-7fd85b55b000 r--s 0004b000 08:02 268260 /opt/as2/jlib/help/ohj.jar 7fd85b55b000-7fd85b55e000 r--s 00025000 08:02 268253 /opt/as2/jlib/commons-dbcp-1.4.jar 7fd85b55e000-7fd85b560000 r--s 00003000 08:02 268600 /opt/as2/jlib/mina/slf4j-api-1.5.0.jar 7fd85b560000-7fd85b566000 r--s 00032000 08:02 268567 /opt/as2/jlib/jaxen-1.1.1.jar 7fd85b566000-7fd85b569000 r--s 0001c000 08:02 268568 /opt/as2/jlib/jcalendar-1.3.3.jar 7fd85b569000-7fd85b578000 r--s 000ee000 08:02 268204 /opt/as2/jetty/lib/jsp-2.0/ant-1.6.5.jar 7fd85b578000-7fd85b57a000 r--s 00004000 08:02 268229 /opt/as2/jetty/lib/terracotta/jetty-terracotta-sessions-6.1.22.jar 7fd85b57a000-7fd85b57c000 r--s 00017000 08:02 268578 /opt/as2/jlib/jms/jmxtools.jar 7fd85b57c000-7fd85b57e000 r--s 00003000 08:02 268240 /opt/as2/jetty/start.jar 7fd85b57e000-7fd85b592000 r--s 000e3000 08:02 268215 /opt/as2/jetty/lib/jsp-2.0/xercesImpl-2.6.2.jar 7fd85b592000-7fd85b594000 r--s 0000c000 08:02 268212 /opt/as2/jetty/lib/jsp-2.0/jsp-api-2.0.jar 7fd85b594000-7fd85b59b000 r--s 0004e000 08:02 268265 /opt/as2/jlib/httpclient/apache-mime4j-0.6.jar 7fd85b59b000-7fd85b59c000 r--s 00000000 08:02 268581 /opt/as2/jlib/jms/joram-config.jar 7fd85b59c000-7fd85b59e000 r--s 00014000 08:02 268582 /opt/as2/jlib/jms/joram-connector.jar 7fd85b59e000-7fd85b5a0000 r--s 0000a000 08:02 268266 /opt/as2/jlib/httpclient/commons-codec-1.3.jar 7fd85b5a0000-7fd85b5a1000 r--s 00002000 08:02 268210 /opt/as2/jetty/lib/jsp-2.0/jcl104-over-slf4j-1.3.1.jar 7fd85b5a1000-7fd85b5a3000 r--s 00006000 08:02 268574 /opt/as2/jlib/jms/jakarta-regexp-1.2.jar 7fd85b5a3000-7fd85b5a5000 r--s 00008000 08:02 268604 /opt/as2/jlib/wings/commons-logging.jar 7fd85b5a5000-7fd85b5c9000 r--s 00180000 08:02 268252 /opt/as2/jlib/bcprov-jdk16-145.jar 7fd85b5c9000-7fd85b5ce000 r--s 00035000 08:02 268251 /opt/as2/jlib/bcmail-jdk16-145.jar 7fd85b5ce000-7fd85b5cf000 r--s 00001000 08:02 268214 /opt/as2/jetty/lib/jsp-2.0/slf4j-simple-1.3.1.jar 7fd85b5cf000-7fd85b5d4000 r--s 0002a000 08:02 268257 /opt/as2/jlib/help/help-share.jar 7fd85b5d4000-7fd85b5d6000 r--s 0000c000 08:02 268573 /opt/as2/jlib/jms/activation.jar 7fd85b5d6000-7fd85b5de000 r--s 00042000 08:02 268587 /opt/as2/jlib/jms/joram-shared.jar 7fd85b5de000-7fd85b5df000 r--s 00003000 08:02 268595 /opt/as2/jlib/mina/mina-filter-codec-netty-1.1.7.jar 7fd85b5df000-7fd85b5e1000 r--s 0000f000 08:02 268184 /opt/as2/jetty/lib/ext/jetty-client-6.1.22.jar 7fd85b5e1000-7fd85b5e2000 r--s 00002000 08:02 268188 /opt/as2/jetty/lib/ext/jetty-ldap-jaas-6.1.22.jar 7fd85b5e2000-7fd85b5ed000 r--s 0006f000 08:02 268223 /opt/as2/jetty/lib/management/mx4j/mx4j-tools-3.0.1.jar 7fd85b5ed000-7fd85b5f0000 r--s 0001c000 08:02 268603 /opt/as2/jlib/wings/bsh-core.jar 7fd85b5f0000-7fd85b5f2000 r--s 00016000 08:02 268602 /opt/as2/jlib/servlet-api.jar 7fd85b5f2000-7fd85b5f4000 r--s 01388000 08:02 268249 /opt/as2/jetty/webapps/as2-sample.war 7fd85b5f4000-7fd85b5f6000 r--s 00005000 08:02 268270 /opt/as2/jlib/httpclient/httpmime-4.0.1.jar 7fd85b5f6000-7fd85b5f8000 r--s 01396000 08:02 268250 /opt/as2/jetty/webapps/as2.war 7fd85b5f8000-7fd85b5fb000 r--s 00018000 08:02 268608 /opt/as2/jlib/wings/wingx.jar 7fd85b5fb000-7fd85b5fd000 r--s 00002000 08:02 268182 /opt/as2/jetty/lib/annotations/jetty-annotations-6.1.22.jar 7fd85b5fd000-7fd85b602000 r--s 0005f000 08:02 268206 /opt/as2/jetty/lib/jsp-2.0/jasper-compiler-5.5.15.jar 7fd85b602000-7fd85b608000 r--s 00045000 08:02 268580 /opt/as2/jlib/jms/joram-client.jar 7fd85b608000-7fd85b609000 ---p 00000000 00:00 0 7fd85b609000-7fd85b709000 rw-p 00000000 00:00 0 7fd85b709000-7fd85b70c000 ---p 00000000 00:00 0 7fd85b70c000-7fd85b80a000 rw-p 00000000 00:00 0 7fd85b80a000-7fd85b80d000 ---p 00000000 00:00 0 7fd85b80d000-7fd85b90b000 rw-p 00000000 00:00 0 7fd85b90b000-7fd85b90e000 ---p 00000000 00:00 0 7fd85b90e000-7fd85ba0c000 rw-p 00000000 00:00 0 7fd85ba0c000-7fd85ba0f000 ---p 00000000 00:00 0 7fd85ba0f000-7fd85bb0d000 rw-p 00000000 00:00 0 7fd85bb0d000-7fd85bb4c000 r--p 00000000 08:02 69354 /usr/lib/locale/de_DE.utf8/LC_CTYPE 7fd85bb4d000-7fd85bb50000 ---p 00000000 00:00 0 7fd85bb50000-7fd85bc4e000 rw-p 00000000 00:00 0 7fd85bc4e000-7fd85bc51000 ---p 00000000 00:00 0 7fd85bc51000-7fd85bd4f000 rw-p 00000000 00:00 0 7fd85bd4f000-7fd85bd50000 ---p 00000000 00:00 0 7fd85bd50000-7fd85bee7000 rw-p 00000000 00:00 0 7fd85bee7000-7fd85c081000 r--s 039f2000 08:02 668552 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/rt.jar 7fd85c081000-7fd85c0a9000 rw-p 00000000 00:00 0 7fd85c0a9000-7fd85c0aa000 ---p 00000000 00:00 0 7fd85c0aa000-7fd85c1aa000 rw-p 00000000 00:00 0 7fd85c1aa000-7fd85c1ab000 ---p 00000000 00:00 0 7fd85c1ab000-7fd85c2ab000 rw-p 00000000 00:00 0 7fd85c2ab000-7fd85c2ba000 rwxp 00000000 00:00 0 7fd85c2ba000-7fd85c2ff000 rwxp 00000000 00:00 0 7fd85c2ff000-7fd85c33c000 rwxp 00000000 00:00 0 7fd85c33c000-7fd85c4b1000 rwxp 00000000 00:00 0 7fd85c4b1000-7fd85c4c0000 rwxp 00000000 00:00 0 7fd85c4c0000-7fd85c505000 rwxp 00000000 00:00 0 7fd85c505000-7fd85c542000 rwxp 00000000 00:00 0 7fd85c542000-7fd85c6b6000 rwxp 00000000 00:00 0 7fd85c6b6000-7fd85c736000 rwxp 00000000 00:00 0 7fd85c736000-7fd85c78f000 rwxp 00000000 00:00 0 7fd85c78f000-7fd85e510000 rwxp 00000000 00:00 0 7fd85e510000-7fd866f90000 rwxp 00000000 00:00 0 7fd866f90000-7fd86e960000 rwxp 00000000 00:00 0 7fd86e960000-7fd89d240000 rwxp 00000000 00:00 0 7fd89d240000-7fd8ad060000 rwxp 00000000 00:00 0 7fd8ad060000-7fd8b8390000 rwxp 00000000 00:00 0 7fd8b8390000-7fd8b8392000 r--s 00013000 08:02 668444 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/jce.jar 7fd8b8392000-7fd8b8952000 rwxp 00000000 00:00 0 7fd8b8952000-7fd8bb392000 rwxp 00000000 00:00 0 7fd8bb392000-7fd8bb399000 r-xp 00000000 08:02 668118 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libzip.so 7fd8bb399000-7fd8bb598000 ---p 00007000 08:02 668118 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libzip.so 7fd8bb598000-7fd8bb599000 r--p 00006000 08:02 668118 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libzip.so 7fd8bb599000-7fd8bb59a000 rw-p 00007000 08:02 668118 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libzip.so 7fd8bb59a000-7fd8bb5a2000 r-xp 00000000 08:02 668130 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/native_threads/libhpi.so 7fd8bb5a2000-7fd8bb7a1000 ---p 00008000 08:02 668130 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/native_threads/libhpi.so 7fd8bb7a1000-7fd8bb7a2000 r--p 00007000 08:02 668130 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/native_threads/libhpi.so 7fd8bb7a2000-7fd8bb7a3000 rw-p 00008000 08:02 668130 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/native_threads/libhpi.so 7fd8bb7a3000-7fd8bb7cf000 r-xp 00000000 08:02 667996 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libjava.so 7fd8bb7cf000-7fd8bb9cf000 ---p 0002c000 08:02 667996 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libjava.so 7fd8bb9cf000-7fd8bb9d0000 r--p 0002c000 08:02 667996 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libjava.so 7fd8bb9d0000-7fd8bb9d3000 rw-p 0002d000 08:02 667996 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libjava.so 7fd8bb9d3000-7fd8bb9e1000 r-xp 00000000 08:02 668111 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libverify.so 7fd8bb9e1000-7fd8bbbe0000 ---p 0000e000 08:02 668111 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libverify.so 7fd8bbbe0000-7fd8bbbe2000 r--p 0000d000 08:02 668111 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libverify.so 7fd8bbbe2000-7fd8bbbe3000 rw-p 0000f000 08:02 668111 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/libverify.so 7fd8bbbe3000-7fd8bbbeb000 r-xp 00000000 08:02 36261 /lib64/librt-2.10.1.so 7fd8bbbeb000-7fd8bbdea000 ---p 00008000 08:02 36261 /lib64/librt-2.10.1.so 7fd8bbdea000-7fd8bbdeb000 r--p 00007000 08:02 36261 /lib64/librt-2.10.1.so 7fd8bbdeb000-7fd8bbdec000 rw-p 00008000 08:02 36261 /lib64/librt-2.10.1.so 7fd8bbdec000-7fd8bbe40000 r-xp 00000000 08:02 36291 /lib64/libm-2.10.1.so 7fd8bbe40000-7fd8bc03f000 ---p 00054000 08:02 36291 /lib64/libm-2.10.1.so 7fd8bc03f000-7fd8bc040000 r--p 00053000 08:02 36291 /lib64/libm-2.10.1.so 7fd8bc040000-7fd8bc041000 rw-p 00054000 08:02 36291 /lib64/libm-2.10.1.so 7fd8bc041000-7fd8bc7fd000 r-xp 00000000 08:02 668158 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/server/libjvm.so 7fd8bc7fd000-7fd8bc9fc000 ---p 007bc000 08:02 668158 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/server/libjvm.so 7fd8bc9fc000-7fd8bca6a000 r--p 007bb000 08:02 668158 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/server/libjvm.so 7fd8bca6a000-7fd8bca83000 rw-p 00829000 08:02 668158 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/server/libjvm.so 7fd8bca83000-7fd8bcabf000 rw-p 00000000 00:00 0 7fd8bcabf000-7fd8bcad3000 r-xp 00000000 08:02 1375 /lib64/libz.so.1.2.3 7fd8bcad3000-7fd8bccd3000 ---p 00014000 08:02 1375 /lib64/libz.so.1.2.3 7fd8bccd3000-7fd8bccd4000 r--p 00014000 08:02 1375 /lib64/libz.so.1.2.3 7fd8bccd4000-7fd8bccd5000 rw-p 00015000 08:02 1375 /lib64/libz.so.1.2.3 7fd8bccd5000-7fd8bce26000 r-xp 00000000 08:02 36285 /lib64/libc-2.10.1.so 7fd8bce26000-7fd8bd026000 ---p 00151000 08:02 36285 /lib64/libc-2.10.1.so 7fd8bd026000-7fd8bd02a000 r--p 00151000 08:02 36285 /lib64/libc-2.10.1.so 7fd8bd02a000-7fd8bd02b000 rw-p 00155000 08:02 36285 /lib64/libc-2.10.1.so 7fd8bd02b000-7fd8bd030000 rw-p 00000000 00:00 0 7fd8bd030000-7fd8bd032000 r-xp 00000000 08:02 36316 /lib64/libdl-2.10.1.so 7fd8bd032000-7fd8bd232000 ---p 00002000 08:02 36316 /lib64/libdl-2.10.1.so 7fd8bd232000-7fd8bd233000 r--p 00002000 08:02 36316 /lib64/libdl-2.10.1.so 7fd8bd233000-7fd8bd234000 rw-p 00003000 08:02 36316 /lib64/libdl-2.10.1.so 7fd8bd234000-7fd8bd238000 r-xp 00000000 08:02 667918 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/jli/libjli.so 7fd8bd238000-7fd8bd437000 ---p 00004000 08:02 667918 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/jli/libjli.so 7fd8bd437000-7fd8bd438000 r--p 00003000 08:02 667918 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/jli/libjli.so 7fd8bd438000-7fd8bd439000 rw-p 00004000 08:02 667918 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/jli/libjli.so 7fd8bd439000-7fd8bd44f000 r-xp 00000000 08:02 1331 /lib64/libpthread-2.10.1.so 7fd8bd44f000-7fd8bd64f000 ---p 00016000 08:02 1331 /lib64/libpthread-2.10.1.so 7fd8bd64f000-7fd8bd650000 r--p 00016000 08:02 1331 /lib64/libpthread-2.10.1.so 7fd8bd650000-7fd8bd651000 rw-p 00017000 08:02 1331 /lib64/libpthread-2.10.1.so 7fd8bd651000-7fd8bd655000 rw-p 00000000 00:00 0 7fd8bd655000-7fd8bd673000 r-xp 00000000 08:02 349 /lib64/ld-2.10.1.so 7fd8bd673000-7fd8bd676000 r--s 00031000 08:02 668284 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/ext/sunjce_provider.jar 7fd8bd676000-7fd8bd68b000 r--s 000de000 08:02 266905 /opt/as2/as2.jar 7fd8bd68b000-7fd8bd6a2000 rwxp 00000000 00:00 0 7fd8bd6a2000-7fd8bd74b000 rwxp 00000000 00:00 0 7fd8bd74b000-7fd8bd74e000 ---p 00000000 00:00 0 7fd8bd74e000-7fd8bd850000 rw-p 00000000 00:00 0 7fd8bd850000-7fd8bd853000 r--s 0007a000 08:02 668455 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/jsse.jar 7fd8bd853000-7fd8bd856000 r--s 0000f000 08:02 668279 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/ext/pulse-java.jar 7fd8bd856000-7fd8bd85f000 r--s 00065000 08:02 668262 /usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/ext/gnome-java-bridge.jar 7fd8bd85f000-7fd8bd866000 r--s 00000000 08:02 23626 /usr/lib64/gconv/gconv-modules.cache 7fd8bd866000-7fd8bd86e000 rw-s 00000000 08:02 131391 /tmp/hsperfdata_root/8149 7fd8bd86e000-7fd8bd86f000 rw-p 00000000 00:00 0 7fd8bd86f000-7fd8bd870000 r--p 00000000 00:00 0 7fd8bd870000-7fd8bd872000 rw-p 00000000 00:00 0 7fd8bd872000-7fd8bd873000 r--p 0001d000 08:02 349 /lib64/ld-2.10.1.so 7fd8bd873000-7fd8bd874000 rw-p 0001e000 08:02 349 /lib64/ld-2.10.1.so 7fffa9f03000-7fffa9f1a000 rw-p 00000000 00:00 0 [stack] 7fffa9fff000-7fffaa000000 r-xp 00000000 00:00 0 [vdso] ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] VM Arguments: jvm_args: -Xmx1300M -Xms92M java_command: de.mendelson.comm.as2.AS2ServerStart Launcher Type: SUN_STANDARD Environment Variables: JAVA_HOME=/usr/lib64/jvm/java JRE_HOME=/usr//jvm/jre PATH=/usr/lib64/mpi/gcc/openmpi/bin:/sbin:/usr/sbin:/usr/local/sbin:/root/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:/usr/lib/mit/bin:/usr/lib/mit/sbin USERNAME=root LD_LIBRARY_PATH=/usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64/server:/usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/lib/amd64:/usr/lib64/jvm/java-1.6.0-openjdk-1.6.0/jre/../lib/amd64:/usr/lib64/mpi/gcc/openmpi/lib64 SHELL=/bin/bash DISPLAY=:0.0 HOSTTYPE=x86_64 OSTYPE=linux MACHTYPE=x86_64-suse-linux Signal Handlers: SIGSEGV: [libjvm.so+0x66ef10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGBUS: [libjvm.so+0x66ef10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGFPE: [libjvm.so+0x545a10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGPIPE: SIG_IGN, sa_mask[0]=0x00000000, sa_flags=0x00000000 SIGXFSZ: [libjvm.so+0x545a10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGILL: [libjvm.so+0x545a10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000 SIGUSR2: [libjvm.so+0x545160], sa_mask[0]=0x00000000, sa_flags=0x10000004 SIGHUP: [libjvm.so+0x5479b0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGINT: [libjvm.so+0x5479b0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGTERM: [libjvm.so+0x5479b0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 SIGQUIT: [libjvm.so+0x5479b0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004 --------------- S Y S T E M --------------- OS:openSUSE 11.2 (x86_64) VERSION = 11.2 uname:Linux 2.6.31.12-0.2-desktop #1 SMP PREEMPT 2010-03-16 21:25:39 +0100 x86_64 libc:glibc 2.10.1 NPTL 2.10.1 rlimit: STACK 8192k, CORE 0k, NPROC 16003, NOFILE 8192, AS 3328240k load average:0.53 0.22 0.08 CPU:total 2 (2 cores per cpu, 1 threads per core) family 15 model 65 stepping 3, cmov, cx8, fxsr, mmx, sse, sse2, sse3, mmxext, 3dnow, 3dnowext Memory: 4k page, physical 2055756k(35124k free), swap 2104472k(2100292k free) vm_info: OpenJDK 64-Bit Server VM (14.0-b16) for linux-amd64 JRE (1.6.0_18-b18), built on Aug 13 2010 08:43:28 by "abuild" with gcc 4.4.1 [gcc-4_4-branch revision 150839] time: Thu Sep 9 08:05:21 2010 elapsed time: 87253 seconds -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at ubuntu.com Fri Sep 10 02:43:02 2010 From: doko at ubuntu.com (Matthias Klose) Date: Fri, 10 Sep 2010 11:43:02 +0200 Subject: [patch] fix build failure on s390 Message-ID: <4C89FDA6.7090108@ubuntu.com> this needs to go to 6 and 6-1.9. Matthias -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: s390.diff Url: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100910/7b2fbe73/s390.diff From ahughes at redhat.com Fri Sep 10 04:58:32 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Fri, 10 Sep 2010 12:58:32 +0100 Subject: [patch] fix build failure on s390 In-Reply-To: <4C89FDA6.7090108@ubuntu.com> References: <4C89FDA6.7090108@ubuntu.com> Message-ID: <20100910115832.GA10929@bree.middle-earth.co.uk> On 11:43 Fri 10 Sep , Matthias Klose wrote: > this needs to go to 6 and 6-1.9. > > Matthias > Approved for 6 and the 1.9 branch. Is it not applicable to 1.7 and 1.8? Was the original size_t patch needed for s390 too? > 2010-09-10 Matthias Klose > > * patches/params-cast-size_t.patch: Update, fix build failure on s390. > > diff -r e8452eabe369 patches/params-cast-size_t.patch > --- a/patches/params-cast-size_t.patch Wed Sep 08 13:16:22 2010 +0100 > +++ b/patches/params-cast-size_t.patch Fri Sep 10 11:38:47 2010 +0200 > @@ -250,3 +250,25 @@ > if (PrintGCDetails && Verbose) { > // Too early to use gclog_or_tty > tty->print_cr("Ergo set OldSize: " SIZE_FORMAT, OldSize); > +--- openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp.orig 2010-06-21 23:12:18.000000000 +0200 > ++++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2010-09-09 10:48:01.909691035 +0200 > +@@ -2882,7 +2882,7 @@ > + if (ResizeOldPLAB && CMSOldPLABResizeQuicker) { > + size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks); > + n_blks += CMSOldPLABReactivityFactor*multiple*n_blks; > +- n_blks = MIN2(n_blks, CMSOldPLABMax); > ++ n_blks = MIN2(n_blks, (size_t)CMSOldPLABMax); > + } > + assert(n_blks > 0, "Error"); > + _cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl); > +--- openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp.orig 2010-06-21 21:12:18.000000000 +0000 > ++++ openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp 2010-09-09 12:55:45.000000000 +0000 > +@@ -160,7 +160,7 @@ > + const size_t num_overflow_elems = of_stack->size(); > + const size_t space_available = queue->max_elems() - queue->size(); > + const size_t num_take_elems = MIN3(space_available / 4, > +- ParGCDesiredObjsFromOverflowList, > ++ (size_t)ParGCDesiredObjsFromOverflowList, > + num_overflow_elems); > + // Transfer the most recent num_take_elems from the overflow > + // stack to our work queue. Thanks, -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From doko at ubuntu.com Fri Sep 10 05:10:56 2010 From: doko at ubuntu.com (Matthias Klose) Date: Fri, 10 Sep 2010 14:10:56 +0200 Subject: [patch] fix build failure on s390 In-Reply-To: <20100910115832.GA10929@bree.middle-earth.co.uk> References: <4C89FDA6.7090108@ubuntu.com> <20100910115832.GA10929@bree.middle-earth.co.uk> Message-ID: <4C8A2050.2070908@ubuntu.com> On 10.09.2010 13:58, Dr Andrew John Hughes wrote: > On 11:43 Fri 10 Sep , Matthias Klose wrote: >> this needs to go to 6 and 6-1.9. >> >> Matthias >> > > Approved for 6 and the 1.9 branch. > Is it not applicable to 1.7 and 1.8? no, 1.8 does build, see https://buildd.debian.org/status/package.php?p=openjdk-6 I don't want to spend the time to check it for 1.7. > Was the original size_t patch needed for s390 too? yes. From ahughes at redhat.com Fri Sep 10 05:16:01 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Fri, 10 Sep 2010 13:16:01 +0100 Subject: [patch] fix build failure on s390 In-Reply-To: <4C8A2050.2070908@ubuntu.com> References: <4C89FDA6.7090108@ubuntu.com> <20100910115832.GA10929@bree.middle-earth.co.uk> <4C8A2050.2070908@ubuntu.com> Message-ID: <20100910121601.GC10929@bree.middle-earth.co.uk> On 14:10 Fri 10 Sep , Matthias Klose wrote: > On 10.09.2010 13:58, Dr Andrew John Hughes wrote: > > On 11:43 Fri 10 Sep , Matthias Klose wrote: > >> this needs to go to 6 and 6-1.9. > >> > >> Matthias > >> > > > > Approved for 6 and the 1.9 branch. > > Is it not applicable to 1.7 and 1.8? > > no, 1.8 does build, see > https://buildd.debian.org/status/package.php?p=openjdk-6 > > I don't want to spend the time to check it for 1.7. > > > Was the original size_t patch needed for s390 too? > > yes. > Then could you please document that (and the others you added) on http://icedtea.classpath.org/wiki/IcedTea_JDK6_Patches. It was added as just: 2008-08-15 Matthias Klose * patches/icedtea-hotspot-use-idx_t.patch: New. * patches/icedtea-hotspot-params-cast-size_t.patch: Likewise. * Makefile.am (ICEDTEA_PATCHES): Add patches. which isn't very helpful in determining whether a patch is still needed or not. Thanks, -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Fri Sep 10 05:18:34 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Sep 2010 12:18:34 +0000 Subject: [Bug 548] Error: Deadlock in safepoint code. Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=548 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Component|IcedTea6 |Zero Platform|64-bit |alpha ------- Comment #1 from gnu_andrew at member.fsf.org 2010-09-10 12:18 ------- Moving to zero and alpha. Can you try and replicate this with the new release, 1.9? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Sep 10 05:18:47 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Sep 2010 12:18:47 +0000 Subject: [Bug 548] Error: Deadlock in safepoint code. Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=548 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|critical |normal -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at icedtea.classpath.org Fri Sep 10 05:20:18 2010 From: doko at icedtea.classpath.org (doko at icedtea.classpath.org) Date: Fri, 10 Sep 2010 12:20:18 +0000 Subject: /hg/icedtea6: Fix build failure on s390. Message-ID: changeset bdd2de6605a8 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=bdd2de6605a8 author: doko at ubuntu.com date: Fri Sep 10 14:17:28 2010 +0200 Fix build failure on s390. 2010-09-10 Matthias Klose * patches/params-cast-size_t.patch: Update, fix build failure on s390. diffstat: 2 files changed, 26 insertions(+) ChangeLog | 4 ++++ patches/params-cast-size_t.patch | 22 ++++++++++++++++++++++ diffs (40 lines): diff -r e8452eabe369 -r bdd2de6605a8 ChangeLog --- a/ChangeLog Wed Sep 08 13:16:22 2010 +0100 +++ b/ChangeLog Fri Sep 10 14:17:28 2010 +0200 @@ -1,3 +1,7 @@ 2010-09-08 Andrew John Hughes + + * patches/params-cast-size_t.patch: Update, fix build failure on s390. + 2010-09-08 Andrew John Hughes * NEWS: Sync with 1.9 branch. diff -r e8452eabe369 -r bdd2de6605a8 patches/params-cast-size_t.patch --- a/patches/params-cast-size_t.patch Wed Sep 08 13:16:22 2010 +0100 +++ b/patches/params-cast-size_t.patch Fri Sep 10 14:17:28 2010 +0200 @@ -250,3 +250,25 @@ diff -Nru openjdk.orig/hotspot/src/share if (PrintGCDetails && Verbose) { // Too early to use gclog_or_tty tty->print_cr("Ergo set OldSize: " SIZE_FORMAT, OldSize); +--- openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp.orig 2010-06-21 23:12:18.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2010-09-09 10:48:01.909691035 +0200 +@@ -2882,7 +2882,7 @@ + if (ResizeOldPLAB && CMSOldPLABResizeQuicker) { + size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks); + n_blks += CMSOldPLABReactivityFactor*multiple*n_blks; +- n_blks = MIN2(n_blks, CMSOldPLABMax); ++ n_blks = MIN2(n_blks, (size_t)CMSOldPLABMax); + } + assert(n_blks > 0, "Error"); + _cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl); +--- openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp.orig 2010-06-21 21:12:18.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp 2010-09-09 12:55:45.000000000 +0000 +@@ -160,7 +160,7 @@ + const size_t num_overflow_elems = of_stack->size(); + const size_t space_available = queue->max_elems() - queue->size(); + const size_t num_take_elems = MIN3(space_available / 4, +- ParGCDesiredObjsFromOverflowList, ++ (size_t)ParGCDesiredObjsFromOverflowList, + num_overflow_elems); + // Transfer the most recent num_take_elems from the overflow + // stack to our work queue. From bugzilla-daemon at icedtea.classpath.org Fri Sep 10 05:21:24 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Sep 2010 12:21:24 +0000 Subject: [Bug 549] Error occurred during initialization of VM Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=549 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED OS/Version|Windows |Linux Platform|64-bit |alpha Resolution| |INVALID ------- Comment #1 from gnu_andrew at member.fsf.org 2010-09-10 12:21 ------- As you say the build wasn't finished... -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From doko at icedtea.classpath.org Fri Sep 10 05:24:09 2010 From: doko at icedtea.classpath.org (doko at icedtea.classpath.org) Date: Fri, 10 Sep 2010 12:24:09 +0000 Subject: /hg/release/icedtea6-1.9: Fix build failure on s390. Message-ID: changeset 397ea53cdc7c in /hg/release/icedtea6-1.9 details: http://icedtea.classpath.org/hg/release/icedtea6-1.9?cmd=changeset;node=397ea53cdc7c author: doko at ubuntu.com date: Fri Sep 10 14:21:17 2010 +0200 Fix build failure on s390. 2010-09-10 Matthias Klose * patches/params-cast-size_t.patch: Update, fix build failure on s390. diffstat: 2 files changed, 26 insertions(+) ChangeLog | 4 ++++ patches/params-cast-size_t.patch | 22 ++++++++++++++++++++++ diffs (40 lines): diff -r 358b64f8f0bf -r 397ea53cdc7c ChangeLog --- a/ChangeLog Wed Sep 08 13:35:51 2010 +0100 +++ b/ChangeLog Fri Sep 10 14:21:17 2010 +0200 @@ -1,3 +1,7 @@ 2010-09-08 Andrew John Hughes + + * patches/params-cast-size_t.patch: Update, fix build failure on s390. + 2010-09-08 Andrew John Hughes * configure.ac: Bump to 1.9.1pre. diff -r 358b64f8f0bf -r 397ea53cdc7c patches/params-cast-size_t.patch --- a/patches/params-cast-size_t.patch Wed Sep 08 13:35:51 2010 +0100 +++ b/patches/params-cast-size_t.patch Fri Sep 10 14:21:17 2010 +0200 @@ -250,3 +250,25 @@ diff -Nru openjdk.orig/hotspot/src/share if (PrintGCDetails && Verbose) { // Too early to use gclog_or_tty tty->print_cr("Ergo set OldSize: " SIZE_FORMAT, OldSize); +--- openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp.orig 2010-06-21 23:12:18.000000000 +0200 ++++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2010-09-09 10:48:01.909691035 +0200 +@@ -2882,7 +2882,7 @@ + if (ResizeOldPLAB && CMSOldPLABResizeQuicker) { + size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks); + n_blks += CMSOldPLABReactivityFactor*multiple*n_blks; +- n_blks = MIN2(n_blks, CMSOldPLABMax); ++ n_blks = MIN2(n_blks, (size_t)CMSOldPLABMax); + } + assert(n_blks > 0, "Error"); + _cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl); +--- openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp.orig 2010-06-21 21:12:18.000000000 +0000 ++++ openjdk/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp 2010-09-09 12:55:45.000000000 +0000 +@@ -160,7 +160,7 @@ + const size_t num_overflow_elems = of_stack->size(); + const size_t space_available = queue->max_elems() - queue->size(); + const size_t num_take_elems = MIN3(space_available / 4, +- ParGCDesiredObjsFromOverflowList, ++ (size_t)ParGCDesiredObjsFromOverflowList, + num_overflow_elems); + // Transfer the most recent num_take_elems from the overflow + // stack to our work queue. From bugzilla-daemon at icedtea.classpath.org Fri Sep 10 05:24:54 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 10 Sep 2010 12:24:54 +0000 Subject: [Bug 550] JVM fatal error - error occurred during error reporting Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=550 ------- Comment #1 from gnu_andrew at member.fsf.org 2010-09-10 12:24 ------- Can you provide some way of replicating this failure? Can you try with the 1.9 release and see if this is fixed? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 01:57:07 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 08:57:07 +0000 Subject: [Bug 550] JVM fatal error - error occurred during error reporting Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=550 karl.kappel at segmueller.de changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |LATER ------- Comment #2 from karl.kappel at segmueller.de 2010-09-13 08:57 ------- >Can you provide some way of replicating this failure? No - we have this failure two or three times within a month. >Can you try with the 1.9 release and see if this is fixed? No - I'm not able to build with 1.9 release because I'm not experienced enough. So I think it will be best to close this bug waiting for a new prebuilt package. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 04:47:44 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 11:47:44 +0000 Subject: [Bug 551] New: icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 Summary: icedtea6-1.9 compile failure with --enable-zero -- enable-shark on ppc64 Product: IcedTea Version: 6-1.9 Platform: ppc64 OS/Version: Linux Status: NEW Severity: major Priority: P2 Component: Shark AssignedTo: unassigned at icedtea.classpath.org ReportedBy: acrux at linuxmail.org i?ve just now tried, on ppc64 (quad G5) powered by CRUX PPC 2.6 64bit, to build icedtea6-1.9 ?-enable-shark ?-enable-zero with llvm-2.7 but i got an error: [...] Linking launcher... make[7]: Leaving directory `/home/acrux/ice19/shark/work/src/icedtea6-1.9/openjdk.build/hotspot/outputdir/linux_ppc64_shark/product' All done. make[6]: Leaving directory `/home/acrux/ice19/shark/work/src/icedtea6-1.9/openjdk.build/hotspot/outputdir/linux_ppc64_shark/product' cd linux_ppc64_shark/product && ./test_gamma java full version "1.6.0_20-b20" java version "1.6.0_20" OpenJDK Runtime Environment (IcedTea6 1.9) (cruxppc-2.6-ppc64) OpenJDK 64-Bit Shark VM (build 17.0-b16, mixed mode) # # A fatal error has been detected by the Java Runtime Environment: # # Internal Error (os_linux_zero.cpp:236), pid=13170, tid=4398046753328 # Error: caught unhandled signal 11 # # JRE version: 6.0_20-b20 # Java VM: OpenJDK 64-Bit Shark VM (17.0-b16 mixed mode linux-ppc64 ) # Derivative: IcedTea6 1.9 # Distribution: Custom build (Mon Sep 13 10:08:25 UTC 2010) # An error report file with more information is saved as: # /home/acrux/ice19/shark/work/src/icedtea6-1.9/openjdk.build/hotspot/outputdir/linux_ppc64_shark/product/hs_err_pid13170.log # # If you would like to submit a bug report, please include # instructions how to reproduce the bug and visit: # http://icedtea.classpath.org/bugzilla # ./test_gamma: line 12: 13170 Aborted ./${gamma:-gamma} -Xbatch -showversion Queens < /dev/null make[5]: *** [productshark] Error 134 make[5]: Leaving directory `/home/acrux/ice19/shark/work/src/icedtea6-1.9/openjdk.build/hotspot/outputdir' make[4]: *** [generic_buildshark] Error 2 make[4]: Leaving directory `/home/acrux/ice19/shark/work/src/icedtea6-1.9/openjdk/hotspot/make' make[3]: *** [productshark] Error 2 make[3]: Leaving directory `/home/acrux/ice19/shark/work/src/icedtea6-1.9/openjdk/hotspot/make' make[2]: *** [hotspot-build] Error 2 make[2]: Leaving directory `/home/acrux/ice19/shark/work/src/icedtea6-1.9/openjdk' make[1]: *** [build_product_image] Error 2 make[1]: Leaving directory `/home/acrux/ice19/shark/work/src/icedtea6-1.9/openjdk' make: *** [stamps/icedtea.stamp] Error 2 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 04:49:47 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 11:49:47 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 ------- Comment #1 from acrux at linuxmail.org 2010-09-13 11:49 ------- Created an attachment (id=411) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=411&action=view) hs_err_pid13170.log -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 04:50:15 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 11:50:15 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 ------- Comment #2 from acrux at linuxmail.org 2010-09-13 11:50 ------- Created an attachment (id=412) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=412&action=view) complete build log -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 04:53:23 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 11:53:23 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 acrux at linuxmail.org changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #411 is|0 |1 obsolete| | ------- Comment #3 from acrux at linuxmail.org 2010-09-13 11:53 ------- Created an attachment (id=413) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=413&action=view) hs_err_pid13170.log -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 05:04:09 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 12:04:09 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 gbenson at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #413|text/x-log |text/plain mime type| | -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 05:05:54 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 12:05:54 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 ------- Comment #4 from gbenson at redhat.com 2010-09-13 12:05 ------- Hmmm, that's interesting, I don't see any Shark frames in there at all. Can you modify test_gamma to run with -Xint and see if the problem persists? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 06:17:02 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 13:17:02 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 ------- Comment #5 from xerxes at zafena.se 2010-09-13 13:17 ------- LLVM 2.7 contains two code generator target backends for powerpc, ppc32 and ppc64. The LLVM ppc32 target backend are well tested, the LLVM project have been running a 32bit ppc buildbot that have informed the developers of any problems/regressions during the LLVM 2.7 stabilization phase. The LLVM ppc32 backend are are able to pass the LLVM regression testsuite (make check). Despite all testing of the ppc32 target backend, there are one major PPC JIT bug left in LLVM 2.7: See: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=399 / http://llvm.org/bugs/show_bug.cgi?id=5201 The LLVM ppc64 target backend are not so well tested (no llvm buildbot have checked the ppc64 target backend) and for what I know it fails to pass the llvm regression testsuite (make check). LLVM enables the ppc64 backend by default when it are compiled on a ppc64 build host. Please check and verify that your LLVM 2.7 build passes the regression testsuite (make check). Please verify that your LLVM 2.7 build are patched to workaround pr399. You can make LLVM 2.7 use the ppc32 backend by default by building LLVM 2.7 from inside a "linux32 bash" shell. Cheers Xerxes -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From omajid at icedtea.classpath.org Mon Sep 13 07:22:40 2010 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Mon, 13 Sep 2010 14:22:40 +0000 Subject: /hg/icedtea6: netx: add a new man page for javaws Message-ID: changeset 1c5acca8abfd in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=1c5acca8abfd author: omajid date: Mon Sep 13 10:21:58 2010 -0400 netx: add a new man page for javaws 2010-09-13 Omair Majid Add a new man page for netx's javaws. * NEWS: Updated to indicate the new man page for javaws. * Makefile.am (stamps/add-netx.stamp): Copy over the javaws man page into the build. (clean-add-netx): Remove the javaws man pages on clean. (stamps/add-netx-debug.stamp): Copy over the javaws man page. (clean-add-netx-debug): Remove the javaws man page. (add-netx): New target. Alias for stamps/add-netx.stamp. (add-netx-debug): New target. Alias for stamps/add-netx-debug.stamp. * netx/javaws.1: New man page for netx's javaws. diffstat: 4 files changed, 154 insertions(+) ChangeLog | 13 ++++++ Makefile.am | 16 +++++++ NEWS | 2 netx/javaws.1 | 123 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ diffs (213 lines): diff -r bdd2de6605a8 -r 1c5acca8abfd ChangeLog --- a/ChangeLog Fri Sep 10 14:17:28 2010 +0200 +++ b/ChangeLog Mon Sep 13 10:21:58 2010 -0400 @@ -1,3 +1,16 @@ 2010-09-10 Matthias Klose + + Add a new man page for netx's javaws. + * NEWS: Updated to indicate the new man page for javaws. + * Makefile.am + (stamps/add-netx.stamp): Copy over the javaws man page into the build. + (clean-add-netx): Remove the javaws man pages on clean. + (stamps/add-netx-debug.stamp): Copy over the javaws man page. + (clean-add-netx-debug): Remove the javaws man page. + (add-netx): New target. Alias for stamps/add-netx.stamp. + (add-netx-debug): New target. Alias for stamps/add-netx-debug.stamp. + * netx/javaws.1: New man page for netx's javaws. + 2010-09-10 Matthias Klose * patches/params-cast-size_t.patch: Update, fix build failure on s390. diff -r bdd2de6605a8 -r 1c5acca8abfd Makefile.am --- a/Makefile.am Fri Sep 10 14:17:28 2010 +0200 +++ b/Makefile.am Mon Sep 13 10:21:58 2010 -0400 @@ -1422,6 +1422,10 @@ stamps/add-netx.stamp: stamps/netx-dist. $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ $(BUILD_OUTPUT_DIR)/j2re-image/lib + cp $(NETX_SRCDIR)/javaws.1 \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 + cp $(NETX_SRCDIR)/javaws.1 \ + $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 touch stamps/add-netx.stamp clean-add-netx: @@ -1431,6 +1435,8 @@ clean-add-netx: rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar + rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 + rm -f $(BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 rm -f stamps/add-netx.stamp stamps/add-netx-debug.stamp: stamps/netx-dist.stamp extra-lib/about.jar @@ -1442,6 +1448,10 @@ stamps/add-netx-debug.stamp: stamps/netx $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib + cp $(NETX_SRCDIR)/javaws.1 \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 + cp $(NETX_SRCDIR)/javaws.1 \ + $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 touch stamps/add-netx-debug.stamp clean-add-netx-debug: @@ -1451,6 +1461,8 @@ clean-add-netx-debug: rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 rm -f stamps/add-netx-debug.stamp # OpenJDK ecj Targets @@ -2166,6 +2178,10 @@ netx: stamps/netx.stamp netx-dist: stamps/netx-dist.stamp +add-netx: stamps/add-netx.stamp + +add-netx-debug: stamps/add-netx-debug.stamp + overlay: stamps/overlay.stamp patch: stamps/patch.stamp diff -r bdd2de6605a8 -r 1c5acca8abfd NEWS --- a/NEWS Fri Sep 10 14:17:28 2010 +0200 +++ b/NEWS Mon Sep 13 10:21:58 2010 -0400 @@ -14,6 +14,8 @@ New in release 1.10 (2010-XX-XX): - S4356282, RH525870: RFE: T2K should be used to rasterize CID/CFF fonts - S6954424: Support OpenType/CFF fonts in JDK 7 - S6438179: XToolkit.isTraySupported() result has nothing to do with the system tray +* Netx + - A new man page for javaws. New in release 1.9 (2010-09-07): diff -r bdd2de6605a8 -r 1c5acca8abfd netx/javaws.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/netx/javaws.1 Mon Sep 13 10:21:58 2010 -0400 @@ -0,0 +1,123 @@ +.TH javaws 1 "9 Sep 2010" +.SH NAME +javaws - a Java Web Start client +.SH SYNOPSYS +.B javaws +[-run-options] jnlp-file +.br +.B javaws +[-control-option] +.SH DESCRIPTION +.B javaws +is an implementation of a JNLP client. It uses a JNLP (Java Network +Launch Protocol) file to securely run a remote Java application or +a Java applet. This implementation of +.B javaws +is from the IcedTea project and is based on the NetX project. +.PP +A JNLP file is an xml file that describes how to securely run a +remote Java application or a Java applet. + +.SH OPTIONS +When specifying options, the name of the jnlp file must be the last +argument to +.B javaws +- all the options must preceede it. +.PP +The jnlp-file can either be a url or a local path. +.PP +.B Control Options +.PP +By default +.B javaws +will launch the jnlp file specified on the command line. The control +options can be used to change this behaviour. +.TP 12 +\-about +Shows a sample application that can be used to test the basic functionality +of this implementation. +.TP +\-viewer +Shows the trusted certificate viewer. This allows a user to list, examine, remove +or export trusted certificates. Note that this only reflects the certificates +trusted by +.B javaws +and not any other certificates or programs. + +.PP +.B Run Options +.PP +In the default mode, the following run-options can be used: +.TP 12 +\-basedir dir +Directory where the cache and certificates to be used are stored. +.TP +\-arg arg +Adds an application argument before launching. +.TP +\-param name=value +Adds an applet parameter before launching. +.TP +\-property name=value +Sets a system property before launching. +.TP +\-update seconds +Update check if seconds since last checked. +.TP +\-license +Display the GPL license and exit. +.TP +\-verbose +Enable verbose output. Very useful in debugging. +.TP +\-nosecurity +Disables the secure runtime environment. +.TP +\-noupdate +Disables checking for updates. +.TP +\-headless +Disables download window, other UIs. +.TP +\-strict +Enables strict checking of JNLP file format. Any deviations from +the JNLP DTD will cause +.B javaws +to abort. +.TP +\-umask=value +Sets the umask for files created by an application. +.TP +\-Xnofork +Do not create another JVM, even if the JNLP file asks for running in +a separate JVM. This is useful for debugging. +.TP +\-Jjava-option +This passes along java-option to the java binary that is running +javaws. For example, to make javaws run with a max heap size +of 80m, use -J-Xmx80m. +.TP +\-help +Print a help message and exit. + +.SH FILES +~/.netxrc specifies the location of the base directory + +.SH BUGS +There arent any known bugs. If you come across one, please file it at + http://icedtea.classpath.org/bugzilla/ +.br +Please run javaws in verbose mode and include that output along +with the jnlp file when filing out the bug report. + +.SH AUTHOR +Originally written by Jon. A. Maxwell. +.br +Currently maintained by the IcedTea contributors. + +.SH SEE ALSO +.BR java (1) +.br +http://icedtea.classpath.org/ +.br +http://jnlp.sourceforge.net/netx/ From omajid at icedtea.classpath.org Mon Sep 13 07:26:37 2010 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Mon, 13 Sep 2010 14:26:37 +0000 Subject: /hg/release/icedtea6-1.9: netx: add a new man page for javaws Message-ID: changeset 4bd98e0d1da6 in /hg/release/icedtea6-1.9 details: http://icedtea.classpath.org/hg/release/icedtea6-1.9?cmd=changeset;node=4bd98e0d1da6 author: omajid date: Mon Sep 13 10:25:59 2010 -0400 netx: add a new man page for javaws 2010-09-13 Omair Majid Add a new man page for netx's javaws. * NEWS: Updated to indicate the new man page for javaws. * Makefile.am (stamps/add-netx.stamp): Copy over the javaws man page into the build. (clean-add-netx): Remove the javaws man pages on clean. (stamps/add-netx-debug.stamp): Copy over the javaws man page. (clean-add-netx-debug): Remove the javaws man page. (add-netx): New target. Alias for stamps/add-netx.stamp. (add-netx-debug): New target. Alias for stamps/add-netx-debug.stamp. * netx/javaws.1: New man page for netx's javaws. diffstat: 4 files changed, 157 insertions(+) ChangeLog | 13 ++++++ Makefile.am | 16 +++++++ NEWS | 5 ++ netx/javaws.1 | 123 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ diffs (216 lines): diff -r 397ea53cdc7c -r 4bd98e0d1da6 ChangeLog --- a/ChangeLog Fri Sep 10 14:21:17 2010 +0200 +++ b/ChangeLog Mon Sep 13 10:25:59 2010 -0400 @@ -1,3 +1,16 @@ 2010-09-10 Matthias Klose + + Add a new man page for netx's javaws. + * NEWS: Updated to indicate the new man page for javaws. + * Makefile.am + (stamps/add-netx.stamp): Copy over the javaws man page into the build. + (clean-add-netx): Remove the javaws man pages on clean. + (stamps/add-netx-debug.stamp): Copy over the javaws man page. + (clean-add-netx-debug): Remove the javaws man page. + (add-netx): New target. Alias for stamps/add-netx.stamp. + (add-netx-debug): New target. Alias for stamps/add-netx-debug.stamp. + * netx/javaws.1: New man page for netx's javaws. + 2010-09-10 Matthias Klose * patches/params-cast-size_t.patch: Update, fix build failure on s390. diff -r 397ea53cdc7c -r 4bd98e0d1da6 Makefile.am --- a/Makefile.am Fri Sep 10 14:21:17 2010 +0200 +++ b/Makefile.am Mon Sep 13 10:25:59 2010 -0400 @@ -1418,6 +1418,10 @@ stamps/add-netx.stamp: stamps/netx-dist. $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ $(BUILD_OUTPUT_DIR)/j2re-image/lib + cp $(NETX_SRCDIR)/javaws.1 \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 + cp $(NETX_SRCDIR)/javaws.1 \ + $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 touch stamps/add-netx.stamp clean-add-netx: @@ -1427,6 +1431,8 @@ clean-add-netx: rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar + rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 + rm -f $(BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 rm -f stamps/add-netx.stamp stamps/add-netx-debug.stamp: stamps/netx-dist.stamp extra-lib/about.jar @@ -1438,6 +1444,10 @@ stamps/add-netx-debug.stamp: stamps/netx $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib + cp $(NETX_SRCDIR)/javaws.1 \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 + cp $(NETX_SRCDIR)/javaws.1 \ + $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 touch stamps/add-netx-debug.stamp clean-add-netx-debug: @@ -1447,6 +1457,8 @@ clean-add-netx-debug: rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 rm -f stamps/add-netx-debug.stamp # OpenJDK ecj Targets @@ -2162,6 +2174,10 @@ netx: stamps/netx.stamp netx-dist: stamps/netx-dist.stamp +add-netx: stamps/add-netx.stamp + +add-netx-debug: stamps/add-netx-debug.stamp + overlay: stamps/overlay.stamp patch: stamps/patch.stamp diff -r 397ea53cdc7c -r 4bd98e0d1da6 NEWS --- a/NEWS Fri Sep 10 14:21:17 2010 +0200 +++ b/NEWS Mon Sep 13 10:25:59 2010 -0400 @@ -7,6 +7,11 @@ GX - http://bugs.gentoo.org/show_bug.cg GX - http://bugs.gentoo.org/show_bug.cgi?id=X CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY + +New in release 1.9.1 (2010-XX-XX): +* Netx + - New man page for javaws + New in release 1.9 (2010-09-07): diff -r 397ea53cdc7c -r 4bd98e0d1da6 netx/javaws.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/netx/javaws.1 Mon Sep 13 10:25:59 2010 -0400 @@ -0,0 +1,123 @@ +.TH javaws 1 "9 Sep 2010" +.SH NAME +javaws - a Java Web Start client +.SH SYNOPSYS +.B javaws +[-run-options] jnlp-file +.br +.B javaws +[-control-option] +.SH DESCRIPTION +.B javaws +is an implementation of a JNLP client. It uses a JNLP (Java Network +Launch Protocol) file to securely run a remote Java application or +a Java applet. This implementation of +.B javaws +is from the IcedTea project and is based on the NetX project. +.PP +A JNLP file is an xml file that describes how to securely run a +remote Java application or a Java applet. + +.SH OPTIONS +When specifying options, the name of the jnlp file must be the last +argument to +.B javaws +- all the options must preceede it. +.PP +The jnlp-file can either be a url or a local path. +.PP +.B Control Options +.PP +By default +.B javaws +will launch the jnlp file specified on the command line. The control +options can be used to change this behaviour. +.TP 12 +\-about +Shows a sample application that can be used to test the basic functionality +of this implementation. +.TP +\-viewer +Shows the trusted certificate viewer. This allows a user to list, examine, remove +or export trusted certificates. Note that this only reflects the certificates +trusted by +.B javaws +and not any other certificates or programs. + +.PP +.B Run Options +.PP +In the default mode, the following run-options can be used: +.TP 12 +\-basedir dir +Directory where the cache and certificates to be used are stored. +.TP +\-arg arg +Adds an application argument before launching. +.TP +\-param name=value +Adds an applet parameter before launching. +.TP +\-property name=value +Sets a system property before launching. +.TP +\-update seconds +Update check if seconds since last checked. +.TP +\-license +Display the GPL license and exit. +.TP +\-verbose +Enable verbose output. Very useful in debugging. +.TP +\-nosecurity +Disables the secure runtime environment. +.TP +\-noupdate +Disables checking for updates. +.TP +\-headless +Disables download window, other UIs. +.TP +\-strict +Enables strict checking of JNLP file format. Any deviations from +the JNLP DTD will cause +.B javaws +to abort. +.TP +\-umask=value +Sets the umask for files created by an application. +.TP +\-Xnofork +Do not create another JVM, even if the JNLP file asks for running in +a separate JVM. This is useful for debugging. +.TP +\-Jjava-option +This passes along java-option to the java binary that is running +javaws. For example, to make javaws run with a max heap size +of 80m, use -J-Xmx80m. +.TP +\-help +Print a help message and exit. + +.SH FILES +~/.netxrc specifies the location of the base directory + +.SH BUGS +There arent any known bugs. If you come across one, please file it at + http://icedtea.classpath.org/bugzilla/ +.br +Please run javaws in verbose mode and include that output along +with the jnlp file when filing out the bug report. + +.SH AUTHOR +Originally written by Jon. A. Maxwell. +.br +Currently maintained by the IcedTea contributors. + +.SH SEE ALSO +.BR java (1) +.br +http://icedtea.classpath.org/ +.br +http://jnlp.sourceforge.net/netx/ From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 08:02:35 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 15:02:35 +0000 Subject: [Bug 528] Crash with nvidia and xorg opengl when running netbeans Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=528 ------- Comment #2 from msporysz06 at gmail.com 2010-09-13 15:02 ------- same here, Gentoo 32bit, nvidia-drivers-260.19.04 # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x8340a3ab, pid=22318, tid=2237217648 # # JRE version: 6.0_20-b20 # Java VM: OpenJDK Client VM (17.0-b16 mixed mode linux-x86 ) # Derivative: IcedTea6 1.9 # Distribution: Built on Gentoo Base System release 1.12.13 (Thu Sep 9 12:43:56 CEST 2010) # Problematic frame: # C [libGL.so.1+0x5f3ab] # # An error report file with more information is saved as: # /home/*****/hs_err_pid22318.log # # If you would like to submit a bug report, please include # instructions how to reproduce the bug and visit: # http://icedtea.classpath.org/bugzilla # -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 08:04:19 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 15:04:19 +0000 Subject: [Bug 528] Crash with nvidia and xorg opengl when running netbeans Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=528 ------- Comment #3 from msporysz06 at gmail.com 2010-09-13 15:04 ------- Created an attachment (id=414) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=414&action=view) crash log2 -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 08:51:23 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 15:51:23 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 ------- Comment #6 from acrux at linuxmail.org 2010-09-13 15:51 ------- (In reply to comment #4) > Hmmm, that's interesting, I don't see any Shark frames in there at all. > Can you modify test_gamma to run with -Xint and see if the problem persists? > you 're right, adding -Xint now it's able to compiles fine. Thanks. acrux at lightning:~$ java -version java version "1.6.0_20" OpenJDK Runtime Environment (IcedTea6 1.9) (cruxppc-2.6-ppc64) OpenJDK 64-Bit Shark VM (build 17.0-b16, mixed mode) -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 08:55:26 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 15:55:26 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 ------- Comment #7 from acrux at linuxmail.org 2010-09-13 15:55 ------- (In reply to comment #5) > LLVM 2.7 contains two code generator target backends for powerpc, ppc32 and > ppc64. > > The LLVM ppc32 target backend are well tested, the LLVM project have been > running a 32bit ppc buildbot that have informed the developers of any > problems/regressions during the LLVM 2.7 stabilization phase. The LLVM ppc32 > backend are are able to pass the LLVM regression testsuite (make check). > Despite all testing of the ppc32 target backend, there are one major PPC JIT > bug left in LLVM 2.7: > See: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=399 / > http://llvm.org/bugs/show_bug.cgi?id=5201 > thanks these infos, i'm going to recompile llvm-2.7 using the patch provided in PR339. Anyway my bilds are able to end the "make check" process. I use this configure options: ./configure --prefix=/usr --enable-shared \ --enable-libffi --enable-optimize \ --enable-targets=host-only \ --enable-threads --enable-pic --enable-jit \ --disable-assertions thus on 32bit it compiles only ppc stuff and on 64bit only ppc64 stuff. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 09:15:40 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 16:15:40 +0000 Subject: [Bug 550] JVM fatal error - error occurred during error reporting Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=550 ------- Comment #3 from gnu_andrew at member.fsf.org 2010-09-13 16:15 ------- As the HotSpot output says 'Custom build', I assumed you'd built the existing version yourself. If it's a distribution package instead, I suggest filing a bug with them, referencing this one. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 09:20:58 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 16:20:58 +0000 Subject: [Bug 528] Crash with nvidia and xorg opengl when running netbeans Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=528 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |INVALID ------- Comment #4 from gnu_andrew at member.fsf.org 2010-09-13 16:20 ------- The crash doesn't occur in OpenJDK/IcedTea but in the GL driver. As this is proprietary, there's not really much we can do. Please reopen if you have further information or reproduce this with a FOSS driver. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 09:21:41 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 16:21:41 +0000 Subject: [Bug 528] Crash with nvidia and xorg opengl when running netbeans Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=528 ------- Comment #5 from gnu_andrew at member.fsf.org 2010-09-13 16:21 ------- I would suggest trying the nv or nouveau drivers for NVidia. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From omajid at redhat.com Mon Sep 13 10:15:43 2010 From: omajid at redhat.com (Omair Majid) Date: Mon, 13 Sep 2010 13:15:43 -0400 Subject: Documentation, man pages, updates and sources (Was: On ecj and @Override annotations for interface methods) In-Reply-To: <4A3934B6.1060301@sun.com> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <17c6771e0809180426o5483138cnd801325aa004a7ee@mail.gmail.com> <1221737607.3256.22.camel@dijkstra.wildebeest.org> <20080918113722.GG10250@bamboo.destinee.acro.gen.nz> <1221738084.3256.24.camel@dijkstra.wildebeest.org> <1221739400.3256.34.camel@dijkstra.wildebeest.org> <48D263FD.1080702@sun.com> <1221748518.3256.59.camel@dijkstra.wildebeest.org> <48D2A430.2070903@sun.com> <1222164188.3178.42.camel@dijkstra.wildebeest.org> <48D8F940.40600@sun.com> <1222517020.22140.19.camel@hermans.wildebeest.org> <48E5AF02.7060801@sun.com> <1244995337.3633.52.camel@hermans.wildebeest.org> <4A3934B6.1060301@sun.com> Message-ID: <4C8E5C3F.7010601@redhat.com> On 06/17/2009 02:23 PM, Joseph D. Darcy wrote: > Mark Wielaard wrote: >> Hi Joe, >> >> On Thu, 2008-10-02 at 22:34 -0700, Joseph D. Darcy wrote: >>> Mark Wielaard wrote: >>>> On Tue, 2008-09-23 at 07:12 -0700, Joseph D. Darcy wrote: >>>>>> Are these manpages written by hand these days? It has a comment that >>>>>> says: "Generated by html2man", but it doesn't say what the >>>>>> original html >>>>>> file is that it was generated from. >>>>> The process used in the past for man pages was that the docs team >>>>> works with us developers to write the HTML man pages, which are in >>>>> turn converted to SGML and *roff for Solaris and Linux, >>>>> respectively. It looks like the last update to the HTML page, >>>>> 6392810 "javac manpage needs to be updated to include JSR 269 and >>>>> other Mustang options," did not get converted to the other formats. >>>>> If the actual *nix man pages, regardless of format, are supposed to >>>>> be generated in this fashion, it would admittedly be a better >>>>> architecture to have them as generated files during the build and >>>>> not track all three versions of the man page under version control. >>>> So if the preferred form of the for making modifications to these >>>> documents is the HTML or SGML version that the doc team maintains it >>>> would be good to get those in the openjdk tree. >>> Agreed. >>> >>>> Does the documentation >>>> team maintain their own repository for these documents? >>> Yes; at the moment there is a Sun-internal-only repository for these >>> documents. IMO, at least the master manpages should be moved to a >>> public repository for JDK 7 and the build rearranged so that the >>> *roff and SGML files are generated and not separated tracked under >>> version control. I'll broach this with the docs team for later in JDK 7. >> >> Any progress on this? > > Not yet. However, the raw HTML sources are generally what are published > for pages like > > http://download.java.net/jdk7/docs/technotes/tools/share/wsgen.html > >> I saw the following Fedora bug report: >> "wsgen man page errors"t y >> https://bugzilla.redhat.com/show_bug.cgi?id=477700 >> As the comments explain that is really hard to fix without the >> corresponding source code of the manual pages available. >> >> Thanks, >> >> Mark > > I've forwarded this bug in the html -> man conversion process to the > docs team. > > -Joe > Any updates on this? The latest version of the man pages still have this bug. Perhaps the html2man tool being used by the docs team can be made available to the public? I am sure someone in the community will step up to fix it and make sure the man pages are generated during the build. Thanks, Omair From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 10:52:02 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 17:52:02 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 ------- Comment #8 from acrux at linuxmail.org 2010-09-13 17:51 ------- (In reply to comment #6) > (In reply to comment #4) > > Hmmm, that's interesting, I don't see any Shark frames in there at all. > > Can you modify test_gamma to run with -Xint and see if the problem persists? > > > > you 're right, adding -Xint now it's able to compiles fine. Thanks. > > acrux at lightning:~$ java -version > java version "1.6.0_20" > OpenJDK Runtime Environment (IcedTea6 1.9) (cruxppc-2.6-ppc64) > OpenJDK 64-Bit Shark VM (build 17.0-b16, mixed mode) > but it doesn't work properly, e.g. with firefox plugin: acrux at powermacG5:~$ firefox java version "1.6.0_20" OpenJDK Runtime Environment (IcedTea6 1.9) (cruxppc-2.6-ppc64) OpenJDK 64-Bit Shark VM (build 17.0-b16, mixed mode) # # A fatal error has been detected by the Java Runtime Environment: # # Internal Error (os_linux_zero.cpp:236), pid=14942, tid=17589992481280 # Error: caught unhandled signal 11 # # JRE version: 6.0_20-b20 # Java VM: OpenJDK 64-Bit Shark VM (17.0-b16 mixed mode linux-ppc64 ) # Derivative: IcedTea6 1.9 # Distribution: Custom build (Mon Sep 13 12:45:02 UTC 2010) # An error report file with more information is saved as: # /home/acrux/hs_err_pid14942.log # # If you would like to submit a bug report, please include # instructions how to reproduce the bug and visit: # http://icedtea.classpath.org/bugzilla # /home/acrux/ice19/shark/work/src/icedtea6-1.9/plugin/icedteanp/IcedTeaNPPlugin.cc:1779: thread 0xfffa3c21740: Error: Failed to flush bytes to output channel: Broken pipe hs_err_pid14942.log is attached. Insted Zero VM work fine. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 10:52:50 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 17:52:50 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 ------- Comment #9 from acrux at linuxmail.org 2010-09-13 17:52 ------- Created an attachment (id=415) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=415&action=view) hs_err_pid14942.log -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ahughes at redhat.com Mon Sep 13 11:42:30 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Mon, 13 Sep 2010 19:42:30 +0100 Subject: Documentation, man pages, updates and sources (Was: On ecj and @Override annotations for interface methods) In-Reply-To: <4C8E5C3F.7010601@redhat.com> References: <48D263FD.1080702@sun.com> <1221748518.3256.59.camel@dijkstra.wildebeest.org> <48D2A430.2070903@sun.com> <1222164188.3178.42.camel@dijkstra.wildebeest.org> <48D8F940.40600@sun.com> <1222517020.22140.19.camel@hermans.wildebeest.org> <48E5AF02.7060801@sun.com> <1244995337.3633.52.camel@hermans.wildebeest.org> <4A3934B6.1060301@sun.com> <4C8E5C3F.7010601@redhat.com> Message-ID: <20100913184230.GB22420@rivendell.middle-earth.co.uk> On 13:15 Mon 13 Sep , Omair Majid wrote: > On 06/17/2009 02:23 PM, Joseph D. Darcy wrote: > > Mark Wielaard wrote: > >> Hi Joe, > >> > >> On Thu, 2008-10-02 at 22:34 -0700, Joseph D. Darcy wrote: > >>> Mark Wielaard wrote: > >>>> On Tue, 2008-09-23 at 07:12 -0700, Joseph D. Darcy wrote: > >>>>>> Are these manpages written by hand these days? It has a comment that > >>>>>> says: "Generated by html2man", but it doesn't say what the > >>>>>> original html > >>>>>> file is that it was generated from. > >>>>> The process used in the past for man pages was that the docs team > >>>>> works with us developers to write the HTML man pages, which are in > >>>>> turn converted to SGML and *roff for Solaris and Linux, > >>>>> respectively. It looks like the last update to the HTML page, > >>>>> 6392810 "javac manpage needs to be updated to include JSR 269 and > >>>>> other Mustang options," did not get converted to the other formats. > >>>>> If the actual *nix man pages, regardless of format, are supposed to > >>>>> be generated in this fashion, it would admittedly be a better > >>>>> architecture to have them as generated files during the build and > >>>>> not track all three versions of the man page under version control. > >>>> So if the preferred form of the for making modifications to these > >>>> documents is the HTML or SGML version that the doc team maintains it > >>>> would be good to get those in the openjdk tree. > >>> Agreed. > >>> > >>>> Does the documentation > >>>> team maintain their own repository for these documents? > >>> Yes; at the moment there is a Sun-internal-only repository for these > >>> documents. IMO, at least the master manpages should be moved to a > >>> public repository for JDK 7 and the build rearranged so that the > >>> *roff and SGML files are generated and not separated tracked under > >>> version control. I'll broach this with the docs team for later in JDK 7. > >> > >> Any progress on this? > > > > Not yet. However, the raw HTML sources are generally what are published > > for pages like > > > > http://download.java.net/jdk7/docs/technotes/tools/share/wsgen.html > > > >> I saw the following Fedora bug report: > >> "wsgen man page errors"t y > >> https://bugzilla.redhat.com/show_bug.cgi?id=477700 > >> As the comments explain that is really hard to fix without the > >> corresponding source code of the manual pages available. > >> > >> Thanks, > >> > >> Mark > > > > I've forwarded this bug in the html -> man conversion process to the > > docs team. > > > > -Joe > > > > Any updates on this? The latest version of the man pages still have this > bug. > > Perhaps the html2man tool being used by the docs team can be made > available to the public? I am sure someone in the community will step up > to fix it and make sure the man pages are generated during the build. > > Thanks, > Omair As not much progress seems to have been made on this, and HTML is not an ideal format for the source document anyway, the most expidient solution would seem to be to create new source documents from the GPLed man files we do have. I'd suggest texinfo as a possible source format. It seems to be widely supported as both a source and destination format (http://www.gnu.org/software/texinfo/) and the tools seem to be readily available on both GNU/Linux and OpenSolaris. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Mon Sep 13 11:46:01 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 13 Sep 2010 18:46:01 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 ------- Comment #10 from acrux at linuxmail.org 2010-09-13 18:46 ------- (In reply to comment #9) > Created an attachment (id=415) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=415&action=view) [details] > hs_err_pid14942.log > ok, well. Shark VM it isn't yet usable on ppc64. It's not able to recompile itself too. Now i'm going to test my 32bit build that seems more stable. I'm going to start an auto-rebuild. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ahughes at redhat.com Tue Sep 14 04:02:00 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Tue, 14 Sep 2010 12:02:00 +0100 Subject: [patch] add a man page for javaws In-Reply-To: <4C892959.1010308@redhat.com> References: <4C892959.1010308@redhat.com> Message-ID: <20100914110159.GA14951@bree.middle-earth.co.uk> On 14:37 Thu 09 Sep , Omair Majid wrote: > Hi, > > OpenJDK6 contains a man page for javaws, but it has two problems: > - it not applicable to netx which has different quirks and options > - openjdk's javaws man page is only "built" on a 32 bit arch. > > The attached patch adds a man page for javaws, which overwrites the one > from openjdk. This man page should be much more relevant to anyone using > IcedTea. Any comments or concerns? > > 2010-09-09 Omair Majid > > Add a new man page for netx's javaws. > * Makefile.am > (stamps/add-netx.stamp): Copy over the javaws man page into the > build. > (clean-add-netx): Remove the javaws man pages on clean. > (stamps/add-netx-debug.stamp): Copy over the javaws man page. > (clean-add-netx-debug): Remove the javaws man page. > * netx/javaws.1: New man page for netx's javaws. > > Cheers, > Omair > diff -r e8452eabe369 Makefile.am > --- a/Makefile.am Wed Sep 08 13:16:22 2010 +0100 > +++ b/Makefile.am Thu Sep 09 14:15:03 2010 -0400 > @@ -1422,6 +1422,10 @@ > $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib > cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ > $(BUILD_OUTPUT_DIR)/j2re-image/lib > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 > touch stamps/add-netx.stamp > > clean-add-netx: > @@ -1431,6 +1435,8 @@ > rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar > rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp > rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar > + rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 > + rm -f $(BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 > rm -f stamps/add-netx.stamp > > stamps/add-netx-debug.stamp: stamps/netx-dist.stamp extra-lib/about.jar > @@ -1442,6 +1448,10 @@ > $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib > cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ > $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 > touch stamps/add-netx-debug.stamp > > clean-add-netx-debug: > @@ -1451,6 +1461,8 @@ > rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar > rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp > rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar > + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 > + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 > rm -f stamps/add-netx-debug.stamp > > # OpenJDK ecj Targets > @@ -2166,6 +2178,10 @@ > > netx-dist: stamps/netx-dist.stamp > > +add-netx: stamps/add-netx.stamp > + > +add-netx-debug: stamps/add-netx-debug.stamp > + > overlay: stamps/overlay.stamp > > patch: stamps/patch.stamp > diff -r e8452eabe369 netx/javaws.1 > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/netx/javaws.1 Thu Sep 09 14:15:03 2010 -0400 > @@ -0,0 +1,123 @@ > +.TH javaws 1 "9 Sep 2010" > +.SH NAME > +javaws - a Java Web Start client > +.SH SYNOPSYS > +.B javaws > +[-run-options] jnlp-file > +.br > +.B javaws > +[-control-option] > +.SH DESCRIPTION > +.B javaws > +is an implementation of a JNLP client. It uses a JNLP (Java Network > +Launch Protocol) file to securely run a remote Java application or > +a Java applet. This implementation of > +.B javaws > +is from the IcedTea project and is based on the NetX project. > +.PP > +A JNLP file is an xml file that describes how to securely run a > +remote Java application or a Java applet. > + > +.SH OPTIONS > +When specifying options, the name of the jnlp file must be the last > +argument to > +.B javaws > +- all the options must preceede it. > +.PP > +The jnlp-file can either be a url or a local path. > +.PP > +.B Control Options > +.PP > +By default > +.B javaws > +will launch the jnlp file specified on the command line. The control > +options can be used to change this behaviour. > +.TP 12 > +\-about > +Shows a sample application that can be used to test the basic functionality > +of this implementation. > +.TP > +\-viewer > +Shows the trusted certificate viewer. This allows a user to list, examine, remove > +or export trusted certificates. Note that this only reflects the certificates > +trusted by > +.B javaws > +and not any other certificates or programs. > + > +.PP > +.B Run Options > +.PP > +In the default mode, the following run-options can be used: > +.TP 12 > +\-basedir dir > +Directory where the cache and certificates to be used are stored. > +.TP > +\-arg arg > +Adds an application argument before launching. > +.TP > +\-param name=value > +Adds an applet parameter before launching. > +.TP > +\-property name=value > +Sets a system property before launching. > +.TP > +\-update seconds > +Update check if seconds since last checked. > +.TP > +\-license > +Display the GPL license and exit. > +.TP > +\-verbose > +Enable verbose output. Very useful in debugging. > +.TP > +\-nosecurity > +Disables the secure runtime environment. > +.TP > +\-noupdate > +Disables checking for updates. > +.TP > +\-headless > +Disables download window, other UIs. > +.TP > +\-strict > +Enables strict checking of JNLP file format. Any deviations from > +the JNLP DTD will cause > +.B javaws > +to abort. > +.TP > +\-umask=value > +Sets the umask for files created by an application. > +.TP > +\-Xnofork > +Do not create another JVM, even if the JNLP file asks for running in > +a separate JVM. This is useful for debugging. > +.TP > +\-Jjava-option > +This passes along java-option to the java binary that is running > +javaws. For example, to make javaws run with a max heap size > +of 80m, use -J-Xmx80m. > +.TP > +\-help > +Print a help message and exit. > + > +.SH FILES > +~/.netxrc specifies the location of the base directory > + > +.SH BUGS > +There arent any known bugs. If you come across one, please file it at > + http://icedtea.classpath.org/bugzilla/ > +.br > +Please run javaws in verbose mode and include that output along > +with the jnlp file when filing out the bug report. > + > +.SH AUTHOR > +Originally written by Jon. A. Maxwell. > +.br > +Currently maintained by the IcedTea contributors. > + > +.SH SEE ALSO > +.BR java (1) > +.br > +http://icedtea.classpath.org/ > +.br > +http://jnlp.sourceforge.net/netx/ This has broken the build on toadeater: cp /notnfs/nighttester/icedtea6-target-testing/netx/javaws.1 /notnfs/nighttester/icedtea6-target-testing/openjdk.build/j2sdk-image/man/man1 cp: cannot create regular file `/notnfs/nighttester/icedtea6-target-testing/openjdk.build/j2sdk-image/man/man1': No such file or directory make[1]: *** [stamps/add-netx.stamp] Error 1 make[1]: Leaving directory `/notnfs/nighttester/icedtea6-target-testing' I think you need to add a check to make sure this directory exists (maybe it is not built if docs are disabled?) I also notice that you missed adding the logic to the ecj build. Thanks, -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From bugzilla-daemon at icedtea.classpath.org Tue Sep 14 04:54:55 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Sep 2010 11:54:55 +0000 Subject: [Bug 553] New: Unknown error reported in the JNI Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=553 Summary: Unknown error reported in the JNI Product: IcedTea Version: unspecified Platform: all OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea6 AssignedTo: unassigned at icedtea.classpath.org ReportedBy: sylvestre.ledru at scilab.org Starting to JVM at the same time with "JNI_CreateJavaVM" may lead to an error JNI_ERR ("unknown error") is returned. However, it could return JNI_EEXIST ("VM already created") which will be more interesting. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 14 04:55:30 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Sep 2010 11:55:30 +0000 Subject: [Bug 553] Unknown error reported in the JNI Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=553 ------- Comment #1 from sylvestre.ledru at scilab.org 2010-09-14 11:55 ------- Created an attachment (id=417) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=417&action=view) The patch to fix this issue. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 14 04:55:53 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Sep 2010 11:55:53 +0000 Subject: [Bug 553] Unknown error reported in the JNI Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=553 sylvestre.ledru at scilab.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |sylvestre.ledru at scilab.org Severity|normal |trivial -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 14 05:13:38 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Sep 2010 12:13:38 +0000 Subject: [Bug 551] icedtea6-1.9 compile failure with --enable-zero --enable-shark on ppc64 Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=551 ------- Comment #11 from gbenson at redhat.com 2010-09-14 12:13 ------- Running with -Xint turns Shark off. So Shark is what was causing your crash. If you can get away with a 32-bit build then I'd recommend using that. LLVM on ppc64 is not well tested at all. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 14 06:58:25 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Sep 2010 13:58:25 +0000 Subject: [Bug 553] Unknown error reported in the JNI Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=553 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |WONTFIX ------- Comment #2 from gnu_andrew at member.fsf.org 2010-09-14 13:58 ------- I suggest discussing this with the upstream developers on hotspot-dev at openjdk.java.net. Making such a change would mean a change to expected error value returned and seems inappropriate for OpenJDK6, especially as this just seems to be a whim of the reporter. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 14 07:16:16 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Sep 2010 14:16:16 +0000 Subject: [Bug 553] Unknown error reported in the JNI Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=553 ------- Comment #3 from sylvestre.ledru at scilab.org 2010-09-14 14:16 ------- Thanks for the quick reply Andrew. However, I don't not consider this as a whim. For now, I just get JNI_ERR when the JVM is already launched. I have no way to know what is the actual error and how to handle it. Anyway, I sent the email on hotspot-dev at . -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From andrew at icedtea.classpath.org Tue Sep 14 08:00:06 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Tue, 14 Sep 2010 15:00:06 +0000 Subject: /hg/icedtea: Cleanup following bump to b106. Fix path to jvm.cf... Message-ID: changeset edaaf37351c4 in /hg/icedtea details: http://icedtea.classpath.org/hg/icedtea?cmd=changeset;node=edaaf37351c4 author: Andrew John Hughes date: Tue Sep 14 15:59:59 2010 +0100 Cleanup following bump to b106. Fix path to jvm.cfg in add targets and avoid issue with duplication in rt-source-files.txt. 2010-09-14 Andrew John Hughes * Makefile.am, (EXTRA_DIST): Remove xrender patches and ports. (clean-add-cacao): Fix path to jvm.cfg and only change if it exists. (clean-add-cacao- debug): Likewise. (clean-add-zero): Likewise. (clean-add-zero-debug): Likewise. (rt-source-files.txt): Remove any existing version prior to generation to avoid duplication of source files. diffstat: 2 files changed, 30 insertions(+), 8 deletions(-) ChangeLog | 14 ++++++++++++++ Makefile.am | 24 ++++++++++++++++-------- diffs (90 lines): diff -r ad2ccd203c51 -r edaaf37351c4 ChangeLog --- a/ChangeLog Thu Sep 09 19:31:54 2010 +0200 +++ b/ChangeLog Tue Sep 14 15:59:59 2010 +0100 @@ -1,3 +1,17 @@ 2010-09-09 Matthias Klose + + * Makefile.am, + (EXTRA_DIST): Remove xrender patches and + ports. + (clean-add-cacao): Fix path to jvm.cfg and + only change if it exists. + (clean-add-cacao-debug): Likewise. + (clean-add-zero): Likewise. + (clean-add-zero-debug): Likewise. + (rt-source-files.txt): Remove any existing + version prior to generation to avoid duplication + of source files. + 2010-09-09 Matthias Klose * patches/hotspot/default/icedtea-no-precompiled.patch: Remove. diff -r ad2ccd203c51 -r edaaf37351c4 Makefile.am --- a/Makefile.am Thu Sep 09 19:31:54 2010 +0200 +++ b/Makefile.am Tue Sep 14 15:59:59 2010 +0100 @@ -741,8 +741,7 @@ EXTRA_DIST = $(GENERATED_FILES) $(top_sr $(top_srcdir)/patches/debian/*.patch \ $(top_srcdir)/patches/extensions/*.patch \ $(top_srcdir)/patches/security/*.patch \ - $(top_srcdir)/patches/xrender/*.patch \ - tools-copy contrib ports extra overlays \ + tools-copy contrib extra overlays \ javaws.png javaws.desktop \ jconsole.desktop policytool.desktop \ $(JTREG_SRCS) \ @@ -2251,7 +2250,9 @@ endif clean-add-cacao: rm -rf $(BUILD_JRE_ARCH_DIR)/cacao - sed -i 's#-cacao KNOWN#-cacao ERROR#' jvm.cfg + if [ -e $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ] ; then \ + sed -i 's#-cacao KNOWN#-cacao ERROR#' $(BUILD_JRE_ARCH_DIR)/jvm.cfg ; \ + fi rm -f stamps/add-cacao.stamp stamps/add-cacao-debug.stamp: stamps/icedtea-debug.stamp stamps/cacao.stamp @@ -2271,7 +2272,9 @@ endif clean-add-cacao-debug: rm -rf $(BUILD_DEBUG_JRE_ARCH_DIR)/cacao - sed -i 's#-cacao KNOWN#-cacao ERROR#' jvm.cfg + if [ -e $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ] ; then \ + sed -i 's#-cacao KNOWN#-cacao ERROR#' $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ; \ + fi rm -f stamps/add-cacao-debug.stamp # configure script arguments, quoted in single quotes @@ -2336,8 +2339,10 @@ clean-add-zero: rm -rf $(BUILD_JRE_ARCH_DIR)/zero rm -rf $(BUILD_JRE_ARCH_DIR)/shark rm -rf zerovm - sed -i 's#-zero KNOWN#-zero ERROR#' jvm.cfg - sed -i 's#-shark KNOWN#-shark ERROR#' jvm.cfg + if [ -e $(BUILD_JRE_ARCH_DIR)/jvm.cfg ] ; then \ + sed -i 's#-zero KNOWN#-zero ERROR#' $(BUILD_JRE_ARCH_DIR)/jvm.cfg ; \ + sed -i 's#-shark KNOWN#-shark ERROR#' $(BUILD_JRE_ARCH_DIR)/jvm.cfg ; \ + fi rm -f stamps/add-zero.stamp stamps/add-zero-debug.stamp: stamps/icedtea-debug.stamp @@ -2373,8 +2378,10 @@ clean-add-zero-debug: rm -rf $(BUILD_DEBUG_JRE_ARCH_DIR)/zero rm -rf $(BUILD_DEBUG_JRE_ARCH_DIR)/shark rm -rf zerovm - sed -i 's#-zero KNOWN#-zero ERROR#' jvm.cfg - sed -i 's#-shark KNOWN#-shark ERROR#' jvm.cfg + if [ -e $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ] ; then \ + sed -i 's#-zero KNOWN#-zero ERROR#' $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ; \ + sed -i 's#-shark KNOWN#-shark ERROR#' $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg ; \ + fi rm -f stamps/add-zero-debug.stamp # end additional VMs @@ -2494,6 +2501,7 @@ jtregcheck: $(TESTS_TO_RUN) # Support classes for non-OpenJDK bootstraps rt-source-files.txt: $(OPENJDK_BOOT_TREE) + rm -f $@ for dir in $(ICEDTEA_BOOTSTRAP_DIRS) ; \ do \ $(FIND) $(abs_top_builddir)/$$dir -name '*.java' >> $@; \ From bugzilla-daemon at icedtea.classpath.org Tue Sep 14 08:44:29 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Sep 2010 15:44:29 +0000 Subject: [Bug 553] Unknown error reported in the JNI Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=553 ------- Comment #4 from gnu_andrew at member.fsf.org 2010-09-14 15:44 ------- You could try using strace to see what is causing the error. OpenJDK6 is a stable platform and people come to expect certain results from calling functions. While it's a pain that this makes the error here hard to diagnose (an issue on which I agree with you and it seems others on the web have hit this too), there will be code that has been written on the assumption that doing X results in this error being thrown and not JNI_EEXIST. I used the term 'whim' because you're suggesting that, for the benefit of you debugging your program, we should risk breaking the expected behaviour for all other users of the JDK, when there are other, albeit less convenient ways of debugging your failure. You can use debugging tools like strace and gdb. There's nothing stopping you just working with a version patched locally. To scale that up to every user of OpenJDK6 requires more consideration. Further, it would be wise to see what the HotSpot developers have to say first. There may be a very good reason this hasn't been done or they may not. But I didn't develop this code and I wouldn't presume to guess whether this choice was made on sound reasoning or just by chance. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 14 08:56:57 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Tue, 14 Sep 2010 15:56:57 +0000 Subject: [Bug 553] Unknown error reported in the JNI Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=553 ------- Comment #5 from sylvestre.ledru at scilab.org 2010-09-14 15:56 ------- Actually, I fixed my issue. I just would have saved me some time if I had the error "VM already created" instead of "unknown error". Indeed, I had to play with gdb/strace to understand that the VM was already started. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From omajid at redhat.com Tue Sep 14 09:07:17 2010 From: omajid at redhat.com (Omair Majid) Date: Tue, 14 Sep 2010 12:07:17 -0400 Subject: [patch] add a man page for javaws In-Reply-To: <20100914110159.GA14951@bree.middle-earth.co.uk> References: <4C892959.1010308@redhat.com> <20100914110159.GA14951@bree.middle-earth.co.uk> Message-ID: <4C8F9DB5.9090901@redhat.com> Hi, On 09/14/2010 07:02 AM, Dr Andrew John Hughes wrote: > On 14:37 Thu 09 Sep , Omair Majid wrote: >> Hi, >> >> OpenJDK6 contains a man page for javaws, but it has two problems: >> - it not applicable to netx which has different quirks and options >> - openjdk's javaws man page is only "built" on a 32 bit arch. >> >> The attached patch adds a man page for javaws, which overwrites the one >> from openjdk. This man page should be much more relevant to anyone using >> IcedTea. Any comments or concerns? >> >> 2010-09-09 Omair Majid >> >> Add a new man page for netx's javaws. >> * Makefile.am >> (stamps/add-netx.stamp): Copy over the javaws man page into the >> build. >> (clean-add-netx): Remove the javaws man pages on clean. >> (stamps/add-netx-debug.stamp): Copy over the javaws man page. >> (clean-add-netx-debug): Remove the javaws man page. >> * netx/javaws.1: New man page for netx's javaws. >> >> Cheers, >> Omair > > This has broken the build on toadeater: > > cp /notnfs/nighttester/icedtea6-target-testing/netx/javaws.1 /notnfs/nighttester/icedtea6-target-testing/openjdk.build/j2sdk-image/man/man1 > cp: cannot create regular file `/notnfs/nighttester/icedtea6-target-testing/openjdk.build/j2sdk-image/man/man1': No such file or directory > make[1]: *** [stamps/add-netx.stamp] Error 1 > make[1]: Leaving directory `/notnfs/nighttester/icedtea6-target-testing' > > I think you need to add a check to make sure this directory exists (maybe it is not built if docs are disabled?) > > I also notice that you missed adding the logic to the ecj build. > > Thanks, Ah, sorry about that. I looked into it and the build logic seems a little weird. Doing a 'make hotspot' causes netx/plugin to be built but not the rest of the jdk. The directories $(build)/jre/lib/$(arch) are created, so netx.jar and plugin.jar are copied into jre/lib successfully, but since the man directory is not, the copying of the man page fails. The attached patch makes the copying of man pages conditional on ENABLE_DOCS as well as the man folder existing. I am not sure if this is the best solution though. Any thoughts? As for ecj, I am slightly confused. I updated all the targets that create or remove netx.jar. Are netx/plugin even built with ecj? Thanks, Omair -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea6-javaws-man-updated.patch Type: text/x-patch Size: 2947 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100914/f3ca002e/icedtea6-javaws-man-updated.patch From ptisnovs at icedtea.classpath.org Tue Sep 14 09:38:21 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 14 Sep 2010 16:38:21 +0000 Subject: /hg/gfx-test: Corrected reporter settings (for RoundRectangle en... Message-ID: changeset f5fecf349633 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=f5fecf349633 author: Pavel Tisnovsky date: Tue Sep 14 18:38:43 2010 +0200 Corrected reporter settings (for RoundRectangle entity), added licence text to TestResult.java and changed build targets in Makefile. diffstat: 3 files changed, 49 insertions(+), 9 deletions(-) Makefile | 16 ++++++------ src/org/gfxtest/reporter/Reporter.java | 2 - src/org/gfxtest/reporter/TestResult.java | 40 ++++++++++++++++++++++++++++++ diffs (100 lines): diff -r e3e509624def -r f5fecf349633 Makefile --- a/Makefile Thu Sep 09 19:26:50 2010 +0200 +++ b/Makefile Tue Sep 14 18:38:43 2010 +0200 @@ -136,7 +136,7 @@ TESTSUITES = $(shell ls -1 src/org/gfxte SAMPLE_IMAGES = $(shell ls -1 src/org/gfxtest/testsuites | sed -n -e 's/\([A-Za-z0-9]*\)\.java/samples\/\1/p') -all: build sample_images runtests compareresults report +all: build sample_images runtests build: $(CLASSES)/stamp $(OUTPUT)/stamp gfxtest.jar @@ -184,6 +184,11 @@ runtests: gfxtest.jar $(TESTSUITES) mkdir -p $@ $(REFERENCE_JAVA) -cp gfxtest.jar $(TEST_PACKAGE).$(subst samples/,,$@) $(RUN_OPTIONS) -o=$@ +compare-results: compareresults + +compareresults: $(COMPARE_RESULTS) + mkdir -p masks + # for output/NormalLines the internal macros are set to following: # $@ - results/NormalLines # $< - output/NormalLines @@ -192,14 +197,9 @@ runtests: gfxtest.jar $(TESTSUITES) mkdir -p $@ java -jar Lupic.jar -s1=$(SAMPLES)/$* -s2=$< -m=masks -b=bitmap-masks -o=$@ --html --html-results --xml-results --diff-images --struct-diff-images -compare-results: compareresults +report: compareresults gfxtest.jar + java -cp gfxtest.jar org.gfxtest.reporter.Reporter -i=$(RESULTS) -o=$(RESULTS) -compareresults: $(COMPARE_RESULTS) - cp results.html $(RESULTS) - mkdir -p masks - -report: gfxtest.jar - java -cp gfxtest.jar org.gfxtest.reporter.Reporter -i=$(RESULTS) -o=$(RESULTS) cleanall: clean clean-output clean-results clean-samples clean-all: cleanall diff -r e3e509624def -r f5fecf349633 src/org/gfxtest/reporter/Reporter.java --- a/src/org/gfxtest/reporter/Reporter.java Thu Sep 09 19:26:50 2010 +0200 +++ b/src/org/gfxtest/reporter/Reporter.java Tue Sep 14 18:38:43 2010 +0200 @@ -66,7 +66,7 @@ public class Reporter private static final String[] SPECTESTS = new String[] {"BlankImage"}; - private static final String[] ENTITIES = new String[] {"Lines", "Polylines", "Polygons", "Rectangles", "Round Rectangles", "Circles", "Ellipses", "Arcs"}; + private static final String[] ENTITIES = new String[] {"Lines", "Polylines", "Polygons", "Rectangles", "RoundRectangles", "Circles", "Ellipses", "Arcs"}; private static final String[] STYLES = new String[] {"Normal", "Filled", "Dashed", "AA"}; diff -r e3e509624def -r f5fecf349633 src/org/gfxtest/reporter/TestResult.java --- a/src/org/gfxtest/reporter/TestResult.java Thu Sep 09 19:26:50 2010 +0200 +++ b/src/org/gfxtest/reporter/TestResult.java Tue Sep 14 18:38:43 2010 +0200 @@ -1,3 +1,43 @@ package org.gfxtest.reporter; +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + package org.gfxtest.reporter; public class TestResult From joe.darcy at oracle.com Tue Sep 14 09:55:09 2010 From: joe.darcy at oracle.com (Joe Darcy) Date: Tue, 14 Sep 2010 09:55:09 -0700 Subject: Documentation, man pages, updates and sources (Was: On ecj and @Override annotations for interface methods) In-Reply-To: <4C8E5C3F.7010601@redhat.com> References: <20080917084136.GA10250@bamboo.destinee.acro.gen.nz> <48D0C79F.1080909@redhat.com> <20080917235155.GA10355@rivendell.middle-earth.co.uk> <20080918010821.GD10250@bamboo.destinee.acro.gen.nz> <17c6771e0809180328s3aeacca4m8a3969ba2abf4c84@mail.gmail.com> <1221735243.3256.14.camel@dijkstra.wildebeest.org> <17c6771e0809180426o5483138cnd801325aa004a7ee@mail.gmail.com> <1221737607.3256.22.camel@dijkstra.wildebeest.org> <20080918113722.GG10250@bamboo.destinee.acro.gen.nz> <1221738084.3256.24.camel@dijkstra.wildebeest.org> <1221739400.3256.34.camel@dijkstra.wildebeest.org> <48D263FD.1080702@sun.com> <1221748518.3256.59.camel@dijkstra.wildebeest.org> <48D2A430.2070903@sun.com> <1222164188.3178.42.camel@dijkstra.wildebeest.org> <48D8F940.40600@sun.com> <1222517020.22140.19.camel@hermans.wildebeest.org> <48E5AF02.7060801@sun.com> <1244995337.3633.52.camel@hermans.wildebeest.org> <4A3934B6.1060301@sun.com> <4C8E5C3F.7010601@redhat.com> Message-ID: <4C8FA8ED.3070600@oracle.com> Omair Majid wrote: > On 06/17/2009 02:23 PM, Joseph D. Darcy wrote: >> Mark Wielaard wrote: >>> Hi Joe, >>> >>> On Thu, 2008-10-02 at 22:34 -0700, Joseph D. Darcy wrote: >>>> Mark Wielaard wrote: >>>>> On Tue, 2008-09-23 at 07:12 -0700, Joseph D. Darcy wrote: >>>>>>> Are these manpages written by hand these days? It has a comment >>>>>>> that >>>>>>> says: "Generated by html2man", but it doesn't say what the >>>>>>> original html >>>>>>> file is that it was generated from. >>>>>> The process used in the past for man pages was that the docs team >>>>>> works with us developers to write the HTML man pages, which are in >>>>>> turn converted to SGML and *roff for Solaris and Linux, >>>>>> respectively. It looks like the last update to the HTML page, >>>>>> 6392810 "javac manpage needs to be updated to include JSR 269 and >>>>>> other Mustang options," did not get converted to the other formats. >>>>>> If the actual *nix man pages, regardless of format, are supposed to >>>>>> be generated in this fashion, it would admittedly be a better >>>>>> architecture to have them as generated files during the build and >>>>>> not track all three versions of the man page under version control. >>>>> So if the preferred form of the for making modifications to these >>>>> documents is the HTML or SGML version that the doc team maintains it >>>>> would be good to get those in the openjdk tree. >>>> Agreed. >>>> >>>>> Does the documentation >>>>> team maintain their own repository for these documents? >>>> Yes; at the moment there is a Sun-internal-only repository for these >>>> documents. IMO, at least the master manpages should be moved to a >>>> public repository for JDK 7 and the build rearranged so that the >>>> *roff and SGML files are generated and not separated tracked under >>>> version control. I'll broach this with the docs team for later in >>>> JDK 7. >>> >>> Any progress on this? >> >> Not yet. However, the raw HTML sources are generally what are published >> for pages like >> >> http://download.java.net/jdk7/docs/technotes/tools/share/wsgen.html >> >>> I saw the following Fedora bug report: >>> "wsgen man page errors"t y >>> https://bugzilla.redhat.com/show_bug.cgi?id=477700 >>> As the comments explain that is really hard to fix without the >>> corresponding source code of the manual pages available. >>> >>> Thanks, >>> >>> Mark >> >> I've forwarded this bug in the html -> man conversion process to the >> docs team. >> >> -Joe >> > > Any updates on this? The latest version of the man pages still have > this bug. No, unfortunately no progress on this to report yet. -Joe From bugzilla-daemon at icedtea.classpath.org Tue Sep 14 17:45:36 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 15 Sep 2010 00:45:36 +0000 Subject: [Bug 555] New: Crash in openoffice opening docx file Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=555 Summary: Crash in openoffice opening docx file Product: IcedTea Version: unspecified Platform: x86 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea6 AssignedTo: unassigned at icedtea.classpath.org ReportedBy: mothlight at fastmail.fm Always reproduce-able. $ ./swriter.bin --debug Then file, open "Job Description - Climate Change& Carbon Markets World Vision.docx" console shows crash: $ ./swriter.bin --debug Job is executing! No frame to handle DocumentController! Found DOCUMENTEVENT EnvType, but DISPATCH is needed Job is executing! Sep 15, 2010 10:37:50 AM ast.DocumentController INFO: Start AuthorSupportTool Sep 15, 2010 10:37:51 AM ast.gui.util.MessageBox INFO: MessageBox initialized! Sep 15, 2010 10:37:51 AM ast.common.ConfigHandler INFO: ConfigHandler initialized! Sep 15, 2010 10:37:51 AM ast.common.lang.LanguageController INFO: LanguageController initialized! Using locale: en Sep 15, 2010 10:37:51 AM ast.backup.BackupController INFO: BackupController initialized! Sep 15, 2010 10:37:51 AM ast.common.util.PathUtils INFO: PathUtils initialized! Sep 15, 2010 10:37:53 AM ast.quotesrc.SourceController INFO: SourceController initialized! Sep 15, 2010 10:37:53 AM ast.common.UserController INFO: UserController initialized! Sep 15, 2010 10:37:53 AM ast.leitmotif.FocalPointController INFO: FocalPointController initialized! Sep 15, 2010 10:37:53 AM ast.notes.NoteController INFO: NoteController initialized! Sep 15, 2010 10:37:53 AM ast.notes.PostItController INFO: PostItController initialized! Sep 15, 2010 10:37:53 AM ast.template.MetadataController INFO: MetadataController initialized! Sep 15, 2010 10:37:53 AM ast.grammar.AnglicismContextMenu INFO: AnglicismContextMenu initialized! Sep 15, 2010 10:37:53 AM ast.DocumentController INFO: AuthorSupportTool initialized! # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x41427c4f, pid=25910, tid=3077872272 # # JRE version: 6.0_18-b18 # Java VM: OpenJDK Client VM (14.0-b16 mixed mode linux-x86 ) # Derivative: IcedTea6 1.8.1 # Distribution: Custom build (Thu Aug 5 07:59:11 UTC 2010) # Problematic frame: # C [libswli.so+0x38cc4f] _ZN11SwNodeIndexC1ERKS_l+0x29 # # An error report file with more information is saved as: # /tmp/hs_err_pid25910.log # # If you would like to submit a bug report, please include # instructions how to reproduce the bug and visit: # http://icedtea.classpath.org/bugzilla # Segmentation fault (core dumped) -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 14 17:46:37 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 15 Sep 2010 00:46:37 +0000 Subject: [Bug 555] Crash in openoffice opening docx file Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=555 ------- Comment #1 from mothlight at fastmail.fm 2010-09-15 00:46 ------- Created an attachment (id=419) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=419&action=view) error report file -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Tue Sep 14 17:47:23 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 15 Sep 2010 00:47:23 +0000 Subject: [Bug 555] Crash in openoffice opening docx file Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=555 ------- Comment #2 from mothlight at fastmail.fm 2010-09-15 00:47 ------- Created an attachment (id=420) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=420&action=view) Document which crashes Openoffice, generating jre crash -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Sep 15 03:16:13 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 15 Sep 2010 10:16:13 +0000 Subject: [Bug 555] Crash in openoffice opening docx file Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=555 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |INVALID ------- Comment #3 from gnu_andrew at member.fsf.org 2010-09-15 10:16 ------- This is a failure in OpenOffice.org code. You should report it to the OpenOffice.org developers. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ptisnovs at icedtea.classpath.org Thu Sep 16 09:13:47 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Thu, 16 Sep 2010 16:13:47 +0000 Subject: /hg/gfx-test: arcStep variable could be changed now by any test ... Message-ID: changeset 122a326e04ad in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=122a326e04ad author: Pavel Tisnovsky date: Thu Sep 16 18:14:11 2010 +0200 arcStep variable could be changed now by any test case. It is useful, for example, to decrease number of images generated by some tests. diffstat: 1 file changed, 13 insertions(+), 2 deletions(-) src/org/gfxtest/framework/GfxTest.java | 15 +++++++++++++-- diffs (38 lines): diff -r f5fecf349633 -r 122a326e04ad src/org/gfxtest/framework/GfxTest.java --- a/src/org/gfxtest/framework/GfxTest.java Tue Sep 14 18:38:43 2010 +0200 +++ b/src/org/gfxtest/framework/GfxTest.java Thu Sep 16 18:14:11 2010 +0200 @@ -56,6 +56,7 @@ public abstract class GfxTest protected String suiteName = null; protected static final int CROSS_SIZE = 20; protected int currentTestNumber = 0; + private int arcStep = ARC_STEP; /** * Minor radius for circles, ellipses etc. @@ -318,9 +319,9 @@ public abstract class GfxTest int minArcHeight, int maxArcHeight, float[] dash1patterns, float[] dash2patterns, int cap, int join, float width, float scale, float eccentricity) { - for (int arcHeight = minArcHeight; arcHeight <= maxArcHeight; arcHeight += ARC_STEP) + for (int arcHeight = minArcHeight; arcHeight <= maxArcHeight; arcHeight += this.arcStep) { - for (int arcWidth = minArcWidth; arcWidth <= maxArcWidth; arcWidth += ARC_STEP) + for (int arcWidth = minArcWidth; arcWidth <= maxArcWidth; arcWidth += this.arcStep) { drawEntityUsingVariousDashPatterns(configuration, dash1patterns, dash2patterns, cap, join, width, scale, eccentricity, arcHeight, arcWidth); @@ -510,4 +511,14 @@ public abstract class GfxTest graphics.drawLine(x - size, y, x + size, y); } + public int getArcStep() + { + return arcStep; + } + + public void setArcStep(int arcStep) + { + this.arcStep = arcStep; + } + } From dbhole at icedtea.classpath.org Thu Sep 16 10:03:56 2010 From: dbhole at icedtea.classpath.org (dbhole at icedtea.classpath.org) Date: Thu, 16 Sep 2010 17:03:56 +0000 Subject: /hg/icedtea6: PR556: Re-implement applet initialization to be se... Message-ID: changeset c764b38139a5 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=c764b38139a5 author: Deepak Bhole date: Thu Sep 16 13:03:57 2010 -0400 PR556: Re-implement applet initialization to be serialialized, to fix current and future possible race conditions. diffstat: 8 files changed, 232 insertions(+), 315 deletions(-) ChangeLog | 41 + NEWS | 2 plugin/icedteanp/IcedTeaJavaRequestProcessor.h | 2 plugin/icedteanp/IcedTeaNPPlugin.cc | 67 + plugin/icedteanp/IcedTeaNPPlugin.h | 4 plugin/icedteanp/IcedTeaPluginUtils.cc | 8 plugin/icedteanp/java/sun/applet/PluginAppletViewer.java | 378 ++++------- plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java | 45 - diffs (truncated from 967 to 500 lines): diff -r 1c5acca8abfd -r c764b38139a5 ChangeLog --- a/ChangeLog Mon Sep 13 10:21:58 2010 -0400 +++ b/ChangeLog Thu Sep 16 13:03:57 2010 -0400 @@ -1,3 +1,44 @@ 2010-09-13 Omair Majid + + PR556: Re-implement applet initialization to be serialialized, to fix + current and future possible race conditions. + * plugin/icedteanp/IcedTeaJavaRequestProcessor.h: Updated timeout to 3 + minutes. + * plugin/icedteanp/IcedTeaNPPlugin.cc + (ITNP_New): Remove the tag_message string, don't send any data to Java + side and instead, populate the new ITNPPluginData.applet_tag field with + the tag info. Do cleanup accordingly. + (ITNP_SetWindow): Send all (handle, size and tag) initialization + information to java in a single message. Cleanup accordingly for newly + added variables. + * plugin/icedteanp/IcedTeaPluginUtils.cc + (getReference): Use a negative decreasing reference count to prevent + clashes with references for Java-side requests. + * plugin/icedteanp/IcedTeaNPPlugin.h: Rename the instance_string field of + ITNPPluginData to instance_id, and add an applet_tag field. + * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java + (PluginAppletPanelFactory.createPanel): Remove code that tried to account + for percent heights and widths. This is done by the browser now. + (reFrame): Same. + (PluginAppletViewer): Update constructor to not take height and width + factor information. + (handleMessage): Update function for new protocol that now passes all + information relevant to initialization in a single message. + (skipSpace): Accept a new int array that contains the character at the + current position in the stream. Use the value accordingly. + (scanIdentifier): Same. + (skipComment): Same. + (scanTag): Same. + (parse): Updated all function signatures to accept width and height info. + Initialize an int array (for fake pass-by-reference) that contains + position of current character in the stream. Inject width and height + information into the atts table. + * plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java: Updated + thread count needed for initialization. + (okayToProcess): Remove function that is no longer needed with the + serialized initialization code. + (ConsumerThread.run): Remove call to okayToProcess(). + 2010-09-13 Omair Majid Add a new man page for netx's javaws. diff -r 1c5acca8abfd -r c764b38139a5 NEWS --- a/NEWS Mon Sep 13 10:21:58 2010 -0400 +++ b/NEWS Thu Sep 16 13:03:57 2010 -0400 @@ -16,6 +16,8 @@ New in release 1.10 (2010-XX-XX): - S6438179: XToolkit.isTraySupported() result has nothing to do with the system tray * Netx - A new man page for javaws. +* Plugin + - PR556: Applet initialization code is prone to race conditions New in release 1.9 (2010-09-07): diff -r 1c5acca8abfd -r c764b38139a5 plugin/icedteanp/IcedTeaJavaRequestProcessor.h --- a/plugin/icedteanp/IcedTeaJavaRequestProcessor.h Mon Sep 13 10:21:58 2010 -0400 +++ b/plugin/icedteanp/IcedTeaJavaRequestProcessor.h Thu Sep 16 13:03:57 2010 -0400 @@ -46,7 +46,7 @@ exception statement from your version. * #include "IcedTeaNPPlugin.h" #include "IcedTeaPluginUtils.h" -#define REQUESTTIMEOUT 120 +#define REQUESTTIMEOUT 180 /* * This struct holds data specific to a Java operation requested by the plugin diff -r 1c5acca8abfd -r c764b38139a5 plugin/icedteanp/IcedTeaNPPlugin.cc --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Mon Sep 13 10:21:58 2010 -0400 +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Thu Sep 16 13:03:57 2010 -0400 @@ -249,7 +249,7 @@ pthread_cond_t cond_message_available = // Creates a new icedtea np plugin instance. This function creates a // ITNPPluginData* and stores it in instance->pdata. The following -// ITNPPluginData fiels are initialized: instance_string, in_pipe_name, +// ITNPPluginData fiels are initialized: instance_id, in_pipe_name, // in_from_appletviewer, in_watch_source, out_pipe_name, // out_to_appletviewer, out_watch_source, appletviewer_mutex, owner, // appletviewer_alive. In addition two pipe files are created. All @@ -284,7 +284,6 @@ ITNP_New (NPMIMEType pluginType, NPP ins gchar* documentbase = NULL; gchar* read_message = NULL; gchar* applet_tag = NULL; - gchar* tag_message = NULL; gchar* cookie_info = NULL; NPObject* npPluginObj = NULL; @@ -308,17 +307,17 @@ ITNP_New (NPMIMEType pluginType, NPP ins // start the jvm if needed start_jvm_if_needed(); - // Initialize data->instance_string. + // Initialize data->instance_id. // - // instance_string should be unique for this process so we use a + // instance_id should be unique for this process so we use a // combination of getpid and plugin_instance_counter. // // Critical region. Reference and increment plugin_instance_counter // global. g_mutex_lock (plugin_instance_mutex); - // data->instance_string - data->instance_string = g_strdup_printf ("%d", + // data->instance_id + data->instance_id = g_strdup_printf ("%d", instance_counter); g_mutex_unlock (plugin_instance_mutex); @@ -335,11 +334,8 @@ ITNP_New (NPMIMEType pluginType, NPP ins // Send applet tag message to appletviewer. applet_tag = plugin_create_applet_tag (argc, argn, argv); - tag_message = (gchar*) malloc(strlen(applet_tag)*sizeof(gchar) + strlen(documentbase)*sizeof(gchar) + 32); - g_sprintf(tag_message, "instance %d tag %s %s", instance_counter, documentbase, applet_tag); - - //plugin_send_message_to_appletviewer (data, data->instance_string); - plugin_send_message_to_appletviewer (tag_message); + data->applet_tag = (gchar*) malloc(strlen(applet_tag)*sizeof(gchar) + strlen(documentbase)*sizeof(gchar) + 32); + g_sprintf(data->applet_tag, "tag %s %s", documentbase, applet_tag); data->is_applet_instance = true; } @@ -371,8 +367,12 @@ ITNP_New (NPMIMEType pluginType, NPP ins data->appletviewer_mutex = NULL; // cleanup_instance_string: - g_free (data->instance_string); - data->instance_string = NULL; + g_free (data->instance_id); + data->instance_id = NULL; + + // cleanup applet tag: + g_free (data->applet_tag); + data->applet_tag = NULL; // cleanup_data: // Eliminate back-pointer to plugin instance. @@ -385,8 +385,6 @@ ITNP_New (NPMIMEType pluginType, NPP ins instance->pdata = NULL; cleanup_done: - g_free (tag_message); - tag_message = NULL; g_free (applet_tag); applet_tag = NULL; g_free (read_message); @@ -750,28 +748,33 @@ ITNP_SetWindow (NPP instance, NPWindow* } else { + // Else this is initialization PLUGIN_DEBUG ("ITNP_SetWindow: setting window.\n"); // Critical region. Send messages to appletviewer. g_mutex_lock (data->appletviewer_mutex); - gchar *window_message = g_strdup_printf ("instance %d handle %ld", - id, (gulong) window->window); - plugin_send_message_to_appletviewer (window_message); - g_free (window_message); + // Store the window handle and dimensions + data->window_handle = window->window; + data->window_width = window->width; + data->window_height = window->height; - window_message = g_strdup_printf ("instance %d width %d height %d", - id, - window->width, - window->height); - plugin_send_message_to_appletviewer (window_message); - g_free (window_message); - window_message = NULL; + // Now we have everything. Send this data to the Java side + + gchar* instance_msg = g_strdup_printf ("instance %s handle %ld width %d height %d %s", + data->instance_id, + (gulong) data->window_handle, + data->window_width, + data->window_height, + data->applet_tag); + + plugin_send_message_to_appletviewer (instance_msg); + + g_free(instance_msg); + instance_msg = NULL; g_mutex_unlock (data->appletviewer_mutex); - // Store the window handle. - data->window_handle = window->window; } PLUGIN_DEBUG ("ITNP_SetWindow return\n"); @@ -1921,8 +1924,12 @@ plugin_data_destroy (NPP instance) tofree->appletviewer_mutex = NULL; // cleanup_instance_string: - g_free (tofree->instance_string); - tofree->instance_string = NULL; + g_free (tofree->instance_id); + tofree->instance_id = NULL; + + // cleanup applet tag + g_free (tofree->applet_tag); + tofree->applet_tag = NULL; g_free(tofree->source); tofree->source = NULL; diff -r 1c5acca8abfd -r c764b38139a5 plugin/icedteanp/IcedTeaNPPlugin.h --- a/plugin/icedteanp/IcedTeaNPPlugin.h Mon Sep 13 10:21:58 2010 -0400 +++ b/plugin/icedteanp/IcedTeaNPPlugin.h Thu Sep 16 13:03:57 2010 -0400 @@ -68,7 +68,9 @@ struct ITNPPluginData struct ITNPPluginData { // A unique identifier for this plugin window. - gchar* instance_string; + gchar* instance_id; + // The applet tag sent to Java side + gchar* applet_tag; // Mutex to protect appletviewer_alive. GMutex* appletviewer_mutex; // Back-pointer to the plugin instance to which this data belongs. diff -r 1c5acca8abfd -r c764b38139a5 plugin/icedteanp/IcedTeaPluginUtils.cc --- a/plugin/icedteanp/IcedTeaPluginUtils.cc Mon Sep 13 10:21:58 2010 -0400 +++ b/plugin/icedteanp/IcedTeaPluginUtils.cc Thu Sep 16 13:03:57 2010 -0400 @@ -49,7 +49,7 @@ exception statement from your version. * ************************************************/ // Initialize static variables -int IcedTeaPluginUtilities::reference = 0; +int IcedTeaPluginUtilities::reference = -1; pthread_mutex_t IcedTeaPluginUtilities::reference_mutex = PTHREAD_MUTEX_INITIALIZER; std::map* IcedTeaPluginUtilities::instance_map = new std::map(); std::map* IcedTeaPluginUtilities::object_map = new std::map(); @@ -224,11 +224,11 @@ IcedTeaPluginUtilities::getReference() pthread_mutex_lock(&reference_mutex); // If we are nearing the max, reset - if (reference > 0x7FFFFFFF - 10) { - reference = 0; + if (reference < -0x7FFFFFFF + 10) { + reference = -1; } - reference++; + reference--; pthread_mutex_unlock(&reference_mutex); return reference; diff -r 1c5acca8abfd -r c764b38139a5 plugin/icedteanp/java/sun/applet/PluginAppletViewer.java --- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Mon Sep 13 10:21:58 2010 -0400 +++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Thu Sep 16 13:03:57 2010 -0400 @@ -137,21 +137,10 @@ import com.sun.jndi.toolkit.url.UrlUtil; } }); - double heightFactor = 1.0; - double widthFactor = 1.0; - - if (atts.get("heightPercentage") != null) { - heightFactor = (Integer) atts.get("heightPercentage")/100.0; - } - - if (atts.get("widthPercentage") != null) { - widthFactor = (Integer) atts.get("widthPercentage")/100.0; - } // put inside initial 0 handle frame - PluginAppletViewer.reFrame(null, identifier, System.out, - heightFactor, widthFactor, 0, panel); + PluginAppletViewer.reFrame(null, identifier, System.out, 0, panel); panel.init(); @@ -362,14 +351,12 @@ import com.sun.jndi.toolkit.url.UrlUtil; private static HashMap status = new HashMap(); - private double proposedHeightFactor; - private double proposedWidthFactor; private long handle = 0; private WindowListener windowEventListener = null; private AppletEventListener appletEventListener = null; - public static final int APPLET_TIMEOUT = 60000; + public static final int APPLET_TIMEOUT = 180000; private static Long requestIdentityCounter = 0L; @@ -381,8 +368,7 @@ import com.sun.jndi.toolkit.url.UrlUtil; public static void reFrame(PluginAppletViewer oldFrame, int identifier, PrintStream statusMsgStream, - double heightFactor, double widthFactor, long handle, - AppletViewerPanel panel) { + long handle, AppletViewerPanel panel) { PluginDebug.debug("Reframing " + panel); @@ -393,7 +379,7 @@ import com.sun.jndi.toolkit.url.UrlUtil; if (oldFrame != null && handle == oldFrame.handle) return; - PluginAppletViewer newFrame = new PluginAppletViewer(handle, identifier, statusMsgStream, heightFactor, widthFactor, panel); + PluginAppletViewer newFrame = new PluginAppletViewer(handle, identifier, statusMsgStream, panel); if (oldFrame != null) { applets.remove(oldFrame.identifier); @@ -423,14 +409,12 @@ import com.sun.jndi.toolkit.url.UrlUtil; * Create new plugin appletviewer frame */ private PluginAppletViewer(long handle, final int identifier, - PrintStream statusMsgStream, double heightFactor, - double widthFactor, AppletViewerPanel appletPanel) { + PrintStream statusMsgStream, + AppletViewerPanel appletPanel) { super(handle, true); this.statusMsgStream = statusMsgStream; this.identifier = identifier; - this.proposedHeightFactor = heightFactor; - this.proposedWidthFactor = widthFactor; this.panel = appletPanel; if (!appletPanels.contains(panel)) @@ -525,87 +509,63 @@ import com.sun.jndi.toolkit.url.UrlUtil; PluginDebug.debug("PAV handling: " + message); try { - if (message.startsWith("tag")) { + if (message.startsWith("handle")) { - // tag and handle must both be set before parsing, so we need - // synchronization here, as the setting of these variables - // may happen in independent threads + // Extract the information from the message + String[] msgParts = new String[4]; + for (int i=0; i < 3; i++) { + int spaceLocation = message.indexOf(' '); + int nextSpaceLocation = message.indexOf(' ', spaceLocation+1); + msgParts[i] = message.substring(spaceLocation + 1, nextSpaceLocation); + message = message.substring(nextSpaceLocation + 1); + } - synchronized(requests) { + long handle = Long.parseLong(msgParts[0]); + String width = msgParts[1]; + String height = msgParts[2]; - // Check if we should proceed with init - // (=> no if destroy was called after tag, but before - // handle) - if (status.containsKey(identifier) && - status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) { + int spaceLocation = message.indexOf(' ', "tag".length()+1); + String documentBase = + UrlUtil.decode(message.substring("tag".length() + 1, spaceLocation)); + String tag = message.substring(spaceLocation+1); - PluginDebug.debug("Inactive flag set. Refusing to initialize instance " + identifier); - requests.remove(identifier); - return; - - } + System.err.println("Handle = " + handle + "\n" + + "Width = " + width + "\n" + + "Height = " + height + "\n" + + "DocumentBase = " + documentBase + "\n" + + "Tag = " + tag); status.put(identifier, PAV_INIT_STATUS.PRE_INIT); + PluginAppletViewer.parse + (identifier, handle, width, height, + new StringReader(tag), + new URL(documentBase)); - PluginParseRequest request = requests.get(identifier); - if (request == null) { - request = new PluginParseRequest(); - requests.put(identifier, request); - } - int index = message.indexOf(' ', "tag".length() + 1); - request.documentbase = - UrlUtil.decode(message.substring("tag".length() + 1, index)); - request.tag = message.substring(index + 1); - PluginDebug.debug ("REQUEST TAG: " + request.tag + " " + - Thread.currentThread()); - PluginDebug.debug ("REQUEST TAG, PARSING " + - Thread.currentThread()); - PluginAppletViewer.parse - (identifier, request.handle, - new StringReader(request.tag), - new URL(request.documentbase)); - requests.remove(identifier); + int maxWait = APPLET_TIMEOUT; // wait for applet to fully load + int wait = 0; + while (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && + (wait < maxWait)) { - // Panel initialization cannot be aborted mid-way. - // Once it is initialized, double check to see if this - // panel needs to stay around.. - if (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) { - PluginDebug.debug("Inactive flag set. Destroying applet instance " + identifier); - applets.get(identifier).handleMessage(-1, "destroy"); - } + try { + Thread.sleep(50); + wait += 50; + } catch (InterruptedException ie) { + // just wait + } } + + if (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) + throw new Exception("Applet initialization timeout"); + + PluginAppletViewer oldFrame = applets.get(identifier); + reFrame(oldFrame, oldFrame.identifier, oldFrame.statusMsgStream, + handle, oldFrame.panel); } else { PluginDebug.debug ("Handling message: " + message + " instance " + identifier + " " + Thread.currentThread()); - // Destroy may be called while initialization is still going - // on. We therefore special case it. - if (!applets.containsKey(identifier) && message.equals("destroy")) { - - // Set the status to inactive right away. Doesn't matter if it - // gets clobbered during init. due to a race. That is what the - // double check below is for. - PluginDebug.debug("Destroy called during initialization. Delaying destruction."); - status.put(identifier, PAV_INIT_STATUS.INACTIVE); - - // We have set the flags. We now lock what stage 1 and 2 - // lock on, and force a synchronous status check+action. - synchronized (requests) { - // re-check (inside lock) if the applet is - // initialized at this point. - if (applets.containsKey(identifier)) { - PluginDebug.debug("Init done. destroying normally."); - applets.get(identifier).handleMessage(reference, message); - } else { - } - } // unlock - - // we're done here - return; - } - - // For messages other than destroy, wait till initialization finishes + // Wait till initialization finishes while (!applets.containsKey(identifier) && ( !status.containsKey(identifier) || @@ -617,37 +577,7 @@ import com.sun.jndi.toolkit.url.UrlUtil; if (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) return; - if (message.startsWith("handle")) { - - PluginDebug.debug("handle command waiting for applet to complete loading."); - int maxWait = APPLET_TIMEOUT; // wait for applet to fully load - int wait = 0; - while (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && - (wait < maxWait)) { - - try { - Thread.sleep(50); - wait += 50; - } catch (InterruptedException ie) { - // just wait - } - } - - if (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) - throw new Exception("Applet initialization timeout"); - - PluginDebug.debug("Applet loading complete. Proceeding to reframe."); - long handle = Long.parseLong - (message.substring("handle".length() + 1)); - - PluginAppletViewer oldFrame = applets.get(identifier); - reFrame(oldFrame, oldFrame.identifier, oldFrame.statusMsgStream, - oldFrame.proposedHeightFactor, oldFrame.proposedWidthFactor, - handle, oldFrame.panel); - - } else { - applets.get(identifier).handleMessage(reference, message); - } + applets.get(identifier).handleMessage(reference, message); From dbhole at icedtea.classpath.org Thu Sep 16 11:53:15 2010 From: dbhole at icedtea.classpath.org (dbhole at icedtea.classpath.org) Date: Thu, 16 Sep 2010 18:53:15 +0000 Subject: /hg/icedtea6: Output applet initialization info only in debug mode. Message-ID: changeset a1ccc755c8f7 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=a1ccc755c8f7 author: Deepak Bhole date: Thu Sep 16 14:53:19 2010 -0400 Output applet initialization info only in debug mode. diffstat: 2 files changed, 6 insertions(+), 1 deletion(-) ChangeLog | 5 +++++ plugin/icedteanp/java/sun/applet/PluginAppletViewer.java | 2 +- diffs (24 lines): diff -r c764b38139a5 -r a1ccc755c8f7 ChangeLog --- a/ChangeLog Thu Sep 16 13:03:57 2010 -0400 +++ b/ChangeLog Thu Sep 16 14:53:19 2010 -0400 @@ -1,3 +1,8 @@ 2010-09-15 Deepak Bhole + + * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java + (handleMessage): Output initialization info only in debug mode. + 2010-09-15 Deepak Bhole PR556: Re-implement applet initialization to be serialialized, to fix diff -r c764b38139a5 -r a1ccc755c8f7 plugin/icedteanp/java/sun/applet/PluginAppletViewer.java --- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Thu Sep 16 13:03:57 2010 -0400 +++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Thu Sep 16 14:53:19 2010 -0400 @@ -529,7 +529,7 @@ import com.sun.jndi.toolkit.url.UrlUtil; UrlUtil.decode(message.substring("tag".length() + 1, spaceLocation)); String tag = message.substring(spaceLocation+1); - System.err.println("Handle = " + handle + "\n" + + PluginDebug.debug ("Handle = " + handle + "\n" + "Width = " + width + "\n" + "Height = " + height + "\n" + "DocumentBase = " + documentBase + "\n" + From ahughes at redhat.com Thu Sep 16 12:16:52 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Thu, 16 Sep 2010 20:16:52 +0100 Subject: /hg/icedtea6: Output applet initialization info only in debug mode. In-Reply-To: References: Message-ID: <20100916191652.GG673@rivendell.middle-earth.co.uk> On 18:53 Thu 16 Sep , dbhole at icedtea.classpath.org wrote: > changeset a1ccc755c8f7 in /hg/icedtea6 > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=a1ccc755c8f7 > author: Deepak Bhole > date: Thu Sep 16 14:53:19 2010 -0400 > > Output applet initialization info only in debug mode. > > > diffstat: > > 2 files changed, 6 insertions(+), 1 deletion(-) > ChangeLog | 5 +++++ > plugin/icedteanp/java/sun/applet/PluginAppletViewer.java | 2 +- > > diffs (24 lines): > > diff -r c764b38139a5 -r a1ccc755c8f7 ChangeLog > --- a/ChangeLog Thu Sep 16 13:03:57 2010 -0400 > +++ b/ChangeLog Thu Sep 16 14:53:19 2010 -0400 > @@ -1,3 +1,8 @@ 2010-09-15 Deepak Bhole +2010-09-16 Deepak Bhole > + > + * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > + (handleMessage): Output initialization info only in debug mode. > + > 2010-09-15 Deepak Bhole > > PR556: Re-implement applet initialization to be serialialized, to fix > diff -r c764b38139a5 -r a1ccc755c8f7 plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > --- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Thu Sep 16 13:03:57 2010 -0400 > +++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Thu Sep 16 14:53:19 2010 -0400 > @@ -529,7 +529,7 @@ import com.sun.jndi.toolkit.url.UrlUtil; > UrlUtil.decode(message.substring("tag".length() + 1, spaceLocation)); > String tag = message.substring(spaceLocation+1); > > - System.err.println("Handle = " + handle + "\n" + > + PluginDebug.debug ("Handle = " + handle + "\n" + > "Width = " + width + "\n" + > "Height = " + height + "\n" + > "DocumentBase = " + documentBase + "\n" + Is this one worth backporting? -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From dbhole at redhat.com Thu Sep 16 13:03:53 2010 From: dbhole at redhat.com (Deepak Bhole) Date: Thu, 16 Sep 2010 16:03:53 -0400 Subject: /hg/icedtea6: Output applet initialization info only in debug mode. In-Reply-To: <20100916191652.GG673@rivendell.middle-earth.co.uk> References: <20100916191652.GG673@rivendell.middle-earth.co.uk> Message-ID: <20100916200353.GA17004@redhat.com> * Dr Andrew John Hughes [2010-09-16 15:17]: > On 18:53 Thu 16 Sep , dbhole at icedtea.classpath.org wrote: > > changeset a1ccc755c8f7 in /hg/icedtea6 > > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=a1ccc755c8f7 > > author: Deepak Bhole > > date: Thu Sep 16 14:53:19 2010 -0400 > > > > Output applet initialization info only in debug mode. > > > > > > diffstat: > > > > 2 files changed, 6 insertions(+), 1 deletion(-) > > ChangeLog | 5 +++++ > > plugin/icedteanp/java/sun/applet/PluginAppletViewer.java | 2 +- > > > > diffs (24 lines): > > > > diff -r c764b38139a5 -r a1ccc755c8f7 ChangeLog > > --- a/ChangeLog Thu Sep 16 13:03:57 2010 -0400 > > +++ b/ChangeLog Thu Sep 16 14:53:19 2010 -0400 > > @@ -1,3 +1,8 @@ 2010-09-15 Deepak Bhole > +2010-09-16 Deepak Bhole > > + > > + * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > > + (handleMessage): Output initialization info only in debug mode. > > + > > 2010-09-15 Deepak Bhole > > > > PR556: Re-implement applet initialization to be serialialized, to fix > > diff -r c764b38139a5 -r a1ccc755c8f7 plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > > --- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Thu Sep 16 13:03:57 2010 -0400 > > +++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Thu Sep 16 14:53:19 2010 -0400 > > @@ -529,7 +529,7 @@ import com.sun.jndi.toolkit.url.UrlUtil; > > UrlUtil.decode(message.substring("tag".length() + 1, spaceLocation)); > > String tag = message.substring(spaceLocation+1); > > > > - System.err.println("Handle = " + handle + "\n" + > > + PluginDebug.debug ("Handle = " + handle + "\n" + > > "Width = " + width + "\n" + > > "Height = " + height + "\n" + > > "DocumentBase = " + documentBase + "\n" + > > Is this one worth backporting? Nope, it won't apply without my previous commit for PR556. I want to hold off PR556 from being backported for the time being, since it is such a radical change in how initialization happens. Once it has had some exposure, I will propose a backport for that and the above commit. Cheers, Deepak > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > Support Free Java! > Contribute to GNU Classpath and the OpenJDK > http://www.gnu.org/software/classpath > http://openjdk.java.net > PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ahughes at redhat.com Thu Sep 16 15:31:55 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Thu, 16 Sep 2010 23:31:55 +0100 Subject: [patch] add a man page for javaws In-Reply-To: <4C8F9DB5.9090901@redhat.com> References: <4C892959.1010308@redhat.com> <20100914110159.GA14951@bree.middle-earth.co.uk> <4C8F9DB5.9090901@redhat.com> Message-ID: <20100916223155.GI673@rivendell.middle-earth.co.uk> On 12:07 Tue 14 Sep , Omair Majid wrote: > Hi, > > On 09/14/2010 07:02 AM, Dr Andrew John Hughes wrote: > > On 14:37 Thu 09 Sep , Omair Majid wrote: > >> Hi, > >> > >> OpenJDK6 contains a man page for javaws, but it has two problems: > >> - it not applicable to netx which has different quirks and options > >> - openjdk's javaws man page is only "built" on a 32 bit arch. > >> > >> The attached patch adds a man page for javaws, which overwrites the one > >> from openjdk. This man page should be much more relevant to anyone using > >> IcedTea. Any comments or concerns? > >> > >> 2010-09-09 Omair Majid > >> > >> Add a new man page for netx's javaws. > >> * Makefile.am > >> (stamps/add-netx.stamp): Copy over the javaws man page into the > >> build. > >> (clean-add-netx): Remove the javaws man pages on clean. > >> (stamps/add-netx-debug.stamp): Copy over the javaws man page. > >> (clean-add-netx-debug): Remove the javaws man page. > >> * netx/javaws.1: New man page for netx's javaws. > >> > >> Cheers, > >> Omair > > > > > This has broken the build on toadeater: > > > > cp /notnfs/nighttester/icedtea6-target-testing/netx/javaws.1 /notnfs/nighttester/icedtea6-target-testing/openjdk.build/j2sdk-image/man/man1 > > cp: cannot create regular file `/notnfs/nighttester/icedtea6-target-testing/openjdk.build/j2sdk-image/man/man1': No such file or directory > > make[1]: *** [stamps/add-netx.stamp] Error 1 > > make[1]: Leaving directory `/notnfs/nighttester/icedtea6-target-testing' > > > > I think you need to add a check to make sure this directory exists (maybe it is not built if docs are disabled?) > > > > I also notice that you missed adding the logic to the ecj build. > > > > Thanks, > > Ah, sorry about that. I looked into it and the build logic seems a > little weird. Doing a 'make hotspot' causes netx/plugin to be built but > not the rest of the jdk. The directories $(build)/jre/lib/$(arch) are > created, so netx.jar and plugin.jar are copied into jre/lib > successfully, but since the man directory is not, the copying of the man > page fails. > > The attached patch makes the copying of man pages conditional on > ENABLE_DOCS as well as the man folder existing. I am not sure if this is > the best solution though. Any thoughts? > Looks good. Please apply so the build gets fixed. > As for ecj, I am slightly confused. I updated all the targets that > create or remove netx.jar. Are netx/plugin even built with ecj? > Doesn't look like it. This needs to be fixed separately. > Thanks, > Omair > diff -r 1c5acca8abfd Makefile.am > --- a/Makefile.am Mon Sep 13 10:21:58 2010 -0400 > +++ b/Makefile.am Tue Sep 14 11:55:27 2010 -0400 > @@ -1422,10 +1422,16 @@ > $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib > cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ > $(BUILD_OUTPUT_DIR)/j2re-image/lib > - cp $(NETX_SRCDIR)/javaws.1 \ > - $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 > - cp $(NETX_SRCDIR)/javaws.1 \ > - $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 > +if ENABLE_DOCS > + if test -d $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; \ > + fi > + if test -d $(BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(BUILD_OUTPUT_DIR)/j2re-image/man/man1; \ > + fi > +endif > touch stamps/add-netx.stamp > > clean-add-netx: > @@ -1435,8 +1441,14 @@ > rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar > rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp > rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar > - rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 > - rm -f $(BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 > +if ENABLE_DOCS > + if test -d $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ > + rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1; \ > + fi > + if test -d $(BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ > + rm -f $(BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1; \ > + fi > +endif > rm -f stamps/add-netx.stamp > > stamps/add-netx-debug.stamp: stamps/netx-dist.stamp extra-lib/about.jar > @@ -1448,10 +1460,16 @@ > $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib > cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ > $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib > - cp $(NETX_SRCDIR)/javaws.1 \ > - $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 > - cp $(NETX_SRCDIR)/javaws.1 \ > - $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 > +if ENABLE_DOCS > + if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; \ > + fi > + if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ > + cp $(NETX_SRCDIR)/javaws.1 \ > + $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1; \ > + fi > +endif > touch stamps/add-netx-debug.stamp > > clean-add-netx-debug: > @@ -1461,8 +1479,14 @@ > rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar > rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp > rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar > - rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 > - rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 > +if ENABLE_DOCS > + if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ > + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1; \ > + fi > + if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ > + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1; \ > + fi > +endif > rm -f stamps/add-netx-debug.stamp > > # OpenJDK ecj Targets -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From andrew at icedtea.classpath.org Thu Sep 16 16:12:05 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 16 Sep 2010 23:12:05 +0000 Subject: /hg/icedtea6: S6638712: Inference with wildcard types causes sel... Message-ID: changeset 63024b10e2ef in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=63024b10e2ef author: Andrew John Hughes date: Thu Sep 16 23:36:39 2010 +0100 S6638712: Inference with wildcard types causes selection of inapplicable method S6650759: Inference of formal type parameter (unused in formal parameters) is not performed 2010-09-09 Andrew John Hughes * Makefile.am: Add new patches. * NEWS: Document new patches. Fix key. * patches/openjdk/6638712-wildcard_types.patch, * patches/openjdk/6650759-missing_inference.patch: Fix failure in javac compilation. diffstat: 5 files changed, 1582 insertions(+), 3 deletions(-) ChangeLog | 10 Makefile.am | 4 NEWS | 4 patches/openjdk/6638712-wildcard_types.patch | 669 +++++++++++++++++ patches/openjdk/6650759-missing_inference.patch | 898 +++++++++++++++++++++++ diffs (truncated from 1626 to 500 lines): diff -r a1ccc755c8f7 -r 63024b10e2ef ChangeLog --- a/ChangeLog Thu Sep 16 14:53:19 2010 -0400 +++ b/ChangeLog Thu Sep 16 23:36:39 2010 +0100 @@ -1,4 +1,12 @@ 2010-09-16 Deepak Bhole +2010-09-09 Andrew John Hughes + + * Makefile.am: Add new patches. + * NEWS: Document new patches. Fix key. + * patches/openjdk/6638712-wildcard_types.patch, + * patches/openjdk/6650759-missing_inference.patch: + Fix failure in javac compilation. + +2010-09-16 Deepak Bhole * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java (handleMessage): Output initialization info only in debug mode. diff -r a1ccc755c8f7 -r 63024b10e2ef Makefile.am --- a/Makefile.am Thu Sep 16 14:53:19 2010 -0400 +++ b/Makefile.am Thu Sep 16 23:36:39 2010 +0100 @@ -295,7 +295,9 @@ ICEDTEA_PATCHES = \ patches/icedtea-too-many-args.patch \ patches/icedtea-jtreg-OpenGLContextInit.patch \ patches/openjdk/6969395-net_bugs.patch \ - patches/openjdk/6510892-httpserver_test.patch + patches/openjdk/6510892-httpserver_test.patch \ + patches/openjdk/6638712-wildcard_types.patch \ + patches/openjdk/6650759-missing_inference.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r a1ccc755c8f7 -r 63024b10e2ef NEWS --- a/NEWS Thu Sep 16 14:53:19 2010 -0400 +++ b/NEWS Thu Sep 16 23:36:39 2010 +0100 @@ -1,6 +1,6 @@ Key: Key: -SX - http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6969395 +SX - http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=X PRX - http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=X RHX - https://bugzilla.redhat.com/show_bug.cgi?id=X DX - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=X @@ -14,6 +14,8 @@ New in release 1.10 (2010-XX-XX): - S4356282, RH525870: RFE: T2K should be used to rasterize CID/CFF fonts - S6954424: Support OpenType/CFF fonts in JDK 7 - S6438179: XToolkit.isTraySupported() result has nothing to do with the system tray + - S6638712: Inference with wildcard types causes selection of inapplicable method + - S6650759: Inference of formal type parameter (unused in formal parameters) is not performed * Netx - A new man page for javaws. * Plugin diff -r a1ccc755c8f7 -r 63024b10e2ef patches/openjdk/6638712-wildcard_types.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6638712-wildcard_types.patch Thu Sep 16 23:36:39 2010 +0100 @@ -0,0 +1,669 @@ +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java 2010-06-21 22:16:20.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java 2010-09-09 19:54:58.054019539 +0100 +@@ -1061,6 +1061,21 @@ + return qtype.isErroneous(); + } + ++ /** ++ * Replaces this ForAll's typevars with a set of concrete Java types ++ * and returns the instantiated generic type. Subclasses might override ++ * in order to check that the list of types is a valid instantiation ++ * of the ForAll's typevars. ++ * ++ * @param actuals list of actual types ++ * @param types types instance ++ * @return qtype where all occurrences of tvars are replaced ++ * by types in actuals ++ */ ++ public Type inst(List actuals, Types types) { ++ return types.subst(qtype, tvars, actuals); ++ } ++ + public Type map(Mapping f) { + return f.apply(qtype); + } +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java 2010-06-21 22:16:20.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java 2010-09-09 19:54:58.054019539 +0100 +@@ -331,6 +331,14 @@ + if (s.tag >= firstPartialTag) + return isSuperType(s, t); + ++ if (s.isCompound()) { ++ for (Type s2 : interfaces(s).prepend(supertype(s))) { ++ if (!isSubtype(t, s2, capture)) ++ return false; ++ } ++ return true; ++ } ++ + Type lower = lowerBound(s); + if (s != lower) + return isSubtype(capture ? capture(t) : t, lower, false); +@@ -2766,6 +2774,14 @@ + /** + * Capture conversion as specified by JLS 3rd Ed. + */ ++ ++ public List capture(List ts) { ++ List buf = List.nil(); ++ for (Type t : ts) { ++ buf = buf.prepend(capture(t)); ++ } ++ return buf.reverse(); ++ } + public Type capture(Type t) { + if (t.tag != CLASS) + return t; +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java 2010-06-21 22:16:20.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java 2010-09-09 19:54:58.054019539 +0100 +@@ -383,6 +383,10 @@ + JCDiagnostic.fragment("incompatible.types" + (d!=null ? ".1" : ""), d), + t, pt); + } ++ } catch (Infer.InvalidInstanceException ex) { ++ JCDiagnostic d = ex.getDiagnostic(); ++ log.error(pos, "invalid.inferred.types", t.tvars, d); ++ return syms.errType; + } + } + } +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java 2010-06-21 22:16:20.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java 2010-09-09 20:00:32.891268438 +0100 +@@ -29,6 +29,7 @@ + import com.sun.tools.javac.util.List; + import com.sun.tools.javac.code.*; + import com.sun.tools.javac.code.Type.*; ++import com.sun.tools.javac.code.Symbol.*; + + import static com.sun.tools.javac.code.Flags.*; + import static com.sun.tools.javac.code.Kinds.*; +@@ -50,6 +51,7 @@ + + Symtab syms; + Types types; ++ Resolve rs; + + public static Infer instance(Context context) { + Infer instance = context.get(inferKey); +@@ -62,43 +64,51 @@ + context.put(inferKey, this); + syms = Symtab.instance(context); + types = Types.instance(context); ++ rs = Resolve.instance(context); + } + +- public static class NoInstanceException extends RuntimeException { ++ public static class InferenceException extends RuntimeException { + private static final long serialVersionUID = 0; + +- boolean isAmbiguous; // exist several incomparable best instances? +- + JCDiagnostic diagnostic; + +- NoInstanceException(boolean isAmbiguous) { ++ InferenceException() { + this.diagnostic = null; +- this.isAmbiguous = isAmbiguous; +- } +- NoInstanceException setMessage(String key) { +- this.diagnostic = JCDiagnostic.fragment(key); +- return this; +- } +- NoInstanceException setMessage(String key, Object arg1) { +- this.diagnostic = JCDiagnostic.fragment(key, arg1); +- return this; +- } +- NoInstanceException setMessage(String key, Object arg1, Object arg2) { +- this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2); +- return this; + } +- NoInstanceException setMessage(String key, Object arg1, Object arg2, Object arg3) { +- this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2, arg3); ++ InferenceException setMessage(String key, Object... args) { ++ this.diagnostic = JCDiagnostic.fragment(key, args); + return this; + } ++ + public JCDiagnostic getDiagnostic() { + return diagnostic; + } + } ++ ++ public static class NoInstanceException extends InferenceException { ++ private static final long serialVersionUID = 1; ++ ++ boolean isAmbiguous; // exist several incomparable best instances? ++ ++ NoInstanceException(boolean isAmbiguous) { ++ super(); ++ this.isAmbiguous = isAmbiguous; ++ } ++ } ++ ++ public static class InvalidInstanceException extends InferenceException { ++ private static final long serialVersionUID = 2; ++ ++ InvalidInstanceException() { ++ super(); ++ } ++ } ++ + private final NoInstanceException ambiguousNoInstanceException = + new NoInstanceException(true); + private final NoInstanceException unambiguousNoInstanceException = + new NoInstanceException(false); ++ private final InvalidInstanceException invalidInstanceException = new InvalidInstanceException(); + + /*************************************************************************** + * Auxiliary type values and classes +@@ -247,7 +257,7 @@ + */ + public Type instantiateExpr(ForAll that, + Type to, +- Warner warn) throws NoInstanceException { ++ Warner warn) throws InferenceException { + List undetvars = Type.map(that.tvars, fromTypeVarFun); + for (List l = undetvars; l.nonEmpty(); l = l.tail) { + UndetVar v = (UndetVar) l.head; +@@ -273,8 +283,7 @@ + List targs = Type.map(undetvars, getInstFun); + targs = types.subst(targs, that.tvars, targs); + checkWithinBounds(that.tvars, targs, warn); +- +- return getInstFun.apply(qtype1); ++ return that.inst(targs, types); + } + + /** Instantiate method type `mt' by finding instantiations of +@@ -282,36 +291,42 @@ + */ + public Type instantiateMethod(List tvars, + MethodType mt, +- List argtypes, +- boolean allowBoxing, +- boolean useVarargs, +- Warner warn) throws NoInstanceException { ++ final List argtypes, ++ final boolean allowBoxing, ++ final boolean useVarargs, ++ final Warner warn) throws InferenceException { + //-System.err.println("instantiateMethod(" + tvars + ", " + mt + ", " + argtypes + ")"); //DEBUG + List undetvars = Type.map(tvars, fromTypeVarFun); + List formals = mt.argtypes; +- ++ //need to capture exactly once - otherwise subsequent ++ //applicability checks might fail ++ final List capturedArgs = types.capture(argtypes); ++ List actuals = capturedArgs; ++ List actualsNoCapture = argtypes; + // instantiate all polymorphic argument types and + // set up lower bounds constraints for undetvars + Type varargsFormal = useVarargs ? formals.last() : null; +- while (argtypes.nonEmpty() && formals.head != varargsFormal) { +- Type ft = formals.head; +- Type at = argtypes.head.baseType(); +- if (at.tag == FORALL) +- at = instantiateArg((ForAll) at, ft, tvars, warn); +- Type sft = types.subst(ft, tvars, undetvars); ++ while (actuals.nonEmpty() && formals.head != varargsFormal) { ++ Type formal = formals.head; ++ Type actual = actuals.head.baseType(); ++ Type actualNoCapture = actualsNoCapture.head.baseType(); ++ if (actual.tag == FORALL) ++ actual = instantiateArg((ForAll)actual, formal, tvars, warn); ++ Type undetFormal = types.subst(formal, tvars, undetvars); + boolean works = allowBoxing +- ? types.isConvertible(at, sft, warn) +- : types.isSubtypeUnchecked(at, sft, warn); ++ ? types.isConvertible(actual, undetFormal, warn) ++ : types.isSubtypeUnchecked(actual, undetFormal, warn); + if (!works) { + throw unambiguousNoInstanceException + .setMessage("no.conforming.assignment.exists", +- tvars, at, ft); ++ tvars, actualNoCapture, formal); + } + formals = formals.tail; +- argtypes = argtypes.tail; ++ actuals = actuals.tail; ++ actualsNoCapture = actualsNoCapture.tail; + } + if (formals.head != varargsFormal || // not enough args +- !useVarargs && argtypes.nonEmpty()) { // too many args ++ !useVarargs && actuals.nonEmpty()) { // too many args + // argument lists differ in length + throw unambiguousNoInstanceException + .setMessage("arg.length.mismatch"); +@@ -319,20 +334,21 @@ + + // for varargs arguments as well + if (useVarargs) { +- Type elt = types.elemtype(varargsFormal); +- Type sft = types.subst(elt, tvars, undetvars); +- while (argtypes.nonEmpty()) { +- Type ft = sft; +- Type at = argtypes.head.baseType(); +- if (at.tag == FORALL) +- at = instantiateArg((ForAll) at, ft, tvars, warn); +- boolean works = types.isConvertible(at, sft, warn); ++ Type elemType = types.elemtype(varargsFormal); ++ Type elemUndet = types.subst(elemType, tvars, undetvars); ++ while (actuals.nonEmpty()) { ++ Type actual = actuals.head.baseType(); ++ Type actualNoCapture = actualsNoCapture.head.baseType(); ++ if (actual.tag == FORALL) ++ actual = instantiateArg((ForAll)actual, elemType, tvars, warn); ++ boolean works = types.isConvertible(actual, elemUndet, warn); + if (!works) { + throw unambiguousNoInstanceException + .setMessage("no.conforming.assignment.exists", +- tvars, at, ft); ++ tvars, actualNoCapture, elemType); + } +- argtypes = argtypes.tail; ++ actuals = actuals.tail; ++ actualsNoCapture = actualsNoCapture.tail; + } + } + +@@ -363,16 +379,38 @@ + } + checkWithinBounds(tvars, undettypes.toList(), warn); + ++ mt = (MethodType)types.subst(mt, tvars, insttypes.toList()); ++ + if (!restvars.isEmpty()) { + // if there are uninstantiated variables, + // quantify result type with them +- mt = new MethodType(mt.argtypes, +- new ForAll(restvars.toList(), mt.restype), +- mt.thrown, syms.methodClass); ++ final List inferredTypes = insttypes.toList(); ++ final List all_tvars = tvars; //this is the wrong tvars ++ final MethodType mt2 = new MethodType(mt.argtypes, null, mt.thrown, syms.methodClass); ++ mt2.restype = new ForAll(restvars.toList(), mt.restype) { ++ @Override ++ public Type inst(List inferred, Types types) throws NoInstanceException { ++ List formals = types.subst(mt2.argtypes, tvars, inferred); ++ if (!rs.argumentsAcceptable(capturedArgs, formals, ++ allowBoxing, useVarargs, warn)) { ++ // inferred method is not applicable ++ throw invalidInstanceException.setMessage("inferred.do.not.conform.to.params", formals, argtypes); ++ } ++ // check that inferred bounds conform to their bounds ++ checkWithinBounds(all_tvars, ++ types.subst(inferredTypes, tvars, inferred), warn); ++ return super.inst(inferred, types); ++ }}; ++ return mt2; ++ } ++ else if (!rs.argumentsAcceptable(capturedArgs, mt.getParameterTypes(), allowBoxing, useVarargs, warn)) { ++ // inferred method is not applicable ++ throw invalidInstanceException.setMessage("inferred.do.not.conform.to.params", mt.getParameterTypes(), argtypes); ++ } ++ else { ++ // return instantiated version of method type ++ return mt; + } +- +- // return instantiated version of method type +- return types.subst(mt, tvars, insttypes.toList()); + } + //where + +@@ -384,7 +422,7 @@ + private Type instantiateArg(ForAll that, + Type to, + List tvars, +- Warner warn) throws NoInstanceException { ++ Warner warn) throws InferenceException { + List targs; + try { + return instantiateExpr(that, to, warn); +@@ -401,16 +439,16 @@ + private void checkWithinBounds(List tvars, + List arguments, + Warner warn) +- throws NoInstanceException { ++ throws InvalidInstanceException { + for (List tvs = tvars, args = arguments; + tvs.nonEmpty(); + tvs = tvs.tail, args = args.tail) { + if (args.head instanceof UndetVar) continue; + List bounds = types.subst(types.getBounds((TypeVar)tvs.head), tvars, arguments); + if (!types.isSubtypeUnchecked(args.head, bounds, warn)) +- throw unambiguousNoInstanceException ++ throw invalidInstanceException + .setMessage("inferred.do.not.conform.to.bounds", +- arguments, tvars); ++ args.head, bounds); + } + } + } +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java 2010-06-21 22:16:20.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java 2010-09-09 19:54:58.058019555 +0100 +@@ -279,7 +279,7 @@ + boolean allowBoxing, + boolean useVarargs, + Warner warn) +- throws Infer.NoInstanceException { ++ throws Infer.InferenceException { + if (useVarargs && (m.flags() & VARARGS) == 0) return null; + Type mt = types.memberType(site, m); + +@@ -350,7 +350,7 @@ + try { + return rawInstantiate(env, site, m, argtypes, typeargtypes, + allowBoxing, useVarargs, warn); +- } catch (Infer.NoInstanceException ex) { ++ } catch (Infer.InferenceException ex) { + return null; + } + } +@@ -562,7 +562,7 @@ + default: return bestSoFar; + } + } +- } catch (Infer.NoInstanceException ex) { ++ } catch (Infer.InferenceException ex) { + switch (bestSoFar.kind) { + case ABSENT_MTH: + return wrongMethod.setWrongSym(sym, ex.getDiagnostic()); +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties openjdk/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties 2010-06-21 22:16:21.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties 2010-09-09 19:54:58.058019555 +0100 +@@ -454,6 +454,8 @@ + type parameters of {0} cannot be determined + compiler.err.undetermined.type.1=\ + type parameters of {0} cannot be determined; {1} ++compiler.err.invalid.inferred.types=\ ++ invalid inferred types for {0}; {1} + compiler.err.unreachable.stmt=\ + unreachable statement + compiler.err.initializer.must.be.able.to.complete.normally=\ +@@ -960,7 +962,13 @@ + compiler.misc.arg.length.mismatch=\ + cannot instantiate from arguments because actual and formal argument lists differ in length + compiler.misc.inferred.do.not.conform.to.bounds=\ +- inferred type argument(s) {0} do not conform to bounds of type variable(s) {1} ++ inferred type does not conform to declared bound(s)\n\ ++ inferred: {0}\n\ ++ bound(s): {1} ++compiler.misc.inferred.do.not.conform.to.params=\ ++ actual arguments do not conforms to inferred formal arguments\n\ ++ required: {0}\n\ ++ found: {1} + + ##### + +diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6302954/T6476073.java openjdk/langtools/test/tools/javac/generics/inference/6302954/T6476073.java +--- openjdk.orig/langtools/test/tools/javac/generics/inference/6302954/T6476073.java 2010-06-21 22:16:25.000000000 +0100 ++++ openjdk/langtools/test/tools/javac/generics/inference/6302954/T6476073.java 2010-09-09 19:54:58.058019555 +0100 +@@ -25,6 +25,7 @@ + * @test + * @bug 6476073 + * @summary Capture using super wildcard of type variables doesn't work ++ * @ignore awaiting for 6650759 (see bug report for a detailed evaluation) + * @compile T6476073.java + */ + +diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java +--- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java 1970-01-01 01:00:00.000000000 +0100 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java 2010-09-09 19:54:58.062019572 +0100 +@@ -0,0 +1,41 @@ ++/* ++ * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6638712 ++ * @author mcimadamore From bugzilla-daemon at icedtea.classpath.org Fri Sep 17 01:30:21 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 17 Sep 2010 08:30:21 +0000 Subject: [Bug 528] Crash with nvidia and xorg opengl when running netbeans Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=528 ------- Comment #6 from msporysz06 at gmail.com 2010-09-17 08:30 ------- another workarounds to get netbeans working on gentoo are: 1. switch to xorg-x11 opengl driver (# eselect opengl set xorg-x11) and get back to nvidia after work is done 2. use sun-jre, if You ok with license. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ptisnovs at icedtea.classpath.org Fri Sep 17 01:46:43 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 17 Sep 2010 08:46:43 +0000 Subject: /hg/gfx-test: Added support for another rendering style in repor... Message-ID: changeset 3ae4c8d1a562 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=3ae4c8d1a562 author: Pavel Tisnovsky date: Fri Sep 17 10:47:02 2010 +0200 Added support for another rendering style in reporter - entities rendered using various scale. Also added 3D Round Rectangles to reporter. diffstat: 2 files changed, 20 insertions(+), 4 deletions(-) src/org/gfxtest/framework/GfxTest.java | 4 ++-- src/org/gfxtest/reporter/Reporter.java | 20 ++++++++++++++++++-- diffs (52 lines): diff -r 122a326e04ad -r 3ae4c8d1a562 src/org/gfxtest/framework/GfxTest.java --- a/src/org/gfxtest/framework/GfxTest.java Thu Sep 16 18:14:11 2010 +0200 +++ b/src/org/gfxtest/framework/GfxTest.java Fri Sep 17 10:47:02 2010 +0200 @@ -138,7 +138,7 @@ public abstract class GfxTest /** * All dash patterns. */ - protected static final float[] ALL_DASH_PATTERNS = {1.0f, 2.0f, 8.0f, 16.0f}; + protected static final float[] ALL_DASH_PATTERNS = {1.0f, /*2.0f, */8.0f, 16.0f}; /** * Write test suite duration to the log file. @@ -354,7 +354,7 @@ public abstract class GfxTest private void performOneTest(GfxTestConfiguration configuration, int testNumber, EntityRenderingStyle entityRenderingStyle) { - String testName = "test" + testNumber; //$NON-NLS-1$ + String testName = String.format("test%03d", testNumber); //$NON-NLS-1$ this.log.logBegin(testName); int zoom = getZoom(); TestImage image = new TestImage(configuration, zoom); diff -r 122a326e04ad -r 3ae4c8d1a562 src/org/gfxtest/reporter/Reporter.java --- a/src/org/gfxtest/reporter/Reporter.java Thu Sep 16 18:14:11 2010 +0200 +++ b/src/org/gfxtest/reporter/Reporter.java Fri Sep 17 10:47:02 2010 +0200 @@ -66,9 +66,25 @@ public class Reporter private static final String[] SPECTESTS = new String[] {"BlankImage"}; - private static final String[] ENTITIES = new String[] {"Lines", "Polylines", "Polygons", "Rectangles", "RoundRectangles", "Circles", "Ellipses", "Arcs"}; + private static final String[] ENTITIES = new String[] { + "Lines", + "Polylines", + "Polygons", + "Rectangles", + "RoundRectangles", + "3DRectangles", + "Circles", + "Ellipses", + "Arcs" + }; - private static final String[] STYLES = new String[] {"Normal", "Filled", "Dashed", "AA"}; + private static final String[] STYLES = new String[] { + "Normal", + "Filled", + "Dashed", + "Scaled", + "AA" + }; /** * Write report writer duration to the log file. From ptisnovs at icedtea.classpath.org Fri Sep 17 04:31:23 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Fri, 17 Sep 2010 11:31:23 +0000 Subject: /hg/gfx-test: Added three new test suites - rendering of dashed ... Message-ID: changeset 8bdbaf02b8e6 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=8bdbaf02b8e6 author: Pavel Tisnovsky date: Fri Sep 17 13:31:48 2010 +0200 Added three new test suites - rendering of dashed arcs, dashed polygons and dashed round rectangles. diffstat: 4 files changed, 283 insertions(+), 2 deletions(-) Makefile | 10 + src/org/gfxtest/testsuites/DashedArcs.java | 92 ++++++++++++++++ src/org/gfxtest/testsuites/DashedPolygons.java | 89 ++++++++++++++++ src/org/gfxtest/testsuites/DashedRoundRectangles.java | 94 +++++++++++++++++ diffs (322 lines): diff -r 3ae4c8d1a562 -r 8bdbaf02b8e6 Makefile --- a/Makefile Fri Sep 17 10:47:02 2010 +0200 +++ b/Makefile Fri Sep 17 13:31:48 2010 +0200 @@ -98,11 +98,14 @@ TESTSUITE_CLASSES = \ $(CLASSES)/$(TESTSUITE_DIR)/ScaledLines.class \ $(CLASSES)/$(TESTSUITE_DIR)/ScaledPolylines.class \ $(CLASSES)/$(TESTSUITE_DIR)/ScaledRectangles.class \ + $(CLASSES)/$(TESTSUITE_DIR)/DashedArcs.class \ $(CLASSES)/$(TESTSUITE_DIR)/DashedCircles.class \ $(CLASSES)/$(TESTSUITE_DIR)/DashedEllipses.class \ $(CLASSES)/$(TESTSUITE_DIR)/DashedLines.class \ $(CLASSES)/$(TESTSUITE_DIR)/DashedPolylines.class \ - $(CLASSES)/$(TESTSUITE_DIR)/DashedRectangles.class + $(CLASSES)/$(TESTSUITE_DIR)/DashedPolygons.class \ + $(CLASSES)/$(TESTSUITE_DIR)/DashedRectangles.class \ + $(CLASSES)/$(TESTSUITE_DIR)/DashedRoundRectangles.class COMPARE_RESULTS = \ $(RESULTS)/AALines \ @@ -125,11 +128,14 @@ COMPARE_RESULTS = \ $(RESULTS)/ScaledLines \ $(RESULTS)/ScaledPolylines \ $(RESULTS)/ScaledRectangles \ + $(RESULTS)/DashedArcs \ $(RESULTS)/DashedCircles \ $(RESULTS)/DashedEllipses \ $(RESULTS)/DashedLines \ $(RESULTS)/DashedPolylines \ - $(RESULTS)/DashedRectangles + $(RESULTS)/DashedPolygons \ + $(RESULTS)/DashedRectangles \ + $(RESULTS)/DashedRoundRectangles # targets for all test suites TESTSUITES = $(shell ls -1 src/org/gfxtest/testsuites | sed -n -e 's/\([A-Za-z0-9]*\)\.java/\1/p') diff -r 3ae4c8d1a562 -r 8bdbaf02b8e6 src/org/gfxtest/testsuites/DashedArcs.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/testsuites/DashedArcs.java Fri Sep 17 13:31:48 2010 +0200 @@ -0,0 +1,92 @@ +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.testsuites; + +import java.awt.*; + +import org.gfxtest.framework.*; +import org.gfxtest.framework.annotations.*; + +import org.gfxtest.framework.GfxTestConfiguration; + +/** + * This test renders various dashed arcs using identity transformation matrix. + * + * @author Pavel Tisnovsky + */ + at TestType(TestTypes.RENDER_TEST) + at GraphicsPrimitive(GraphicsPrimitives.ARC) + at RenderStyle(RenderStyles.DASH) + at Transformation(Transformations.NONE) + at Zoom(1) +public class DashedArcs extends GfxTest +{ + + @Override + protected void drawEntity(TestImage image, Graphics2D graphics, int testNumber, EntityRenderingStyle entityRenderingStyle) + { + graphics.setStroke(new BasicStroke(entityRenderingStyle.getWidth(), entityRenderingStyle.getCap(), entityRenderingStyle.getJoin(), 1.0f, entityRenderingStyle.getDash(), 0.0f)); + int xc = image.getCenterX(); + int yc = image.getCenterY(); + int majorRadius = (xc > yc ? yc : xc) - 20; + + for (int radius = majorRadius; radius >= MINOR_RADIUS; radius -= RADIUS_STEP) + { + double r = ((double) radius - MINOR_RADIUS) / (majorRadius - MINOR_RADIUS); + Color color = new Color(Color.HSBtoRGB((float)r, 1.0f, 1.0f)); + graphics.setColor(color); + graphics.drawArc(xc - radius, yc - radius, radius << 1, radius << 1, (int) (r * 360.0), 180); + } + drawCross(graphics, xc, yc, CROSS_SIZE); + } + + @Override + protected void runOtherTests(GfxTestConfiguration configuration) + { + drawEntityWithVariousStyles(configuration, false, false, true, false, true, false); + } + + public static void main(String[] args) + { + new DashedArcs().runTestSuite(args); + } + +} diff -r 3ae4c8d1a562 -r 8bdbaf02b8e6 src/org/gfxtest/testsuites/DashedPolygons.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/testsuites/DashedPolygons.java Fri Sep 17 13:31:48 2010 +0200 @@ -0,0 +1,89 @@ +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.testsuites; + +import java.awt.*; + +import org.gfxtest.framework.*; +import org.gfxtest.framework.annotations.*; + +/** + * This test renders various polygons using identity transformation matrix. + * + * @author Pavel Tisnovsky + */ + at TestType(TestTypes.RENDER_TEST) + at GraphicsPrimitive(GraphicsPrimitives.POLYGON) + at RenderStyle(RenderStyles.DASH) + at Transformation(Transformations.NONE) + at Zoom(1) +public class DashedPolygons extends GfxTest +{ + @Override + protected void drawEntity(TestImage image, Graphics2D graphics, int testNumber, EntityRenderingStyle entityRenderingStyle) + { + graphics.setColor(Color.BLACK); + graphics.setStroke(new BasicStroke(entityRenderingStyle.getWidth(), entityRenderingStyle.getCap(), entityRenderingStyle.getJoin(), 1.0f, entityRenderingStyle.getDash(), 0.0f)); + + int w = image.getWidth(); + int h = image.getHeight(); + int xPoints[] = new int[] { OFFSET, w >> 1, w >> 1, w - OFFSET }; + int yPoints[] = new int[] { h >> 1, OFFSET, h - OFFSET, h >> 1 }; + + graphics.drawPolygon(xPoints, yPoints, xPoints.length); + + drawCross(graphics, OFFSET, h >> 1, CROSS_SIZE); + drawCross(graphics, w >> 1, OFFSET, CROSS_SIZE); + drawCross(graphics, w >> 1, h - OFFSET, CROSS_SIZE); + drawCross(graphics, w - OFFSET, h >> 1, CROSS_SIZE); + } + + @Override + protected void runOtherTests(GfxTestConfiguration configuration) + { + drawEntityWithVariousStyles(configuration, true, true, true, false, true); + } + + public static void main(String[] args) + { + new DashedPolygons().runTestSuite(args); + } +} diff -r 3ae4c8d1a562 -r 8bdbaf02b8e6 src/org/gfxtest/testsuites/DashedRoundRectangles.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/testsuites/DashedRoundRectangles.java Fri Sep 17 13:31:48 2010 +0200 @@ -0,0 +1,94 @@ +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.testsuites; + +import java.awt.*; + +import org.gfxtest.framework.*; +import org.gfxtest.framework.annotations.*; + +/** + * Dashed round rectangle test. + * + * @author Pavel Tisnovsky + */ + at TestType(TestTypes.RENDER_TEST) + at GraphicsPrimitive(GraphicsPrimitives.ROUND_RECTANGLE) + at RenderStyle(RenderStyles.DASH) + at Transformation(Transformations.NONE) + at Zoom(1) +public class DashedRoundRectangles extends GfxTest +{ + + @Override + protected void drawEntity(TestImage image, Graphics2D graphics, int testNumber, EntityRenderingStyle entityRenderingStyle) + { + graphics.setColor(Color.BLACK); + graphics.setStroke(new BasicStroke(entityRenderingStyle.getWidth(), entityRenderingStyle.getCap(), entityRenderingStyle.getJoin(), 1.0f, entityRenderingStyle.getDash(), 0.0f)); + + int xc = image.getCenterX(); + int yc = image.getCenterY(); + double rmaj = (xc > yc ? yc : xc) - (MAJOR_RADIUS - MINOR_RADIUS); + + for (float m = 1.0f; m >= 0.0f; m -= 1.0 / 16.0) + { + Color color = new Color(Color.HSBtoRGB(m, 1.0f, 1.0f)); + graphics.setColor(color); + double angle = Math.PI * 2 * m; + int x = (int) (xc + rmaj * Math.cos(angle)); + int y = (int) (yc + rmaj * Math.sin(angle)); + int radius = (int)(MINOR_RADIUS + m * (MAJOR_RADIUS - MINOR_RADIUS)); + graphics.drawRoundRect(x - radius, y - radius, radius << 1, radius << 1, 40, 40); + } + drawCross(graphics, xc, yc, CROSS_SIZE); + } + + @Override + protected void runOtherTests(GfxTestConfiguration configuration) + { + drawEntityWithVariousStyles(configuration, true, false, true, false, true); + } + + public static void main(String[] args) + { + new DashedRoundRectangles().runTestSuite(args); + } +} From bugzilla-daemon at icedtea.classpath.org Fri Sep 17 06:51:21 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 17 Sep 2010 13:51:21 +0000 Subject: [Bug 528] Crash with nvidia and xorg opengl when running netbeans Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=528 ------- Comment #7 from gnu_andrew at member.fsf.org 2010-09-17 13:51 ------- We certainly don't recommend 2 and, as they share the majority of the same source code, you're likely to hit the same problem anyway. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From andrew at icedtea.classpath.org Fri Sep 17 07:01:24 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 17 Sep 2010 14:01:24 +0000 Subject: /hg/icedtea6: Fix test output for 6638712. Message-ID: changeset 06703b4d41b4 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=06703b4d41b4 author: Andrew John Hughes date: Fri Sep 17 15:01:17 2010 +0100 Fix test output for 6638712. 2010-09-17 Andrew John Hughes * patches/openjdk/6638712-wildcard_types.patch: Fix copyrights (from 6875336) and test output. * patches/openjdk/6650759-missing_inference.patch, Remove test output changes already incorporated in 6875336. diffstat: 3 files changed, 96 insertions(+), 208 deletions(-) ChangeLog | 8 patches/openjdk/6638712-wildcard_types.patch | 282 +++++++---------------- patches/openjdk/6650759-missing_inference.patch | 14 - diffs (456 lines): diff -r 63024b10e2ef -r 06703b4d41b4 ChangeLog --- a/ChangeLog Thu Sep 16 23:36:39 2010 +0100 +++ b/ChangeLog Fri Sep 17 15:01:17 2010 +0100 @@ -1,3 +1,11 @@ 2010-09-09 Andrew John Hughes + + * patches/openjdk/6638712-wildcard_types.patch: + Fix copyrights (from 6875336) and test output. + * patches/openjdk/6650759-missing_inference.patch, + Remove test output changes already incorporated in + 6875336. + 2010-09-09 Andrew John Hughes * Makefile.am: Add new patches. diff -r 63024b10e2ef -r 06703b4d41b4 patches/openjdk/6638712-wildcard_types.patch --- a/patches/openjdk/6638712-wildcard_types.patch Thu Sep 16 23:36:39 2010 +0100 +++ b/patches/openjdk/6638712-wildcard_types.patch Fri Sep 17 15:01:17 2010 +0100 @@ -1,6 +1,15 @@ diff -Nru openjdk.orig/langtools/src/sha -diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java 2010-06-21 22:16:20.000000000 +0100 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java 2010-09-09 19:54:58.054019539 +0100 +# HG changeset patch +# User mcimadamore +# Date 1284137253 -3600 +# Node ID c5fe15e03287286fa8e668798409c4d7493ee834 +# Parent 27f03394a69d018c1c2badadee65ea39c7274606 +6638712: Inference with wildcard types causes selection of inapplicable method +Summary: Added global sanity check in order to make sure that return type inference does not violate bounds constraints +Reviewed-by: jjg + +diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/code/Type.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java Wed Jun 23 16:44:15 2010 -0700 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java Fri Sep 10 17:47:33 2010 +0100 @@ -1061,6 +1061,21 @@ return qtype.isErroneous(); } @@ -23,9 +32,9 @@ diff -Nru openjdk.orig/langtools/src/sha public Type map(Mapping f) { return f.apply(qtype); } -diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java 2010-06-21 22:16:20.000000000 +0100 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java 2010-09-09 19:54:58.054019539 +0100 +diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/code/Types.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java Wed Jun 23 16:44:15 2010 -0700 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java Fri Sep 10 17:47:33 2010 +0100 @@ -331,6 +331,14 @@ if (s.tag >= firstPartialTag) return isSuperType(s, t); @@ -56,9 +65,9 @@ diff -Nru openjdk.orig/langtools/src/sha public Type capture(Type t) { if (t.tag != CLASS) return t; -diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java 2010-06-21 22:16:20.000000000 +0100 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java 2010-09-09 19:54:58.054019539 +0100 +diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/comp/Check.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java Wed Jun 23 16:44:15 2010 -0700 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java Fri Sep 10 17:47:33 2010 +0100 @@ -383,6 +383,10 @@ JCDiagnostic.fragment("incompatible.types" + (d!=null ? ".1" : ""), d), t, pt); @@ -70,9 +79,9 @@ diff -Nru openjdk.orig/langtools/src/sha } } } -diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java 2010-06-21 22:16:20.000000000 +0100 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java 2010-09-09 20:00:32.891268438 +0100 +diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/comp/Infer.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java Wed Jun 23 16:44:15 2010 -0700 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java Fri Sep 10 17:47:33 2010 +0100 @@ -29,6 +29,7 @@ import com.sun.tools.javac.util.List; import com.sun.tools.javac.code.*; @@ -108,11 +117,13 @@ diff -Nru openjdk.orig/langtools/src/sha + InferenceException() { this.diagnostic = null; - this.isAmbiguous = isAmbiguous; -- } + } - NoInstanceException setMessage(String key) { - this.diagnostic = JCDiagnostic.fragment(key); -- return this; -- } ++ InferenceException setMessage(String key, Object... args) { ++ this.diagnostic = JCDiagnostic.fragment(key, args); + return this; + } - NoInstanceException setMessage(String key, Object arg1) { - this.diagnostic = JCDiagnostic.fragment(key, arg1); - return this; @@ -120,13 +131,11 @@ diff -Nru openjdk.orig/langtools/src/sha - NoInstanceException setMessage(String key, Object arg1, Object arg2) { - this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2); - return this; - } +- } - NoInstanceException setMessage(String key, Object arg1, Object arg2, Object arg3) { - this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2, arg3); -+ InferenceException setMessage(String key, Object... args) { -+ this.diagnostic = JCDiagnostic.fragment(key, args); - return this; - } +- return this; +- } + public JCDiagnostic getDiagnostic() { return diagnostic; @@ -300,7 +309,10 @@ diff -Nru openjdk.orig/langtools/src/sha + return super.inst(inferred, types); + }}; + return mt2; -+ } + } +- +- // return instantiated version of method type +- return types.subst(mt, tvars, insttypes.toList()); + else if (!rs.argumentsAcceptable(capturedArgs, mt.getParameterTypes(), allowBoxing, useVarargs, warn)) { + // inferred method is not applicable + throw invalidInstanceException.setMessage("inferred.do.not.conform.to.params", mt.getParameterTypes(), argtypes); @@ -308,10 +320,7 @@ diff -Nru openjdk.orig/langtools/src/sha + else { + // return instantiated version of method type + return mt; - } -- -- // return instantiated version of method type -- return types.subst(mt, tvars, insttypes.toList()); ++ } } //where @@ -344,9 +353,9 @@ diff -Nru openjdk.orig/langtools/src/sha } } } -diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java 2010-06-21 22:16:20.000000000 +0100 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java 2010-09-09 19:54:58.058019555 +0100 +diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/comp/Resolve.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java Wed Jun 23 16:44:15 2010 -0700 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java Fri Sep 10 17:47:33 2010 +0100 @@ -279,7 +279,7 @@ boolean allowBoxing, boolean useVarargs, @@ -374,9 +383,9 @@ diff -Nru openjdk.orig/langtools/src/sha switch (bestSoFar.kind) { case ABSENT_MTH: return wrongMethod.setWrongSym(sym, ex.getDiagnostic()); -diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties openjdk/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties ---- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties 2010-06-21 22:16:21.000000000 +0100 -+++ openjdk/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties 2010-09-09 19:54:58.058019555 +0100 +diff -r 27f03394a69d -r c5fe15e03287 src/share/classes/com/sun/tools/javac/resources/compiler.properties +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties Wed Jun 23 16:44:15 2010 -0700 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties Fri Sep 10 17:47:33 2010 +0100 @@ -454,6 +454,8 @@ type parameters of {0} cannot be determined compiler.err.undetermined.type.1=\ @@ -401,9 +410,9 @@ diff -Nru openjdk.orig/langtools/src/sha ##### -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6302954/T6476073.java openjdk/langtools/test/tools/javac/generics/inference/6302954/T6476073.java ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6302954/T6476073.java 2010-06-21 22:16:25.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6302954/T6476073.java 2010-09-09 19:54:58.058019555 +0100 +diff -r 27f03394a69d -r c5fe15e03287 test/tools/javac/generics/inference/6302954/T6476073.java +--- openjdk.orig/langtools/test/tools/javac/generics/inference/6302954/T6476073.java Wed Jun 23 16:44:15 2010 -0700 ++++ openjdk/langtools/test/tools/javac/generics/inference/6302954/T6476073.java Fri Sep 10 17:47:33 2010 +0100 @@ -25,6 +25,7 @@ * @test * @bug 6476073 @@ -412,35 +421,12 @@ diff -Nru openjdk.orig/langtools/test/to * @compile T6476073.java */ -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java 2010-09-09 19:54:58.062019572 +0100 -@@ -0,0 +1,41 @@ +diff -r 27f03394a69d -r c5fe15e03287 test/tools/javac/generics/inference/6638712/T6638712a.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java Fri Sep 10 17:47:33 2010 +0100 +@@ -0,0 +1,18 @@ +/* -+ * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, -+ * CA 95054 USA or visit www.sun.com if you need additional information or -+ * have any questions. -+ */ -+ -+/* -+ * @test ++ * @test /nodynamiccopyright/ + * @bug 6638712 + * @author mcimadamore + * @summary Inference with wildcard types causes selection of inapplicable method @@ -457,41 +443,18 @@ diff -Nru openjdk.orig/langtools/test/to + Comparator c3 = compound(x); + } +} -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712a.out openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.out ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712a.out 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.out 2010-09-09 19:54:58.062019572 +0100 +diff -r 27f03394a69d -r c5fe15e03287 test/tools/javac/generics/inference/6638712/T6638712a.out +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.out Fri Sep 10 17:47:33 2010 +0100 @@ -0,0 +1,2 @@ -+T6638712a.java:39:41: compiler.err.invalid.inferred.types: T, (compiler.misc.inferred.do.not.conform.to.params: java.lang.Iterable>, java.util.List>) ++T6638712a.java:39:41: compiler.err.invalid.inferred.types: T, (- compiler.misc.inferred.do.not.conform.to.params: java.lang.Iterable>, java.util.List>) +1 error -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712b.java openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712b.java ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712b.java 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712b.java 2010-09-09 19:54:58.066019583 +0100 -@@ -0,0 +1,39 @@ +diff -r 27f03394a69d -r c5fe15e03287 test/tools/javac/generics/inference/6638712/T6638712b.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712b.java Fri Sep 10 17:47:33 2010 +0100 +@@ -0,0 +1,16 @@ +/* -+ * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, -+ * CA 95054 USA or visit www.sun.com if you need additional information or -+ * have any questions. -+ */ -+ -+/* -+ * @test ++ * @test /nodynamiccopyright/ + * @bug 6638712 + * @author mcimadamore + * @summary Inference with wildcard types causes selection of inapplicable method @@ -506,41 +469,18 @@ diff -Nru openjdk.orig/langtools/test/to + String i = m(x); + } +} -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out 2010-09-09 19:54:58.066019583 +0100 +diff -r 27f03394a69d -r c5fe15e03287 test/tools/javac/generics/inference/6638712/T6638712b.out +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out Fri Sep 10 17:47:33 2010 +0100 @@ -0,0 +1,2 @@ -+T6638712b.java:37:21: compiler.err.invalid.inferred.types: T, (compiler.misc.inferred.do.not.conform.to.bounds: T6638712b, T6638712b) ++T6638712b.java:37:21: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: T, T, java.lang.String)), T, java.lang.String +1 error -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712c.java openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712c.java ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712c.java 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712c.java 2010-09-09 19:54:58.066019583 +0100 -@@ -0,0 +1,41 @@ +diff -r 27f03394a69d -r c5fe15e03287 test/tools/javac/generics/inference/6638712/T6638712c.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712c.java Fri Sep 10 17:47:33 2010 +0100 +@@ -0,0 +1,18 @@ +/* -+ * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, -+ * CA 95054 USA or visit www.sun.com if you need additional information or -+ * have any questions. -+ */ -+ -+/* -+ * @test ++ * @test /nodynamiccopyright/ + * @bug 6638712 6707034 + * @author mcimadamore + * @summary Inference with wildcard types causes selection of inapplicable method @@ -557,41 +497,18 @@ diff -Nru openjdk.orig/langtools/test/to + sort(e, comp); + } +} -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712c.out openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712c.out ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712c.out 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712c.out 2010-09-09 19:54:58.066019583 +0100 +diff -r 27f03394a69d -r c5fe15e03287 test/tools/javac/generics/inference/6638712/T6638712c.out +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712c.out Fri Sep 10 17:47:33 2010 +0100 @@ -0,0 +1,2 @@ -+T6638712c.java:39:9: compiler.err.cant.apply.symbol: kindname.method, sort, T[],java.util.Comparator, java.lang.Enum[],java.util.Comparator>, kindname.class, T6638712c, null ++T6638712c.java:39:9: compiler.err.cant.apply.symbol: sort(T[],java.util.Comparator), T6638712c, , java.lang.Enum[],java.util.Comparator>, null +1 error -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712d.java openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712d.java ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712d.java 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712d.java 2010-09-09 19:54:58.066019583 +0100 -@@ -0,0 +1,41 @@ +diff -r 27f03394a69d -r c5fe15e03287 test/tools/javac/generics/inference/6638712/T6638712d.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712d.java Fri Sep 10 17:47:33 2010 +0100 +@@ -0,0 +1,18 @@ +/* -+ * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, -+ * CA 95054 USA or visit www.sun.com if you need additional information or -+ * have any questions. -+ */ -+ -+/* -+ * @test ++ * @test /nodynamiccopyright/ + * @bug 6638712 6730468 + * @author mcimadamore + * @summary Inference with wildcard types causes selection of inapplicable method @@ -608,41 +525,18 @@ diff -Nru openjdk.orig/langtools/test/to + m(1, lls); + } +} -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712d.out openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712d.out ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712d.out 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712d.out 2010-09-09 19:54:58.066019583 +0100 +diff -r 27f03394a69d -r c5fe15e03287 test/tools/javac/generics/inference/6638712/T6638712d.out +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712d.out Fri Sep 10 17:47:33 2010 +0100 @@ -0,0 +1,2 @@ -+T6638712d.java:39:9: compiler.err.cant.apply.symbol: kindname.method, m, U,java.util.List>, int,java.util.List>, kindname.class, T6638712d, null ++T6638712d.java:39:9: compiler.err.cant.apply.symbol: m(U,java.util.List>), T6638712d, , int,java.util.List>, null +1 error -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712e.java openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712e.java ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712e.java 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712e.java 2010-09-09 19:54:58.066019583 +0100 -@@ -0,0 +1,43 @@ +diff -r 27f03394a69d -r c5fe15e03287 test/tools/javac/generics/inference/6638712/T6638712e.java +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712e.java Fri Sep 10 17:47:33 2010 +0100 +@@ -0,0 +1,20 @@ +/* -+ * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. -+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -+ * -+ * This code is free software; you can redistribute it and/or modify it -+ * under the terms of the GNU General Public License version 2 only, as -+ * published by the Free Software Foundation. -+ * -+ * This code is distributed in the hope that it will be useful, but WITHOUT -+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -+ * version 2 for more details (a copy is included in the LICENSE file that -+ * accompanied this code). -+ * -+ * You should have received a copy of the GNU General Public License version -+ * 2 along with this work; if not, write to the Free Software Foundation, -+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -+ * -+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, -+ * CA 95054 USA or visit www.sun.com if you need additional information or -+ * have any questions. -+ */ -+ -+/* -+ * @test ++ * @test /nodynamiccopyright/ + * @bug 6638712 6795689 + * @author mcimadamore + * @summary Inference with wildcard types causes selection of inapplicable method @@ -661,9 +555,9 @@ diff -Nru openjdk.orig/langtools/test/to + } + } +} -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out 1970-01-01 01:00:00.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out 2010-09-09 19:54:58.066019583 +0100 +diff -r 27f03394a69d -r c5fe15e03287 test/tools/javac/generics/inference/6638712/T6638712e.out +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out Fri Sep 10 17:47:33 2010 +0100 @@ -0,0 +1,2 @@ -+T6638712e.java:40:27: compiler.err.invalid.inferred.types: X, (compiler.misc.inferred.do.not.conform.to.params: T6638712e.Foo, T6638712e.Foo) ++T6638712e.java:40:27: compiler.err.prob.found.req: (- compiler.misc.incompatible.types.1: (- compiler.misc.no.conforming.instance.exists: X, T6638712e.Foo, T6638712e.Foo)), T6638712e.Foo, T6638712e.Foo +1 error diff -r 63024b10e2ef -r 06703b4d41b4 patches/openjdk/6650759-missing_inference.patch --- a/patches/openjdk/6650759-missing_inference.patch Thu Sep 16 23:36:39 2010 +0100 +++ b/patches/openjdk/6650759-missing_inference.patch Fri Sep 17 15:01:17 2010 +0100 @@ -181,20 +181,6 @@ diff -Nru openjdk.orig/langtools/test/to * @compile T6476073.java */ -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out 2010-09-09 20:03:34.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712b.out 2010-09-09 20:26:25.205075284 +0100 -@@ -1,2 +1,2 @@ --T6638712b.java:37:21: compiler.err.invalid.inferred.types: T, (compiler.misc.inferred.do.not.conform.to.bounds: T6638712b, T6638712b) -++T6638712b.java:37:21: compiler.err.prob.found.req: (compiler.misc.incompatible.types.1: (compiler.misc.no.conforming.instance.exists: T, T, java.lang.String)), T, java.lang.String - 1 error -diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out ---- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out 2010-09-09 20:03:34.000000000 +0100 -+++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712e.out 2010-09-09 20:27:14.405257916 +0100 -@@ -1,2 +1,2 @@ --T6638712e.java:40:27: compiler.err.invalid.inferred.types: X, (compiler.misc.inferred.do.not.conform.to.params: T6638712e.Foo, T6638712e.Foo) -+T6638712e.java:40:27: compiler.err.prob.found.req: (compiler.misc.incompatible.types.1: (compiler.misc.no.conforming.instance.exists: X, T6638712e.Foo, T6638712e.Foo)), T6638712e.Foo, T6638712e.Foo - 1 error diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6650759/T6650759a.java openjdk/langtools/test/tools/javac/generics/inference/6650759/T6650759a.java --- openjdk.orig/langtools/test/tools/javac/generics/inference/6650759/T6650759a.java 1970-01-01 01:00:00.000000000 +0100 +++ openjdk/langtools/test/tools/javac/generics/inference/6650759/T6650759a.java 2010-09-09 20:24:56.248744934 +0100 From omajid at icedtea.classpath.org Fri Sep 17 07:09:59 2010 From: omajid at icedtea.classpath.org (omajid at icedtea.classpath.org) Date: Fri, 17 Sep 2010 14:09:59 +0000 Subject: /hg/icedtea6: only generate javaws.1 if we want to build docs an... Message-ID: changeset 2713dbdb914e in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=2713dbdb914e author: omajid date: Fri Sep 17 10:07:45 2010 -0400 only generate javaws.1 if we want to build docs and the man directory exists 2010-09-17 Omair Majid * Makefile.am: Only create man pages for javaws if ENABLE_DOCS is set and the man directory exists. diffstat: 2 files changed, 41 insertions(+), 12 deletions(-) ChangeLog | 5 +++++ Makefile.am | 48 ++++++++++++++++++++++++++++++++++++------------ diffs (91 lines): diff -r 06703b4d41b4 -r 2713dbdb914e ChangeLog --- a/ChangeLog Fri Sep 17 15:01:17 2010 +0100 +++ b/ChangeLog Fri Sep 17 10:07:45 2010 -0400 @@ -1,3 +1,8 @@ 2010-09-17 Andrew John Hughes + + * Makefile.am: Only create man pages for javaws if ENABLE_DOCS is set + and the man directory exists. + 2010-09-17 Andrew John Hughes * patches/openjdk/6638712-wildcard_types.patch: diff -r 06703b4d41b4 -r 2713dbdb914e Makefile.am --- a/Makefile.am Fri Sep 17 15:01:17 2010 +0100 +++ b/Makefile.am Fri Sep 17 10:07:45 2010 -0400 @@ -1424,10 +1424,16 @@ stamps/add-netx.stamp: stamps/netx-dist. $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ $(BUILD_OUTPUT_DIR)/j2re-image/lib - cp $(NETX_SRCDIR)/javaws.1 \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 - cp $(NETX_SRCDIR)/javaws.1 \ - $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 +if ENABLE_DOCS + if test -d $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ + cp $(NETX_SRCDIR)/javaws.1 \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; \ + fi + if test -d $(BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ + cp $(NETX_SRCDIR)/javaws.1 \ + $(BUILD_OUTPUT_DIR)/j2re-image/man/man1; \ + fi +endif touch stamps/add-netx.stamp clean-add-netx: @@ -1437,8 +1443,14 @@ clean-add-netx: rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar - rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 - rm -f $(BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 +if ENABLE_DOCS + if test -d $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ + rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1; \ + fi + if test -d $(BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ + rm -f $(BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1; \ + fi +endif rm -f stamps/add-netx.stamp stamps/add-netx-debug.stamp: stamps/netx-dist.stamp extra-lib/about.jar @@ -1450,10 +1462,16 @@ stamps/add-netx-debug.stamp: stamps/netx $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib - cp $(NETX_SRCDIR)/javaws.1 \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 - cp $(NETX_SRCDIR)/javaws.1 \ - $(BUILD_OUTPUT_DIR)/j2re-image/man/man1 +if ENABLE_DOCS + if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ + cp $(NETX_SRCDIR)/javaws.1 \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; \ + fi + if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ + cp $(NETX_SRCDIR)/javaws.1 \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1; \ + fi +endif touch stamps/add-netx-debug.stamp clean-add-netx-debug: @@ -1463,8 +1481,14 @@ clean-add-netx-debug: rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar - rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 - rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 +if ENABLE_DOCS + if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1; \ + fi + if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1; \ + fi +endif rm -f stamps/add-netx-debug.stamp # OpenJDK ecj Targets From bugzilla-daemon at icedtea.classpath.org Fri Sep 17 08:08:08 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 17 Sep 2010 15:08:08 +0000 Subject: [Bug 528] Crash with nvidia and xorg opengl when running netbeans Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=528 ------- Comment #8 from msporysz06 at gmail.com 2010-09-17 15:08 ------- It works, at least for my configuration. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From ptisnovs at redhat.com Fri Sep 17 08:18:34 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Fri, 17 Sep 2010 17:18:34 +0200 Subject: Patch for regression test OnScreenRenderingResizeTest Message-ID: <4C9386CA.8070703@redhat.com> Hi, is it possible to add patch [1] for regression test OnScreenRenderingResizeTest.java to IcedTea6 HEAD? Changed test is already pushed to OpenJDK7 (bug ID#6984543) and I hope it will be possible to backport it to OpenJDK6 too. Pavel -------------- next part -------------- A non-text attachment was scrubbed... Name: 6984543-OnScreenRenderingResizeTest.patch Type: text/x-patch Size: 1150 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100917/3089c618/6984543-OnScreenRenderingResizeTest.patch From doko at ubuntu.com Fri Sep 17 08:37:03 2010 From: doko at ubuntu.com (Matthias Klose) Date: Fri, 17 Sep 2010 17:37:03 +0200 Subject: /hg/icedtea6: only generate javaws.1 if we want to build docs an... In-Reply-To: References: Message-ID: <4C938B1F.9090806@ubuntu.com> On 17.09.2010 16:09, omajid at icedtea.classpath.org wrote: > changeset 2713dbdb914e in /hg/icedtea6 > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=2713dbdb914e > author: omajid > date: Fri Sep 17 10:07:45 2010 -0400 > > only generate javaws.1 if we want to build docs and the man > directory exists I don't think this is a good idea. --disable-docs is there to save some build time, and usually you don't need the docs when building the architecture dependent packages packages, but the man pages *are* included in these architecture dependent packages. I don't care about the time it takes to create the man page, too much micro optimization ;) Matthias From omajid at redhat.com Fri Sep 17 08:46:04 2010 From: omajid at redhat.com (Omair Majid) Date: Fri, 17 Sep 2010 11:46:04 -0400 Subject: /hg/icedtea6: only generate javaws.1 if we want to build docs an... In-Reply-To: <4C938B1F.9090806@ubuntu.com> References: <4C938B1F.9090806@ubuntu.com> Message-ID: <4C938D3C.3010301@redhat.com> On 09/17/2010 11:37 AM, Matthias Klose wrote: > On 17.09.2010 16:09, omajid at icedtea.classpath.org wrote: >> changeset 2713dbdb914e in /hg/icedtea6 >> details: >> http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=2713dbdb914e >> author: omajid >> date: Fri Sep 17 10:07:45 2010 -0400 >> >> only generate javaws.1 if we want to build docs and the man >> directory exists > > I don't think this is a good idea. --disable-docs is there to save some > build time, and usually you don't need the docs when building the > architecture dependent packages packages, but the man pages *are* > included in these architecture dependent packages. I don't care about > the time it takes to create the man page, too much micro optimization ;) > You certainly have a point. I only added this patch because without it, the 'make hotspot' target was causing a build failure. For some reason 'make hotspot' builds netx and plugin, but not the rest of the jdk or the man pages. So the copying of the man pages to $(build)/j2sdk-image/man/ would fail. If you think that the javaws man pages should be built whether or not --enable-docs is used, I can remove the if ENABLE_DOCS check (but we still need the checks for the man folder existing). Cheers, Omair From ahughes at redhat.com Fri Sep 17 09:00:03 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Fri, 17 Sep 2010 17:00:03 +0100 Subject: /hg/icedtea6: only generate javaws.1 if we want to build docs an... In-Reply-To: <4C938D3C.3010301@redhat.com> References: <4C938B1F.9090806@ubuntu.com> <4C938D3C.3010301@redhat.com> Message-ID: <20100917160003.GJ673@rivendell.middle-earth.co.uk> On 11:46 Fri 17 Sep , Omair Majid wrote: > On 09/17/2010 11:37 AM, Matthias Klose wrote: > > On 17.09.2010 16:09, omajid at icedtea.classpath.org wrote: > >> changeset 2713dbdb914e in /hg/icedtea6 > >> details: > >> http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=2713dbdb914e > >> author: omajid > >> date: Fri Sep 17 10:07:45 2010 -0400 > >> > >> only generate javaws.1 if we want to build docs and the man > >> directory exists > > > > I don't think this is a good idea. --disable-docs is there to save some > > build time, and usually you don't need the docs when building the > > architecture dependent packages packages, but the man pages *are* > > included in these architecture dependent packages. I don't care about > > the time it takes to create the man page, too much micro optimization ;) > > I was under the belief that it was failing to copy the man page if DISABLE_DOCS was set. If not, then certainly this patch shouldn't be applied. I don't follow either of your arguments though; this is nothing to do with speed (the issue is a build breakage) and why are man pages architecture-dependent anyway, whether they are copied or not? > > You certainly have a point. I only added this patch because without it, > the 'make hotspot' target was causing a build failure. For some reason > 'make hotspot' builds netx and plugin, but not the rest of the jdk or > the man pages. That's by design. It's called 'make hotspot' for a reason. The JDK should have already been built. It's not used for production as far as I'm aware (it seems to be more of a hack for those working on Zero/Shark) and there seems to be a very simple solution of rebuilding icedtea-ecj and icedtea rather than icedtea-against-ecj and icedtea-against-icedtea respectively. So the copying of the man pages to > $(build)/j2sdk-image/man/ would fail. If you think that the javaws man > pages should be built whether or not --enable-docs is used, I can remove > the if ENABLE_DOCS check (but we still need the checks for the man > folder existing). > I don't think we need the checks either if the man pages are always present. That would be hiding an earlier build failure. > Cheers, > Omair -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From andrew at icedtea.classpath.org Fri Sep 17 09:36:15 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 17 Sep 2010 16:36:15 +0000 Subject: /hg/icedtea6: Support systems where the sched_getcpu libc call i... Message-ID: changeset ddbf2447886c in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ddbf2447886c author: Andrew John Hughes date: Fri Sep 17 17:36:07 2010 +0100 Support systems where the sched_getcpu libc call is not present but the syscall is. 2010-09-17 Andrew John Hughes * Makefile.am: Add new patch. * patches/numa_on_early_glibc.patch, Fallback to making a syscall if sched_getcpu exists but the glibc used is too old to support it. diffstat: 3 files changed, 56 insertions(+), 1 deletion(-) ChangeLog | 8 ++++++ Makefile.am | 3 +- patches/numa_on_early_glibc.patch | 46 +++++++++++++++++++++++++++++++++++++ diffs (78 lines): diff -r 2713dbdb914e -r ddbf2447886c ChangeLog --- a/ChangeLog Fri Sep 17 10:07:45 2010 -0400 +++ b/ChangeLog Fri Sep 17 17:36:07 2010 +0100 @@ -1,3 +1,11 @@ 2010-09-17 Omair Majid + + * Makefile.am: + Add new patch. + * patches/numa_on_early_glibc.patch, + Fallback to making a syscall if sched_getcpu + exists but the glibc used is too old to support it. + 2010-09-17 Omair Majid * Makefile.am: Only create man pages for javaws if ENABLE_DOCS is set diff -r 2713dbdb914e -r ddbf2447886c Makefile.am --- a/Makefile.am Fri Sep 17 10:07:45 2010 -0400 +++ b/Makefile.am Fri Sep 17 17:36:07 2010 +0100 @@ -297,7 +297,8 @@ ICEDTEA_PATCHES = \ patches/openjdk/6969395-net_bugs.patch \ patches/openjdk/6510892-httpserver_test.patch \ patches/openjdk/6638712-wildcard_types.patch \ - patches/openjdk/6650759-missing_inference.patch + patches/openjdk/6650759-missing_inference.patch \ + patches/numa_on_early_glibc.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 2713dbdb914e -r ddbf2447886c patches/numa_on_early_glibc.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/numa_on_early_glibc.patch Fri Sep 17 17:36:07 2010 +0100 @@ -0,0 +1,46 @@ +--- openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp 2010-09-14 15:30:59.000000000 +0100 ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2010-09-14 17:45:54.000000000 +0100 +@@ -54,6 +54,10 @@ + # include + # include + ++#if __x86_64__ ++#include ++#endif ++ + #define MAX_PATH (2 * K) + + // for timer info max values which include all bits +@@ -2414,6 +2418,21 @@ + return end; + } + ++static int sched_getcpu_syscall(void) { ++ unsigned int cpu; ++ int retval = -1; ++ ++#if __x86_64__ ++ typedef long (*vgetcpu_t)(unsigned int *cpu, unsigned int *node, unsigned long *tcache); ++ vgetcpu_t vgetcpu = (vgetcpu_t)VSYSCALL_ADDR(__NR_vgetcpu); ++ retval = vgetcpu(&cpu, NULL, NULL); ++#elif __i386__ ++ retval = syscall(SYS_getcpu, &cpu, NULL, NULL); ++#endif ++ ++ return (retval == -1) ? retval : cpu; ++} ++ + extern "C" void numa_warn(int number, char *where, ...) { } + extern "C" void numa_error(char *where) { } + +@@ -2422,6 +2441,10 @@ + set_sched_getcpu(CAST_TO_FN_PTR(sched_getcpu_func_t, + dlsym(RTLD_DEFAULT, "sched_getcpu"))); + ++ // If it's not, try a direct syscall. ++ if (sched_getcpu() == -1) ++ set_sched_getcpu(CAST_TO_FN_PTR(sched_getcpu_func_t, (void*)&sched_getcpu_syscall)); ++ + if (sched_getcpu() != -1) { // Does it work? + void *handle = dlopen("libnuma.so.1", RTLD_LAZY); + if (handle != NULL) { From omajid at redhat.com Fri Sep 17 12:55:31 2010 From: omajid at redhat.com (Omair Majid) Date: Fri, 17 Sep 2010 15:55:31 -0400 Subject: [RFC] PR 535: null pointer exceptions during applet initialization Message-ID: <4C93C7B3.207@redhat.com> Hi, The attached patch fixes icedtea bug 535 [1]. Some calls to showAppletStatus are throwing null pointer exceptions. The problem appears to be that the AppletPanel is reparented during initialization (see PluginAppletViewer.reFrame()). There is a small window of time where the AppletPanel does not have a parent, which causes getParent() to return null and cause this NullPointerException. The attached patch tries to avoid this problem by trying again if it detects the parent is null. Any thoughts or comments? Cheers, Omair [1] http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=535 -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea-plugin-null-parent.patch Type: text/x-patch Size: 1236 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100917/687d1378/icedtea-plugin-null-parent.patch From bugzilla-daemon at icedtea.classpath.org Fri Sep 17 12:56:41 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Fri, 17 Sep 2010 19:56:41 +0000 Subject: [Bug 445] FMJstudio Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=445 asu at redhat.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |WORKSFORME ------- Comment #2 from asu at redhat.com 2010-09-17 19:56 ------- Hello, I have just tried running fmjstudio with no problems, the gui starts up just fine and loads the music file as expected. Since no extra information is provided, I am closing this as WORKSFORME. Feel free to reopen this issue if you are still experiencing problems. --Andrew -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From dbhole at redhat.com Fri Sep 17 13:16:21 2010 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 17 Sep 2010 16:16:21 -0400 Subject: [RFC] PR 535: null pointer exceptions during applet initialization In-Reply-To: <4C93C7B3.207@redhat.com> References: <4C93C7B3.207@redhat.com> Message-ID: <20100917201621.GB13671@redhat.com> * Omair Majid [2010-09-17 15:56]: > Hi, > > The attached patch fixes icedtea bug 535 [1]. Some calls to > showAppletStatus are throwing null pointer exceptions. The problem > appears to be that the AppletPanel is reparented during > initialization (see PluginAppletViewer.reFrame()). There is a small > window of time where the AppletPanel does not have a parent, which > causes getParent() to return null and cause this > NullPointerException. > > The attached patch tries to avoid this problem by trying again if it > detects the parent is null. > > Any thoughts or comments? > > Cheers, > Omair > Patch is fine. But as I commented on the bug, please hold off for now. There are API changes I am working on that will add a common wait function for this sort of stuff. There are many cases where threads need to wait till the applet is ready, and one of the changes will add a function that blocks till such a time. Cheers, Deepak > [1] http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=535 > diff -ruN openjdk.orig/jdk/src/share/classes/sun/applet/AppletViewerPanel.java openjdk/jdk/src/share/classes/sun/applet/AppletViewerPanel.java > --- openjdk.orig/jdk/src/share/classes/sun/applet/AppletViewerPanel.java 2010-09-17 15:01:01.790221354 -0400 > +++ openjdk/jdk/src/share/classes/sun/applet/AppletViewerPanel.java 2010-09-17 15:17:21.758076505 -0400 > @@ -199,7 +199,22 @@ > * also implemented by the AppletPanel class. > */ > public AppletContext getAppletContext() { > - return (AppletContext)getParent(); > + Object parent = getParent(); > + int nullCount = 0; > + final int ERROR_THRESHOLD = 1000; > + // the AppletViewerPanel is reparented during initialization and > + // there is a small window of time where it has no parent > + while (parent == null) { > + Thread.yield(); > + nullCount++; > + // if we have waited too long and still dont have a parent, > + // something is very wrong; dont try to mask it > + if (nullCount == ERROR_THRESHOLD) { > + return null; > + } > + parent = getParent(); > + } > + return (AppletContext)parent; > } > > protected static void debug(String s) { From dbhole at icedtea.classpath.org Fri Sep 17 14:01:07 2010 From: dbhole at icedtea.classpath.org (dbhole at icedtea.classpath.org) Date: Fri, 17 Sep 2010 21:01:07 +0000 Subject: /hg/icedtea6: Fixed PR557 - Applet opens in a separate window if... Message-ID: changeset f9af7b6a08eb in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=f9af7b6a08eb author: Deepak Bhole date: Fri Sep 17 17:01:12 2010 -0400 Fixed PR557 - Applet opens in a separate window if tab is closed when the applet loads diffstat: 3 files changed, 18 insertions(+), 2 deletions(-) ChangeLog | 8 ++++++++ NEWS | 1 + plugin/icedteanp/IcedTeaNPPlugin.cc | 11 +++++++++-- diffs (52 lines): diff -r ddbf2447886c -r f9af7b6a08eb ChangeLog --- a/ChangeLog Fri Sep 17 17:36:07 2010 +0100 +++ b/ChangeLog Fri Sep 17 17:01:12 2010 -0400 @@ -1,3 +1,11 @@ 2010-09-17 Andrew John Hughes + + PR557: Applet opens in a separate window if tab is closed when the applet + loads + * plugin/icedteanp/IcedTeaNPPlugin.cc + (ITNP_Destroy): Send a destroy message to let Java side know that the + applet needs to be destroyed. + 2010-09-17 Andrew John Hughes * Makefile.am: diff -r ddbf2447886c -r f9af7b6a08eb NEWS --- a/NEWS Fri Sep 17 17:36:07 2010 +0100 +++ b/NEWS Fri Sep 17 17:01:12 2010 -0400 @@ -20,6 +20,7 @@ New in release 1.10 (2010-XX-XX): - A new man page for javaws. * Plugin - PR556: Applet initialization code is prone to race conditions + - PR557: Applet opens in a separate window if tab is closed when the applet loads New in release 1.9 (2010-09-07): diff -r ddbf2447886c -r f9af7b6a08eb plugin/icedteanp/IcedTeaNPPlugin.cc --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Sep 17 17:36:07 2010 +0100 +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Sep 17 17:01:12 2010 -0400 @@ -634,13 +634,20 @@ ITNP_Destroy (NPP instance, NPSavedData* ITNPPluginData* data = (ITNPPluginData*) instance->pdata; + int id = get_id_from_instance(instance); + + // Let Java know that this applet needs to be destroyed + gchar* msg = (gchar*) g_malloc(512*sizeof(gchar)); // 512 is more than enough. We need < 100 + g_sprintf(msg, "instance %d destroy", id); + plugin_send_message_to_appletviewer(msg); + g_free(msg); + msg = NULL; + if (data) { // Free plugin data. plugin_data_destroy (instance); } - - int id = get_id_from_instance(instance); g_hash_table_remove(instance_to_id_map, instance); g_hash_table_remove(id_to_instance_map, GINT_TO_POINTER(id)); From dbhole at redhat.com Fri Sep 17 14:26:32 2010 From: dbhole at redhat.com (Deepak Bhole) Date: Fri, 17 Sep 2010 17:26:32 -0400 Subject: [RFC] Backport PR557 to stable branches Message-ID: <20100917212632.GC13671@redhat.com> Hi, PR557 affects all branches, and I think it should be backported to the stable supported ones (1.7, 1.8 and 1.9). Patch is attached. Are there any objections? ChangeLog: 2010-09-17 Deepak Bhole PR557: Applet opens in a separate window if tab is closed when the applet loads * plugin/icedteanp/IcedTeaNPPlugin.cc (ITNP_Destroy): Send a destroy message to let Java side know that the applet needs to be destroyed. Please also note that for the branches, the above will not completely fix PR557 (there will still be a time window in which it can be triggered. But that window will be a much smaller one.). This is because the branches continue to remain affected by PR556 (race conditions during initialization). PR556 is fixed in HEAD and will eventually be backported to the branches. Cheers, Deepak -------------- next part -------------- A non-text attachment was scrubbed... Name: PR557.patch Type: text/x-patch Size: 1169 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100917/9bdaa22d/PR557.patch From andrew at icedtea.classpath.org Sun Sep 19 16:19:08 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Sun, 19 Sep 2010 23:19:08 +0000 Subject: /hg/icedtea6: 3 new changesets Message-ID: changeset ed033548219c in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ed033548219c author: Andrew John Hughes date: Sun Sep 19 23:00:46 2010 +0100 Support HotSpot 19. 2010-09-19 Andrew John Hughes Support HotSpot 19. * patches/icedtea-alpha-fixes.patch, * patches/icedtea-gcc-suffix-hotspot.patch, * patches/icedtea-print-lsb-release.patch, * patches/params-cast-size_t.patch, * patches/update-bootclasspath.patch: Split into original and hs19 versions. * Makefile.am: Apply some patches only when hs17 is built. Apply different variants of above patches depending on HotSpot build used. * hotspot.map: Add hs19. * patches/hotspot/hs19/alpha-fixes.patch, * patches/hotspot/hs19/gcc-suffix.patch, * patches/hotspot/hs19/params-cast-size_t.patch, * patches/hotspot/hs19/print_lsb_release.patch, * patches/hotspot/hs19/update-bootclasspath.patch: HotSpot 19 variants of patches moved above. * patches/hotspot/original/alpha-fixes.patch, * patches/hotspot/original/gcc-suffix.patch, * patches/hotspot/original/params-cast-size_t.patch, * patches/hotspot/original/print_lsb_release.patch, * patches/hotspot/original/update-bootclasspath.patch: HotSpot 17 patches moved from patches above. changeset 0c7a9312151e in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=0c7a9312151e author: Andrew John Hughes date: Sun Sep 19 23:04:46 2010 +0100 Revert 2713dbdb914e changes to javaws.1 installation. 2010-09-19 Andrew John Hughes * Makefile.am: Revert 2713dbdb914e changes to javaws.1 installation. changeset e470c7b5f2dc in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e470c7b5f2dc author: Andrew John Hughes date: Mon Sep 20 00:18:57 2010 +0100 Fix hotspot target to only rebuild OpenJDK. 2010-09-19 Andrew John Hughes * Makefile.am: (hotspot): Only remake the main icedtea and icedtea-ecj targets (i.e. the OpenJDK build) and not the additional targets from icedtea-against- icedtea and icedtea-against-ecj. diffstat: 18 files changed, 841 insertions(+), 444 deletions(-) ChangeLog | 40 ++ Makefile.am | 84 ++--- hotspot.map | 1 patches/hotspot/hs19/alpha-fixes.patch | 21 + patches/hotspot/hs19/gcc-suffix.patch | 31 ++ patches/hotspot/hs19/params-cast-size_t.patch | 264 ++++++++++++++++++ patches/hotspot/hs19/print_lsb_release.patch | 49 +++ patches/hotspot/hs19/update-bootclasspath.patch | 13 patches/hotspot/original/alpha-fixes.patch | 31 ++ patches/hotspot/original/gcc-suffix.patch | 25 + patches/hotspot/original/params-cast-size_t.patch | 274 +++++++++++++++++++ patches/hotspot/original/print_lsb_release.patch | 48 +++ patches/hotspot/original/update-bootclasspath.patch | 13 patches/icedtea-alpha-fixes.patch | 31 -- patches/icedtea-gcc-suffix-hotspot.patch | 25 - patches/icedtea-print-lsb-release.patch | 48 --- patches/params-cast-size_t.patch | 274 ------------------- patches/update-bootclasspath.patch | 13 diffs (truncated from 1462 to 500 lines): diff -r f9af7b6a08eb -r e470c7b5f2dc ChangeLog --- a/ChangeLog Fri Sep 17 17:01:12 2010 -0400 +++ b/ChangeLog Mon Sep 20 00:18:57 2010 +0100 @@ -1,3 +1,43 @@ 2010-09-17 Deepak Bhole + + * Makefile.am: + (hotspot): Only remake the main icedtea + and icedtea-ecj targets (i.e. the OpenJDK + build) and not the additional targets from + icedtea-against-icedtea and icedtea-against-ecj. + +2010-09-19 Andrew John Hughes + + * Makefile.am: + Revert 2713dbdb914e changes to javaws.1 + installation. + +2010-09-19 Andrew John Hughes + + Support HotSpot 19. + * patches/icedtea-alpha-fixes.patch, + * patches/icedtea-gcc-suffix-hotspot.patch, + * patches/icedtea-print-lsb-release.patch, + * patches/params-cast-size_t.patch, + * patches/update-bootclasspath.patch: + Split into original and hs19 versions. + * Makefile.am: Apply some patches only when + hs17 is built. Apply different variants of + above patches depending on HotSpot build used. + * hotspot.map: Add hs19. + * patches/hotspot/hs19/alpha-fixes.patch, + * patches/hotspot/hs19/gcc-suffix.patch, + * patches/hotspot/hs19/params-cast-size_t.patch, + * patches/hotspot/hs19/print_lsb_release.patch, + * patches/hotspot/hs19/update-bootclasspath.patch: + HotSpot 19 variants of patches moved above. + * patches/hotspot/original/alpha-fixes.patch, + * patches/hotspot/original/gcc-suffix.patch, + * patches/hotspot/original/params-cast-size_t.patch, + * patches/hotspot/original/print_lsb_release.patch, + * patches/hotspot/original/update-bootclasspath.patch: + HotSpot 17 patches moved from patches above. + 2010-09-17 Deepak Bhole PR557: Applet opens in a separate window if tab is closed when the applet diff -r f9af7b6a08eb -r e470c7b5f2dc Makefile.am --- a/Makefile.am Fri Sep 17 17:01:12 2010 -0400 +++ b/Makefile.am Mon Sep 20 00:18:57 2010 +0100 @@ -198,7 +198,6 @@ ICEDTEA_FSG_PATCHES = ICEDTEA_FSG_PATCHES = ICEDTEA_PATCHES = \ - patches/shark_do_nothing_on_stub_frame.patch \ patches/icedtea-notice-safepoints.patch \ patches/icedtea-parisc-opt.patch \ patches/icedtea-lucene-crash.patch \ @@ -212,7 +211,7 @@ ICEDTEA_PATCHES = \ patches/icedtea-headers.patch \ patches/icedtea-headers-hotspot.patch \ patches/icedtea-gcc-suffix.patch \ - patches/icedtea-gcc-suffix-hotspot.patch \ + patches/hotspot/$(HSBUILD)/gcc-suffix.patch \ patches/icedtea-bytebuffer-compact.patch \ patches/memory-limits.patch \ patches/icedtea-sunsrc.patch \ @@ -221,22 +220,19 @@ ICEDTEA_PATCHES = \ patches/icedtea-jvmtiEnv.patch \ patches/icedtea-lcms.patch \ patches/icedtea-timerqueue.patch \ - patches/icedtea-print-lsb-release.patch \ + patches/hotspot/$(HSBUILD)/print_lsb_release.patch \ patches/icedtea-jpegclasses.patch \ patches/icedtea-uname.patch \ patches/icedtea-freetypeversion.patch \ - patches/icedtea-shark-build.patch \ - patches/icedtea-shark-build-hotspot.patch \ patches/icedtea-nomotif-6706121.patch \ patches/icedtea-nomotif.patch \ patches/icedtea-nomotif-mtoolkit.patch \ - patches/icedtea-alpha-fixes.patch \ + patches/hotspot/$(HSBUILD)/alpha-fixes.patch \ patches/icedtea-alt-jar.patch \ patches/icedtea-jdk-use-ssize_t.patch \ patches/icedtea-use-idx_t.patch \ - patches/params-cast-size_t.patch \ + patches/hotspot/$(HSBUILD)/params-cast-size_t.patch \ patches/icedtea-clean-crypto.patch \ - patches/icedtea-shark.patch \ patches/icedtea-arch.patch \ patches/icedtea-lc_ctype.patch \ patches/icedtea-xjc.patch \ @@ -264,18 +260,15 @@ ICEDTEA_PATCHES = \ patches/icedtea-explicit-target-arch.patch \ patches/icedtea-gcc-stack-markings.patch \ patches/icedtea-no-precompiled.patch \ - patches/icedtea-linux-separate-debuginfo.patch \ patches/icedtea-parisc.patch \ patches/icedtea-sh4-support.patch \ patches/icedtea-policy-evaluation.patch \ - patches/update-bootclasspath.patch \ + patches/hotspot/$(HSBUILD)/update-bootclasspath.patch \ patches/libpng.patch \ - patches/shark.patch \ patches/extensions/netx.patch \ patches/extensions/netx-umask.patch \ patches/icedtea-jtreg-httpTest.patch \ patches/arm.patch \ - patches/shark-debug-option.patch \ patches/openjdk/6678385-window_movement_crasher.patch \ patches/openjdk/6961732-negative_leading.patch \ patches/debug-dir.patch \ @@ -291,7 +284,6 @@ ICEDTEA_PATCHES = \ patches/openjdk/4356282-opentype.patch \ patches/openjdk/6954424-opentype_javadoc.patch \ patches/openjdk/6438179-systray_check.patch \ - patches/openjdk/6951319-sparc_build_fixes.patch \ patches/icedtea-too-many-args.patch \ patches/icedtea-jtreg-OpenGLContextInit.patch \ patches/openjdk/6969395-net_bugs.patch \ @@ -299,6 +291,18 @@ ICEDTEA_PATCHES = \ patches/openjdk/6638712-wildcard_types.patch \ patches/openjdk/6650759-missing_inference.patch \ patches/numa_on_early_glibc.patch + +if !WITH_ALT_HSBUILD +ICEDTEA_PATCHES += \ + patches/shark_do_nothing_on_stub_frame.patch \ + patches/icedtea-shark-build.patch \ + patches/icedtea-shark-build-hotspot.patch \ + patches/shark.patch \ + patches/shark-debug-option.patch \ + patches/icedtea-shark.patch \ + patches/icedtea-linux-separate-debuginfo.patch \ + patches/openjdk/6951319-sparc_build_fixes.patch +endif if WITH_RHINO ICEDTEA_PATCHES += \ @@ -1425,16 +1429,10 @@ stamps/add-netx.stamp: stamps/netx-dist. $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ $(BUILD_OUTPUT_DIR)/j2re-image/lib -if ENABLE_DOCS - if test -d $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ - cp $(NETX_SRCDIR)/javaws.1 \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; \ - fi - if test -d $(BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ - cp $(NETX_SRCDIR)/javaws.1 \ - $(BUILD_OUTPUT_DIR)/j2re-image/man/man1; \ - fi -endif + cp $(NETX_SRCDIR)/javaws.1 \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; \ + cp $(NETX_SRCDIR)/javaws.1 \ + $(BUILD_OUTPUT_DIR)/j2re-image/man/man1; \ touch stamps/add-netx.stamp clean-add-netx: @@ -1444,14 +1442,8 @@ clean-add-netx: rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar -if ENABLE_DOCS - if test -d $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ - rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1; \ - fi - if test -d $(BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ - rm -f $(BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1; \ - fi -endif + rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 + rm -f $(BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 rm -f stamps/add-netx.stamp stamps/add-netx-debug.stamp: stamps/netx-dist.stamp extra-lib/about.jar @@ -1463,16 +1455,10 @@ stamps/add-netx-debug.stamp: stamps/netx $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib -if ENABLE_DOCS - if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ - cp $(NETX_SRCDIR)/javaws.1 \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; \ - fi - if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ - cp $(NETX_SRCDIR)/javaws.1 \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1; \ - fi -endif + cp $(NETX_SRCDIR)/javaws.1 \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 + cp $(NETX_SRCDIR)/javaws.1 \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1 touch stamps/add-netx-debug.stamp clean-add-netx-debug: @@ -1482,14 +1468,8 @@ clean-add-netx-debug: rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar -if ENABLE_DOCS - if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1; then \ - rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1; \ - fi - if test -d $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1; then \ - rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1; \ - fi -endif + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 rm -f stamps/add-netx-debug.stamp # OpenJDK ecj Targets @@ -1528,8 +1508,7 @@ hotspot: hotspot: if BOOTSTRAPPING rm -f stamps/icedtea-ecj.stamp - rm -f stamps/icedtea-against-ecj.stamp - $(ARCH_PREFIX) $(MAKE) ICEDTEA_BUILD_TARGET=hotspot icedtea-against-ecj + $(ARCH_PREFIX) $(MAKE) ICEDTEA_BUILD_TARGET=hotspot icedtea-ecj mkdir -p \ $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/server cp $(ECJ_BUILD_OUTPUT_DIR)/$(SERVER_DIR)/libjvm.so \ @@ -1537,8 +1516,7 @@ if BOOTSTRAPPING @echo "Hotspot is served:" $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image else rm -f stamps/icedtea.stamp - rm -f stamps/icedtea-against-icedtea.stamp - $(ARCH_PREFIX) $(MAKE) ICEDTEA_BUILD_TARGET=hotspot icedtea-against-icedtea + $(ARCH_PREFIX) $(MAKE) ICEDTEA_BUILD_TARGET=hotspot icedtea mkdir -p \ $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/server cp $(BUILD_OUTPUT_DIR)/$(SERVER_DIR)/libjvm.so \ diff -r f9af7b6a08eb -r e470c7b5f2dc hotspot.map --- a/hotspot.map Fri Sep 17 17:01:12 2010 -0400 +++ b/hotspot.map Mon Sep 20 00:18:57 2010 +0100 @@ -1,1 +1,2 @@ # version url changeset md5sum +hs19 http://hg.openjdk.java.net/hsx/hsx19/master 0803c0f69b51 f174d20d004c5e1ad08929895dbee21c diff -r f9af7b6a08eb -r e470c7b5f2dc patches/hotspot/hs19/alpha-fixes.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/hs19/alpha-fixes.patch Mon Sep 20 00:18:57 2010 +0100 @@ -0,0 +1,21 @@ +diff -Nru openjdk.orig/hotspot/agent/src/os/linux/Makefile openjdk/hotspot/agent/src/os/linux/Makefile +--- openjdk.orig/hotspot/agent/src/os/linux/Makefile 2010-09-19 14:44:40.000000000 +0100 ++++ openjdk/hotspot/agent/src/os/linux/Makefile 2010-09-19 15:34:47.064793576 +0100 +@@ -40,7 +40,7 @@ + + LIBS = -lthread_db + +-CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) ++CFLAGS = -c -fPIC -g -D_GNU_SOURCE -D_$(ARCH)_ $(if $(filter $(ARCH),alpha),,-D$(ARCH)) $(INCLUDES) + + LIBSA = $(ARCH)/libsaproc.so + +@@ -73,7 +73,7 @@ + $(GCC) -shared $(LFLAGS_LIBSA) -o $(LIBSA) $(OBJS) $(LIBS) + + test.o: test.c +- $(GCC) -c -o test.o -g -D_GNU_SOURCE -D$(ARCH) $(INCLUDES) test.c ++ $(GCC) -c -o test.o -g -D_GNU_SOURCE -D_$(ARCH)_ $(if $(filter $(ARCH),alpha),,-D$(ARCH)) $(INCLUDES) test.c + + test: test.o + $(GCC) -o test test.o -L$(ARCH) -lsaproc $(LIBS) diff -r f9af7b6a08eb -r e470c7b5f2dc patches/hotspot/hs19/gcc-suffix.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/hs19/gcc-suffix.patch Mon Sep 20 00:18:57 2010 +0100 @@ -0,0 +1,31 @@ +diff -Nru openjdk.orig/hotspot/agent/src/os/linux/Makefile openjdk/hotspot/agent/src/os/linux/Makefile +--- openjdk.orig/hotspot/agent/src/os/linux/Makefile 2010-09-01 01:23:45.000000000 +0100 ++++ openjdk/hotspot/agent/src/os/linux/Makefile 2010-09-19 14:09:17.907131214 +0100 +@@ -23,7 +23,7 @@ + # + + ARCH := $(shell if ([ `uname -m` = "ia64" ]) ; then echo ia64 ; elif ([ `uname -m` = "x86_64" ]) ; then echo amd64; elif ([ `uname -m` = "sparc64" ]) ; then echo sparc; else echo i386 ; fi ) +-GCC = gcc ++GCC = gcc$(GCC_SUFFIX) + + JAVAH = ${JAVA_HOME}/bin/javah + +diff -Nru openjdk.orig/hotspot/make/linux/makefiles/gcc.make openjdk/hotspot/make/linux/makefiles/gcc.make +--- openjdk.orig/hotspot/make/linux/makefiles/gcc.make 2010-09-19 14:07:15.000000000 +0100 ++++ openjdk/hotspot/make/linux/makefiles/gcc.make 2010-09-19 14:09:58.015272246 +0100 +@@ -26,11 +26,11 @@ + # CC, CPP & AS + + ifdef ALT_COMPILER_PATH +-CPP = $(ALT_COMPILER_PATH)/g++ +-CC = $(ALT_COMPILER_PATH)/gcc ++CPP = $(ALT_COMPILER_PATH)/g++$(GCC_SUFFIX) ++CC = $(ALT_COMPILER_PATH)/gcc$(GCC_SUFFIX) + else +-CPP = g++ +-CC = gcc ++CPP = g++$(GCC_SUFFIX) ++CC = gcc$(GCC_SUFFIX) + endif + + AS = $(CC) -c diff -r f9af7b6a08eb -r e470c7b5f2dc patches/hotspot/hs19/params-cast-size_t.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/hotspot/hs19/params-cast-size_t.patch Mon Sep 20 00:18:57 2010 +0100 @@ -0,0 +1,264 @@ +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2010-09-01 01:23:45.000000000 +0100 ++++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp 2010-09-19 16:07:14.939307365 +0100 +@@ -2619,7 +2619,7 @@ + if (ResizeOldPLAB && CMSOldPLABResizeQuicker) { + size_t multiple = _num_blocks[word_sz]/(CMSOldPLABToleranceFactor*CMSOldPLABNumRefills*n_blks); + n_blks += CMSOldPLABReactivityFactor*multiple*n_blks; +- n_blks = MIN2(n_blks, CMSOldPLABMax); ++ n_blks = MIN2(n_blks, (size_t)CMSOldPLABMax); + } + assert(n_blks > 0, "Error"); + _cfls->par_get_chunk_of_blocks(word_sz, n_blks, fl); +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp 2010-09-01 01:23:45.000000000 +0100 ++++ openjdk/hotspot/src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp 2010-09-19 16:07:14.915307286 +0100 +@@ -967,7 +967,7 @@ + if (free_percentage < desired_free_percentage) { + size_t desired_capacity = (size_t)(used() / ((double) 1 - desired_free_percentage)); + assert(desired_capacity >= capacity(), "invalid expansion size"); +- expand_bytes = MAX2(desired_capacity - capacity(), MinHeapDeltaBytes); ++ expand_bytes = MAX2((long unsigned int) (desired_capacity - capacity()), (long unsigned int) MinHeapDeltaBytes); + } + if (expand_bytes > 0) { + if (PrintGCDetails && Verbose) { +@@ -6191,7 +6191,7 @@ + HeapWord* curAddr = _markBitMap.startWord(); + while (curAddr < _markBitMap.endWord()) { + size_t remaining = pointer_delta(_markBitMap.endWord(), curAddr); +- MemRegion chunk(curAddr, MIN2(CMSBitMapYieldQuantum, remaining)); ++ MemRegion chunk(curAddr, MIN2((size_t) CMSBitMapYieldQuantum, remaining)); + _markBitMap.clear_large_range(chunk); + if (ConcurrentMarkSweepThread::should_yield() && + !foregroundGCIsActive() && +@@ -6484,7 +6484,7 @@ + return; + } + // Double capacity if possible +- size_t new_capacity = MIN2(_capacity*2, MarkStackSizeMax); ++ size_t new_capacity = MIN2((size_t) (_capacity*2), (size_t) MarkStackSizeMax); + // Do not give up existing stack until we have managed to + // get the double capacity that we desired. + ReservedSpace rs(ReservedSpace::allocation_align_size_up( +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2010-09-19 15:38:16.000000000 +0100 ++++ openjdk/hotspot/src/share/vm/gc_implementation/g1/concurrentMark.cpp 2010-09-19 16:07:14.915307286 +0100 +@@ -452,7 +452,7 @@ + _regionStack(), + // _finger set in set_non_marking_state + +- _max_task_num(MAX2(ParallelGCThreads, (size_t)1)), ++ _max_task_num(MAX2((size_t)ParallelGCThreads, (size_t)1)), + // _active_tasks set in set_non_marking_state + // _tasks set inside the constructor + _task_queues(new CMTaskQueueSet((int) _max_task_num)), +@@ -503,7 +503,7 @@ + SATBMarkQueueSet& satb_qs = JavaThread::satb_mark_queue_set(); + satb_qs.set_buffer_size(G1SATBBufferSize); + +- int size = (int) MAX2(ParallelGCThreads, (size_t)1); ++ int size = (int) MAX2((size_t)ParallelGCThreads, (size_t)1); + _par_cleanup_thread_state = NEW_C_HEAP_ARRAY(ParCleanupThreadState*, size); + for (int i = 0 ; i < size; i++) { + _par_cleanup_thread_state[i] = new ParCleanupThreadState; +@@ -562,7 +562,7 @@ + _sleep_factor = sleep_factor; + _marking_task_overhead = marking_task_overhead; + } else { +- _parallel_marking_threads = MAX2((ParallelGCThreads + 2) / 4, (size_t)1); ++ _parallel_marking_threads = MAX2((size_t)((ParallelGCThreads + 2) / 4), (size_t)1); + _sleep_factor = 0.0; + _marking_task_overhead = 1.0; + } +@@ -689,7 +689,7 @@ + } + + ConcurrentMark::~ConcurrentMark() { +- int size = (int) MAX2(ParallelGCThreads, (size_t)1); ++ int size = (int) MAX2((size_t)ParallelGCThreads, (size_t)1); + for (int i = 0; i < size; i++) delete _par_cleanup_thread_state[i]; + FREE_C_HEAP_ARRAY(ParCleanupThreadState*, + _par_cleanup_thread_state); +@@ -1781,7 +1781,7 @@ + if (has_aborted()) return; + + int first = 0; +- int last = (int)MAX2(ParallelGCThreads, (size_t)1); ++ int last = (int)MAX2((size_t)ParallelGCThreads, (size_t)1); + for (int t = 0; t < last; t++) { + UncleanRegionList* list = &_par_cleanup_thread_state[t]->list; + assert(list->well_formed(), "Inv"); +@@ -3281,7 +3281,7 @@ + // of things to do) or totally (at the very end). + size_t target_size; + if (partially) +- target_size = MIN2((size_t)_task_queue->max_elems()/3, GCDrainStackTargetSize); ++ target_size = MIN2((size_t)_task_queue->max_elems()/3, (size_t)GCDrainStackTargetSize); + else + target_size = 0; + +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2010-09-01 01:23:45.000000000 +0100 ++++ openjdk/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp 2010-09-19 16:07:14.915307286 +0100 +@@ -1066,7 +1066,7 @@ + // This can be done by either mutator threads together with the + // concurrent refinement threads or GC threads. + int HeapRegionRemSet::num_par_rem_sets() { +- return (int)MAX2(DirtyCardQueueSet::num_par_ids() + ConcurrentG1Refine::thread_num(), ParallelGCThreads); ++ return (int)MAX2(DirtyCardQueueSet::num_par_ids() + ConcurrentG1Refine::thread_num(), (size_t)ParallelGCThreads); + } + + HeapRegionRemSet::HeapRegionRemSet(G1BlockOffsetSharedArray* bosa, +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp 2010-09-01 01:23:45.000000000 +0100 ++++ openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp 2010-09-19 16:07:14.915307286 +0100 +@@ -864,8 +864,8 @@ + void PSParallelCompact::initialize_dead_wood_limiter() + { + const size_t max = 100; +- _dwl_mean = double(MIN2(ParallelOldDeadWoodLimiterMean, max)) / 100.0; +- _dwl_std_dev = double(MIN2(ParallelOldDeadWoodLimiterStdDev, max)) / 100.0; ++ _dwl_mean = double(MIN2((size_t) ParallelOldDeadWoodLimiterMean, max)) / 100.0; ++ _dwl_std_dev = double(MIN2((size_t) ParallelOldDeadWoodLimiterStdDev, max)) / 100.0; + _dwl_first_term = 1.0 / (sqrt(2.0 * M_PI) * _dwl_std_dev); + DEBUG_ONLY(_dwl_initialized = true;) + _dwl_adjustment = normal_distribution(1.0); +diff -Nru openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp +--- openjdk.orig/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp 2010-09-01 01:23:45.000000000 +0100 ++++ openjdk/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPermGen.cpp 2010-09-19 16:07:14.915307286 +0100 +@@ -63,7 +63,7 @@ + _last_used = current_live; + + // We have different alignment constraints than the rest of the heap. +- const size_t alignment = MAX2(MinPermHeapExpansion, ++ const size_t alignment = MAX2((size_t) MinPermHeapExpansion, + virtual_space()->alignment()); + + // Compute the desired size: +diff -Nru openjdk.orig/hotspot/src/share/vm/memory/collectorPolicy.cpp openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp +--- openjdk.orig/hotspot/src/share/vm/memory/collectorPolicy.cpp 2010-09-01 01:23:45.000000000 +0100 ++++ openjdk/hotspot/src/share/vm/memory/collectorPolicy.cpp 2010-09-19 16:07:14.939307365 +0100 +@@ -297,7 +297,7 @@ + // yield a size that is too small) and bound it by MaxNewSize above. + // Ergonomics plays here by previously calculating the desired + // NewSize and MaxNewSize. +- max_new_size = MIN2(MAX2(max_new_size, NewSize), MaxNewSize); ++ max_new_size = MIN2(MAX2(max_new_size, (size_t)NewSize), (size_t)MaxNewSize); + } + assert(max_new_size > 0, "All paths should set max_new_size"); + +@@ -324,7 +324,7 @@ + // generally small compared to the NewRatio calculation. + _min_gen0_size = NewSize; + desired_new_size = NewSize; +- max_new_size = MAX2(max_new_size, NewSize); ++ max_new_size = MAX2(max_new_size, (size_t) NewSize); + } else { + // For the case where NewSize is the default, use NewRatio + // to size the minimum and initial generation sizes. +@@ -332,10 +332,10 @@ + // NewRatio is overly large, the resulting sizes can be too + // small. + _min_gen0_size = MAX2(scale_by_NewRatio_aligned(min_heap_byte_size()), +- NewSize); ++ (size_t) NewSize); + desired_new_size = + MAX2(scale_by_NewRatio_aligned(initial_heap_byte_size()), +- NewSize); ++ (size_t) NewSize); + } + + assert(_min_gen0_size > 0, "Sanity check"); +@@ -390,14 +390,14 @@ + // Adjust gen0 down to accomodate OldSize + *gen0_size_ptr = heap_size - min_gen0_size; + *gen0_size_ptr = +- MAX2((uintx)align_size_down(*gen0_size_ptr, min_alignment()), ++ MAX2((size_t)align_size_down(*gen0_size_ptr, min_alignment()), + min_alignment()); + assert(*gen0_size_ptr > 0, "Min gen0 is too large"); + result = true; + } else { + *gen1_size_ptr = heap_size - *gen0_size_ptr; + *gen1_size_ptr = +- MAX2((uintx)align_size_down(*gen1_size_ptr, min_alignment()), ++ MAX2((size_t)align_size_down(*gen1_size_ptr, min_alignment()), + min_alignment()); + } + } +@@ -421,7 +421,7 @@ + // for setting the gen1 maximum. + _max_gen1_size = max_heap_byte_size() - _max_gen0_size; + _max_gen1_size = +- MAX2((uintx)align_size_down(_max_gen1_size, min_alignment()), ++ MAX2((size_t)align_size_down(_max_gen1_size, min_alignment()), From ahughes at redhat.com Mon Sep 20 07:07:44 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Mon, 20 Sep 2010 15:07:44 +0100 Subject: Patch for regression test OnScreenRenderingResizeTest In-Reply-To: <4C9386CA.8070703@redhat.com> References: <4C9386CA.8070703@redhat.com> Message-ID: <20100920140744.GB16943@rivendell.middle-earth.co.uk> On 17:18 Fri 17 Sep , Pavel Tisnovsky wrote: > Hi, > > is it possible to add patch [1] for regression test > OnScreenRenderingResizeTest.java to IcedTea6 HEAD? > > Changed test is already pushed to OpenJDK7 (bug ID#6984543) and I hope > it will be possible to backport it to OpenJDK6 too. > I don't see this patch in the jdk7/jdk7/jdk repository. Can you provide a link to the changeset? The backported patch should be an export of the commit i.e. with the bug ID and committer headers and named patches/openjdk/6984543-onscreen_rendering_resize_test.patch. > Pavel > --- openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest-old.java 2010-09-17 14:01:17.000000000 +0200 > +++ openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java 2010-09-17 13:20:00.000000000 +0200 > @@ -157,7 +157,7 @@ > if (cnt == 90 && robot != null) { > // area where we blitted to should be either white or green > Point p = frame.getLocationOnScreen(); > - p.move(in.left+10, in.top+10); > + p.translate(in.left+10, in.top+10); > BufferedImage bi = > robot.createScreenCapture( > new Rectangle(p.x, p.y, IMAGE_W/2, IMAGE_H/2)); > @@ -166,7 +166,7 @@ > > // the are where we didn't render should stay white > p = frame.getLocationOnScreen(); > - p.move(in.left, in.top+IMAGE_H+5); > + p.translate(in.left, in.top+IMAGE_H+5); > bi = robot.createScreenCapture( > new Rectangle(p.x, p.y, > frame.getWidth()-in.left-in.right, -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ahughes at redhat.com Mon Sep 20 07:19:54 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Mon, 20 Sep 2010 15:19:54 +0100 Subject: [BACKPORT TO 1.9] hs19 support In-Reply-To: References: Message-ID: <20100920141953.GD16943@rivendell.middle-earth.co.uk> On 23:19 Sun 19 Sep , andrew at icedtea.classpath.org wrote: > changeset ed033548219c in /hg/icedtea6 > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ed033548219c > author: Andrew John Hughes > date: Sun Sep 19 23:00:46 2010 +0100 > > Support HotSpot 19. > > 2010-09-19 Andrew John Hughes > > Support HotSpot 19. > * patches/icedtea-alpha-fixes.patch, > * patches/icedtea-gcc-suffix-hotspot.patch, > * patches/icedtea-print-lsb-release.patch, > * patches/params-cast-size_t.patch, > * patches/update-bootclasspath.patch: Split into original and > hs19 versions. > * Makefile.am: Apply some patches only when hs17 is built. > Apply different variants of above patches depending on > HotSpot build used. > * hotspot.map: Add hs19. > * patches/hotspot/hs19/alpha-fixes.patch, > * patches/hotspot/hs19/gcc-suffix.patch, > * patches/hotspot/hs19/params-cast-size_t.patch, > * patches/hotspot/hs19/print_lsb_release.patch, > * patches/hotspot/hs19/update-bootclasspath.patch: HotSpot 19 > variants of patches moved above. > * patches/hotspot/original/alpha-fixes.patch, > * patches/hotspot/original/gcc-suffix.patch, > * patches/hotspot/original/params-cast-size_t.patch, > * patches/hotspot/original/print_lsb_release.patch, > * patches/hotspot/original/update-bootclasspath.patch: HotSpot > 17 patches moved from patches above. > I'd like to backport this to 1.9. I've already done the backport for the Gentoo 1.9 package and it applies pretty cleanly with just one of the Makefile.am changes having to be applied manually and params-cast-size-t.patch having to be removed manually (due to doko's changes to it, which you'll then get for free). Ok to backport? -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ahughes at redhat.com Mon Sep 20 07:29:13 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Mon, 20 Sep 2010 15:29:13 +0100 Subject: [BACKPORT FOR 1.7, 1.8, 1.9] /hg/icedtea6: Support systems where the sched_getcpu libc call is missing Message-ID: <20100920142913.GE16943@rivendell.middle-earth.co.uk> Ok to backport to 1.7, 1.8 and 1.9? ----- Forwarded message from andrew at icedtea.classpath.org ----- Date: Fri, 17 Sep 2010 16:36:15 +0000 From: andrew at icedtea.classpath.org To: distro-pkg-dev at openjdk.java.net Subject: /hg/icedtea6: Support systems where the sched_getcpu libc call i... changeset ddbf2447886c in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ddbf2447886c author: Andrew John Hughes date: Fri Sep 17 17:36:07 2010 +0100 Support systems where the sched_getcpu libc call is not present but the syscall is. 2010-09-17 Andrew John Hughes * Makefile.am: Add new patch. * patches/numa_on_early_glibc.patch, Fallback to making a syscall if sched_getcpu exists but the glibc used is too old to support it. diffstat: 3 files changed, 56 insertions(+), 1 deletion(-) ChangeLog | 8 ++++++ Makefile.am | 3 +- patches/numa_on_early_glibc.patch | 46 +++++++++++++++++++++++++++++++++++++ diffs (78 lines): diff -r 2713dbdb914e -r ddbf2447886c ChangeLog --- a/ChangeLog Fri Sep 17 10:07:45 2010 -0400 +++ b/ChangeLog Fri Sep 17 17:36:07 2010 +0100 @@ -1,3 +1,11 @@ 2010-09-17 Omair Majid + + * Makefile.am: + Add new patch. + * patches/numa_on_early_glibc.patch, + Fallback to making a syscall if sched_getcpu + exists but the glibc used is too old to support it. + 2010-09-17 Omair Majid * Makefile.am: Only create man pages for javaws if ENABLE_DOCS is set diff -r 2713dbdb914e -r ddbf2447886c Makefile.am --- a/Makefile.am Fri Sep 17 10:07:45 2010 -0400 +++ b/Makefile.am Fri Sep 17 17:36:07 2010 +0100 @@ -297,7 +297,8 @@ ICEDTEA_PATCHES = \ patches/openjdk/6969395-net_bugs.patch \ patches/openjdk/6510892-httpserver_test.patch \ patches/openjdk/6638712-wildcard_types.patch \ - patches/openjdk/6650759-missing_inference.patch + patches/openjdk/6650759-missing_inference.patch \ + patches/numa_on_early_glibc.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r 2713dbdb914e -r ddbf2447886c patches/numa_on_early_glibc.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/numa_on_early_glibc.patch Fri Sep 17 17:36:07 2010 +0100 @@ -0,0 +1,46 @@ +--- openjdk.orig/hotspot/src/os/linux/vm/os_linux.cpp 2010-09-14 15:30:59.000000000 +0100 ++++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2010-09-14 17:45:54.000000000 +0100 +@@ -54,6 +54,10 @@ + # include + # include + ++#if __x86_64__ ++#include ++#endif ++ + #define MAX_PATH (2 * K) + + // for timer info max values which include all bits +@@ -2414,6 +2418,21 @@ + return end; + } + ++static int sched_getcpu_syscall(void) { ++ unsigned int cpu; ++ int retval = -1; ++ ++#if __x86_64__ ++ typedef long (*vgetcpu_t)(unsigned int *cpu, unsigned int *node, unsigned long *tcache); ++ vgetcpu_t vgetcpu = (vgetcpu_t)VSYSCALL_ADDR(__NR_vgetcpu); ++ retval = vgetcpu(&cpu, NULL, NULL); ++#elif __i386__ ++ retval = syscall(SYS_getcpu, &cpu, NULL, NULL); ++#endif ++ ++ return (retval == -1) ? retval : cpu; ++} ++ + extern "C" void numa_warn(int number, char *where, ...) { } + extern "C" void numa_error(char *where) { } + +@@ -2422,6 +2441,10 @@ + set_sched_getcpu(CAST_TO_FN_PTR(sched_getcpu_func_t, + dlsym(RTLD_DEFAULT, "sched_getcpu"))); + ++ // If it's not, try a direct syscall. ++ if (sched_getcpu() == -1) ++ set_sched_getcpu(CAST_TO_FN_PTR(sched_getcpu_func_t, (void*)&sched_getcpu_syscall)); ++ + if (sched_getcpu() != -1) { // Does it work? + void *handle = dlopen("libnuma.so.1", RTLD_LAZY); + if (handle != NULL) { ----- End forwarded message ----- -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ahughes at redhat.com Mon Sep 20 07:32:19 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Mon, 20 Sep 2010 15:32:19 +0100 Subject: [1.7, 1.8, 1.9 BACKPORT]: /hg/icedtea6: S6638712: Inference with wildcard types Message-ID: <20100920143218.GF16943@rivendell.middle-earth.co.uk> Ok for 1.7, 1.8 and 1.9? ----- Forwarded message from andrew at icedtea.classpath.org ----- Date: Thu, 16 Sep 2010 23:12:05 +0000 From: andrew at icedtea.classpath.org To: distro-pkg-dev at openjdk.java.net Subject: /hg/icedtea6: S6638712: Inference with wildcard types causes sel... changeset 63024b10e2ef in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=63024b10e2ef author: Andrew John Hughes date: Thu Sep 16 23:36:39 2010 +0100 S6638712: Inference with wildcard types causes selection of inapplicable method S6650759: Inference of formal type parameter (unused in formal parameters) is not performed 2010-09-09 Andrew John Hughes * Makefile.am: Add new patches. * NEWS: Document new patches. Fix key. * patches/openjdk/6638712-wildcard_types.patch, * patches/openjdk/6650759-missing_inference.patch: Fix failure in javac compilation. diffstat: 5 files changed, 1582 insertions(+), 3 deletions(-) ChangeLog | 10 Makefile.am | 4 NEWS | 4 patches/openjdk/6638712-wildcard_types.patch | 669 +++++++++++++++++ patches/openjdk/6650759-missing_inference.patch | 898 +++++++++++++++++++++++ diffs (truncated from 1626 to 500 lines): diff -r a1ccc755c8f7 -r 63024b10e2ef ChangeLog --- a/ChangeLog Thu Sep 16 14:53:19 2010 -0400 +++ b/ChangeLog Thu Sep 16 23:36:39 2010 +0100 @@ -1,4 +1,12 @@ 2010-09-16 Deepak Bhole +2010-09-09 Andrew John Hughes + + * Makefile.am: Add new patches. + * NEWS: Document new patches. Fix key. + * patches/openjdk/6638712-wildcard_types.patch, + * patches/openjdk/6650759-missing_inference.patch: + Fix failure in javac compilation. + +2010-09-16 Deepak Bhole * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java (handleMessage): Output initialization info only in debug mode. diff -r a1ccc755c8f7 -r 63024b10e2ef Makefile.am --- a/Makefile.am Thu Sep 16 14:53:19 2010 -0400 +++ b/Makefile.am Thu Sep 16 23:36:39 2010 +0100 @@ -295,7 +295,9 @@ ICEDTEA_PATCHES = \ patches/icedtea-too-many-args.patch \ patches/icedtea-jtreg-OpenGLContextInit.patch \ patches/openjdk/6969395-net_bugs.patch \ - patches/openjdk/6510892-httpserver_test.patch + patches/openjdk/6510892-httpserver_test.patch \ + patches/openjdk/6638712-wildcard_types.patch \ + patches/openjdk/6650759-missing_inference.patch if WITH_RHINO ICEDTEA_PATCHES += \ diff -r a1ccc755c8f7 -r 63024b10e2ef NEWS --- a/NEWS Thu Sep 16 14:53:19 2010 -0400 +++ b/NEWS Thu Sep 16 23:36:39 2010 +0100 @@ -1,6 +1,6 @@ Key: Key: -SX - http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6969395 +SX - http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=X PRX - http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=X RHX - https://bugzilla.redhat.com/show_bug.cgi?id=X DX - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=X @@ -14,6 +14,8 @@ New in release 1.10 (2010-XX-XX): - S4356282, RH525870: RFE: T2K should be used to rasterize CID/CFF fonts - S6954424: Support OpenType/CFF fonts in JDK 7 - S6438179: XToolkit.isTraySupported() result has nothing to do with the system tray + - S6638712: Inference with wildcard types causes selection of inapplicable method + - S6650759: Inference of formal type parameter (unused in formal parameters) is not performed * Netx - A new man page for javaws. * Plugin diff -r a1ccc755c8f7 -r 63024b10e2ef patches/openjdk/6638712-wildcard_types.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6638712-wildcard_types.patch Thu Sep 16 23:36:39 2010 +0100 @@ -0,0 +1,669 @@ +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java 2010-06-21 22:16:20.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java 2010-09-09 19:54:58.054019539 +0100 +@@ -1061,6 +1061,21 @@ + return qtype.isErroneous(); + } + ++ /** ++ * Replaces this ForAll's typevars with a set of concrete Java types ++ * and returns the instantiated generic type. Subclasses might override ++ * in order to check that the list of types is a valid instantiation ++ * of the ForAll's typevars. ++ * ++ * @param actuals list of actual types ++ * @param types types instance ++ * @return qtype where all occurrences of tvars are replaced ++ * by types in actuals ++ */ ++ public Type inst(List actuals, Types types) { ++ return types.subst(qtype, tvars, actuals); ++ } ++ + public Type map(Mapping f) { + return f.apply(qtype); + } +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java 2010-06-21 22:16:20.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java 2010-09-09 19:54:58.054019539 +0100 +@@ -331,6 +331,14 @@ + if (s.tag >= firstPartialTag) + return isSuperType(s, t); + ++ if (s.isCompound()) { ++ for (Type s2 : interfaces(s).prepend(supertype(s))) { ++ if (!isSubtype(t, s2, capture)) ++ return false; ++ } ++ return true; ++ } ++ + Type lower = lowerBound(s); + if (s != lower) + return isSubtype(capture ? capture(t) : t, lower, false); +@@ -2766,6 +2774,14 @@ + /** + * Capture conversion as specified by JLS 3rd Ed. + */ ++ ++ public List capture(List ts) { ++ List buf = List.nil(); ++ for (Type t : ts) { ++ buf = buf.prepend(capture(t)); ++ } ++ return buf.reverse(); ++ } + public Type capture(Type t) { + if (t.tag != CLASS) + return t; +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java 2010-06-21 22:16:20.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java 2010-09-09 19:54:58.054019539 +0100 +@@ -383,6 +383,10 @@ + JCDiagnostic.fragment("incompatible.types" + (d!=null ? ".1" : ""), d), + t, pt); + } ++ } catch (Infer.InvalidInstanceException ex) { ++ JCDiagnostic d = ex.getDiagnostic(); ++ log.error(pos, "invalid.inferred.types", t.tvars, d); ++ return syms.errType; + } + } + } +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java 2010-06-21 22:16:20.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java 2010-09-09 20:00:32.891268438 +0100 +@@ -29,6 +29,7 @@ + import com.sun.tools.javac.util.List; + import com.sun.tools.javac.code.*; + import com.sun.tools.javac.code.Type.*; ++import com.sun.tools.javac.code.Symbol.*; + + import static com.sun.tools.javac.code.Flags.*; + import static com.sun.tools.javac.code.Kinds.*; +@@ -50,6 +51,7 @@ + + Symtab syms; + Types types; ++ Resolve rs; + + public static Infer instance(Context context) { + Infer instance = context.get(inferKey); +@@ -62,43 +64,51 @@ + context.put(inferKey, this); + syms = Symtab.instance(context); + types = Types.instance(context); ++ rs = Resolve.instance(context); + } + +- public static class NoInstanceException extends RuntimeException { ++ public static class InferenceException extends RuntimeException { + private static final long serialVersionUID = 0; + +- boolean isAmbiguous; // exist several incomparable best instances? +- + JCDiagnostic diagnostic; + +- NoInstanceException(boolean isAmbiguous) { ++ InferenceException() { + this.diagnostic = null; +- this.isAmbiguous = isAmbiguous; +- } +- NoInstanceException setMessage(String key) { +- this.diagnostic = JCDiagnostic.fragment(key); +- return this; +- } +- NoInstanceException setMessage(String key, Object arg1) { +- this.diagnostic = JCDiagnostic.fragment(key, arg1); +- return this; +- } +- NoInstanceException setMessage(String key, Object arg1, Object arg2) { +- this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2); +- return this; + } +- NoInstanceException setMessage(String key, Object arg1, Object arg2, Object arg3) { +- this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2, arg3); ++ InferenceException setMessage(String key, Object... args) { ++ this.diagnostic = JCDiagnostic.fragment(key, args); + return this; + } ++ + public JCDiagnostic getDiagnostic() { + return diagnostic; + } + } ++ ++ public static class NoInstanceException extends InferenceException { ++ private static final long serialVersionUID = 1; ++ ++ boolean isAmbiguous; // exist several incomparable best instances? ++ ++ NoInstanceException(boolean isAmbiguous) { ++ super(); ++ this.isAmbiguous = isAmbiguous; ++ } ++ } ++ ++ public static class InvalidInstanceException extends InferenceException { ++ private static final long serialVersionUID = 2; ++ ++ InvalidInstanceException() { ++ super(); ++ } ++ } ++ + private final NoInstanceException ambiguousNoInstanceException = + new NoInstanceException(true); + private final NoInstanceException unambiguousNoInstanceException = + new NoInstanceException(false); ++ private final InvalidInstanceException invalidInstanceException = new InvalidInstanceException(); + + /*************************************************************************** + * Auxiliary type values and classes +@@ -247,7 +257,7 @@ + */ + public Type instantiateExpr(ForAll that, + Type to, +- Warner warn) throws NoInstanceException { ++ Warner warn) throws InferenceException { + List undetvars = Type.map(that.tvars, fromTypeVarFun); + for (List l = undetvars; l.nonEmpty(); l = l.tail) { + UndetVar v = (UndetVar) l.head; +@@ -273,8 +283,7 @@ + List targs = Type.map(undetvars, getInstFun); + targs = types.subst(targs, that.tvars, targs); + checkWithinBounds(that.tvars, targs, warn); +- +- return getInstFun.apply(qtype1); ++ return that.inst(targs, types); + } + + /** Instantiate method type `mt' by finding instantiations of +@@ -282,36 +291,42 @@ + */ + public Type instantiateMethod(List tvars, + MethodType mt, +- List argtypes, +- boolean allowBoxing, +- boolean useVarargs, +- Warner warn) throws NoInstanceException { ++ final List argtypes, ++ final boolean allowBoxing, ++ final boolean useVarargs, ++ final Warner warn) throws InferenceException { + //-System.err.println("instantiateMethod(" + tvars + ", " + mt + ", " + argtypes + ")"); //DEBUG + List undetvars = Type.map(tvars, fromTypeVarFun); + List formals = mt.argtypes; +- ++ //need to capture exactly once - otherwise subsequent ++ //applicability checks might fail ++ final List capturedArgs = types.capture(argtypes); ++ List actuals = capturedArgs; ++ List actualsNoCapture = argtypes; + // instantiate all polymorphic argument types and + // set up lower bounds constraints for undetvars + Type varargsFormal = useVarargs ? formals.last() : null; +- while (argtypes.nonEmpty() && formals.head != varargsFormal) { +- Type ft = formals.head; +- Type at = argtypes.head.baseType(); +- if (at.tag == FORALL) +- at = instantiateArg((ForAll) at, ft, tvars, warn); +- Type sft = types.subst(ft, tvars, undetvars); ++ while (actuals.nonEmpty() && formals.head != varargsFormal) { ++ Type formal = formals.head; ++ Type actual = actuals.head.baseType(); ++ Type actualNoCapture = actualsNoCapture.head.baseType(); ++ if (actual.tag == FORALL) ++ actual = instantiateArg((ForAll)actual, formal, tvars, warn); ++ Type undetFormal = types.subst(formal, tvars, undetvars); + boolean works = allowBoxing +- ? types.isConvertible(at, sft, warn) +- : types.isSubtypeUnchecked(at, sft, warn); ++ ? types.isConvertible(actual, undetFormal, warn) ++ : types.isSubtypeUnchecked(actual, undetFormal, warn); + if (!works) { + throw unambiguousNoInstanceException + .setMessage("no.conforming.assignment.exists", +- tvars, at, ft); ++ tvars, actualNoCapture, formal); + } + formals = formals.tail; +- argtypes = argtypes.tail; ++ actuals = actuals.tail; ++ actualsNoCapture = actualsNoCapture.tail; + } + if (formals.head != varargsFormal || // not enough args +- !useVarargs && argtypes.nonEmpty()) { // too many args ++ !useVarargs && actuals.nonEmpty()) { // too many args + // argument lists differ in length + throw unambiguousNoInstanceException + .setMessage("arg.length.mismatch"); +@@ -319,20 +334,21 @@ + + // for varargs arguments as well + if (useVarargs) { +- Type elt = types.elemtype(varargsFormal); +- Type sft = types.subst(elt, tvars, undetvars); +- while (argtypes.nonEmpty()) { +- Type ft = sft; +- Type at = argtypes.head.baseType(); +- if (at.tag == FORALL) +- at = instantiateArg((ForAll) at, ft, tvars, warn); +- boolean works = types.isConvertible(at, sft, warn); ++ Type elemType = types.elemtype(varargsFormal); ++ Type elemUndet = types.subst(elemType, tvars, undetvars); ++ while (actuals.nonEmpty()) { ++ Type actual = actuals.head.baseType(); ++ Type actualNoCapture = actualsNoCapture.head.baseType(); ++ if (actual.tag == FORALL) ++ actual = instantiateArg((ForAll)actual, elemType, tvars, warn); ++ boolean works = types.isConvertible(actual, elemUndet, warn); + if (!works) { + throw unambiguousNoInstanceException + .setMessage("no.conforming.assignment.exists", +- tvars, at, ft); ++ tvars, actualNoCapture, elemType); + } +- argtypes = argtypes.tail; ++ actuals = actuals.tail; ++ actualsNoCapture = actualsNoCapture.tail; + } + } + +@@ -363,16 +379,38 @@ + } + checkWithinBounds(tvars, undettypes.toList(), warn); + ++ mt = (MethodType)types.subst(mt, tvars, insttypes.toList()); ++ + if (!restvars.isEmpty()) { + // if there are uninstantiated variables, + // quantify result type with them +- mt = new MethodType(mt.argtypes, +- new ForAll(restvars.toList(), mt.restype), +- mt.thrown, syms.methodClass); ++ final List inferredTypes = insttypes.toList(); ++ final List all_tvars = tvars; //this is the wrong tvars ++ final MethodType mt2 = new MethodType(mt.argtypes, null, mt.thrown, syms.methodClass); ++ mt2.restype = new ForAll(restvars.toList(), mt.restype) { ++ @Override ++ public Type inst(List inferred, Types types) throws NoInstanceException { ++ List formals = types.subst(mt2.argtypes, tvars, inferred); ++ if (!rs.argumentsAcceptable(capturedArgs, formals, ++ allowBoxing, useVarargs, warn)) { ++ // inferred method is not applicable ++ throw invalidInstanceException.setMessage("inferred.do.not.conform.to.params", formals, argtypes); ++ } ++ // check that inferred bounds conform to their bounds ++ checkWithinBounds(all_tvars, ++ types.subst(inferredTypes, tvars, inferred), warn); ++ return super.inst(inferred, types); ++ }}; ++ return mt2; ++ } ++ else if (!rs.argumentsAcceptable(capturedArgs, mt.getParameterTypes(), allowBoxing, useVarargs, warn)) { ++ // inferred method is not applicable ++ throw invalidInstanceException.setMessage("inferred.do.not.conform.to.params", mt.getParameterTypes(), argtypes); ++ } ++ else { ++ // return instantiated version of method type ++ return mt; + } +- +- // return instantiated version of method type +- return types.subst(mt, tvars, insttypes.toList()); + } + //where + +@@ -384,7 +422,7 @@ + private Type instantiateArg(ForAll that, + Type to, + List tvars, +- Warner warn) throws NoInstanceException { ++ Warner warn) throws InferenceException { + List targs; + try { + return instantiateExpr(that, to, warn); +@@ -401,16 +439,16 @@ + private void checkWithinBounds(List tvars, + List arguments, + Warner warn) +- throws NoInstanceException { ++ throws InvalidInstanceException { + for (List tvs = tvars, args = arguments; + tvs.nonEmpty(); + tvs = tvs.tail, args = args.tail) { + if (args.head instanceof UndetVar) continue; + List bounds = types.subst(types.getBounds((TypeVar)tvs.head), tvars, arguments); + if (!types.isSubtypeUnchecked(args.head, bounds, warn)) +- throw unambiguousNoInstanceException ++ throw invalidInstanceException + .setMessage("inferred.do.not.conform.to.bounds", +- arguments, tvars); ++ args.head, bounds); + } + } + } +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java 2010-06-21 22:16:20.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java 2010-09-09 19:54:58.058019555 +0100 +@@ -279,7 +279,7 @@ + boolean allowBoxing, + boolean useVarargs, + Warner warn) +- throws Infer.NoInstanceException { ++ throws Infer.InferenceException { + if (useVarargs && (m.flags() & VARARGS) == 0) return null; + Type mt = types.memberType(site, m); + +@@ -350,7 +350,7 @@ + try { + return rawInstantiate(env, site, m, argtypes, typeargtypes, + allowBoxing, useVarargs, warn); +- } catch (Infer.NoInstanceException ex) { ++ } catch (Infer.InferenceException ex) { + return null; + } + } +@@ -562,7 +562,7 @@ + default: return bestSoFar; + } + } +- } catch (Infer.NoInstanceException ex) { ++ } catch (Infer.InferenceException ex) { + switch (bestSoFar.kind) { + case ABSENT_MTH: + return wrongMethod.setWrongSym(sym, ex.getDiagnostic()); +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties openjdk/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties 2010-06-21 22:16:21.000000000 +0100 ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties 2010-09-09 19:54:58.058019555 +0100 +@@ -454,6 +454,8 @@ + type parameters of {0} cannot be determined + compiler.err.undetermined.type.1=\ + type parameters of {0} cannot be determined; {1} ++compiler.err.invalid.inferred.types=\ ++ invalid inferred types for {0}; {1} + compiler.err.unreachable.stmt=\ + unreachable statement + compiler.err.initializer.must.be.able.to.complete.normally=\ +@@ -960,7 +962,13 @@ + compiler.misc.arg.length.mismatch=\ + cannot instantiate from arguments because actual and formal argument lists differ in length + compiler.misc.inferred.do.not.conform.to.bounds=\ +- inferred type argument(s) {0} do not conform to bounds of type variable(s) {1} ++ inferred type does not conform to declared bound(s)\n\ ++ inferred: {0}\n\ ++ bound(s): {1} ++compiler.misc.inferred.do.not.conform.to.params=\ ++ actual arguments do not conforms to inferred formal arguments\n\ ++ required: {0}\n\ ++ found: {1} + + ##### + +diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6302954/T6476073.java openjdk/langtools/test/tools/javac/generics/inference/6302954/T6476073.java +--- openjdk.orig/langtools/test/tools/javac/generics/inference/6302954/T6476073.java 2010-06-21 22:16:25.000000000 +0100 ++++ openjdk/langtools/test/tools/javac/generics/inference/6302954/T6476073.java 2010-09-09 19:54:58.058019555 +0100 +@@ -25,6 +25,7 @@ + * @test + * @bug 6476073 + * @summary Capture using super wildcard of type variables doesn't work ++ * @ignore awaiting for 6650759 (see bug report for a detailed evaluation) + * @compile T6476073.java + */ + +diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java +--- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java 1970-01-01 01:00:00.000000000 +0100 ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java 2010-09-09 19:54:58.062019572 +0100 +@@ -0,0 +1,41 @@ ++/* ++ * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. ++ * ++ * This code is free software; you can redistribute it and/or modify it ++ * under the terms of the GNU General Public License version 2 only, as ++ * published by the Free Software Foundation. ++ * ++ * This code is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ++ * version 2 for more details (a copy is included in the LICENSE file that ++ * accompanied this code). ++ * ++ * You should have received a copy of the GNU General Public License version ++ * 2 along with this work; if not, write to the Free Software Foundation, ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ++ * ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, ++ * CA 95054 USA or visit www.sun.com if you need additional information or ++ * have any questions. ++ */ ++ ++/* ++ * @test ++ * @bug 6638712 ++ * @author mcimadamore ----- End forwarded message ----- -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ptisnovs at redhat.com Mon Sep 20 07:33:37 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Mon, 20 Sep 2010 16:33:37 +0200 Subject: Patch for regression test OnScreenRenderingResizeTest In-Reply-To: <20100920140744.GB16943@rivendell.middle-earth.co.uk> References: <4C9386CA.8070703@redhat.com> <20100920140744.GB16943@rivendell.middle-earth.co.uk> Message-ID: <4C9770C1.2000606@redhat.com> Dr Andrew John Hughes wrote: > On 17:18 Fri 17 Sep , Pavel Tisnovsky wrote: >> Hi, >> >> is it possible to add patch [1] for regression test >> OnScreenRenderingResizeTest.java to IcedTea6 HEAD? >> >> Changed test is already pushed to OpenJDK7 (bug ID#6984543) and I hope >> it will be possible to backport it to OpenJDK6 too. >> > > I don't see this patch in the jdk7/jdk7/jdk repository. Can you provide a link to the changeset? http://hg.openjdk.java.net/jdk7/tl/jdk/rev/441e86ab3233 > > The backported patch should be an export of the commit i.e. with the bug ID and committer headers > and named patches/openjdk/6984543-onscreen_rendering_resize_test.patch. > >> Pavel > >> --- openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest-old.java 2010-09-17 14:01:17.000000000 +0200 >> +++ openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java 2010-09-17 13:20:00.000000000 +0200 >> @@ -157,7 +157,7 @@ >> if (cnt == 90 && robot != null) { >> // area where we blitted to should be either white or green >> Point p = frame.getLocationOnScreen(); >> - p.move(in.left+10, in.top+10); >> + p.translate(in.left+10, in.top+10); >> BufferedImage bi = >> robot.createScreenCapture( >> new Rectangle(p.x, p.y, IMAGE_W/2, IMAGE_H/2)); >> @@ -166,7 +166,7 @@ >> >> // the are where we didn't render should stay white >> p = frame.getLocationOnScreen(); >> - p.move(in.left, in.top+IMAGE_H+5); >> + p.translate(in.left, in.top+IMAGE_H+5); >> bi = robot.createScreenCapture( >> new Rectangle(p.x, p.y, >> frame.getWidth()-in.left-in.right, > > From ahughes at redhat.com Mon Sep 20 07:53:49 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Mon, 20 Sep 2010 15:53:49 +0100 Subject: Patch for regression test OnScreenRenderingResizeTest In-Reply-To: <4C9770C1.2000606@redhat.com> References: <4C9386CA.8070703@redhat.com> <20100920140744.GB16943@rivendell.middle-earth.co.uk> <4C9770C1.2000606@redhat.com> Message-ID: <20100920145349.GG16943@rivendell.middle-earth.co.uk> On 16:33 Mon 20 Sep , Pavel Tisnovsky wrote: > Dr Andrew John Hughes wrote: > > On 17:18 Fri 17 Sep , Pavel Tisnovsky wrote: > >> Hi, > >> > >> is it possible to add patch [1] for regression test > >> OnScreenRenderingResizeTest.java to IcedTea6 HEAD? > >> > >> Changed test is already pushed to OpenJDK7 (bug ID#6984543) and I hope > >> it will be possible to backport it to OpenJDK6 too. > >> > > > > I don't see this patch in the jdk7/jdk7/jdk repository. Can you provide a link to the changeset? > > http://hg.openjdk.java.net/jdk7/tl/jdk/rev/441e86ab3233 > Ok, please apply as described in the previous mail (below) by exporting the changeset. Does this test fail on any of the release trees? > > > > The backported patch should be an export of the commit i.e. with the bug ID and committer headers > > and named patches/openjdk/6984543-onscreen_rendering_resize_test.patch. > > > >> Pavel > > > >> --- openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest-old.java 2010-09-17 14:01:17.000000000 +0200 > >> +++ openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java 2010-09-17 13:20:00.000000000 +0200 > >> @@ -157,7 +157,7 @@ > >> if (cnt == 90 && robot != null) { > >> // area where we blitted to should be either white or green > >> Point p = frame.getLocationOnScreen(); > >> - p.move(in.left+10, in.top+10); > >> + p.translate(in.left+10, in.top+10); > >> BufferedImage bi = > >> robot.createScreenCapture( > >> new Rectangle(p.x, p.y, IMAGE_W/2, IMAGE_H/2)); > >> @@ -166,7 +166,7 @@ > >> > >> // the are where we didn't render should stay white > >> p = frame.getLocationOnScreen(); > >> - p.move(in.left, in.top+IMAGE_H+5); > >> + p.translate(in.left, in.top+IMAGE_H+5); > >> bi = robot.createScreenCapture( > >> new Rectangle(p.x, p.y, > >> frame.getWidth()-in.left-in.right, > > > > > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ptisnovs at redhat.com Mon Sep 20 09:38:41 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Mon, 20 Sep 2010 18:38:41 +0200 Subject: Patch for regression test OnScreenRenderingResizeTest In-Reply-To: <20100920145349.GG16943@rivendell.middle-earth.co.uk> References: <4C9386CA.8070703@redhat.com> <20100920140744.GB16943@rivendell.middle-earth.co.uk> <4C9770C1.2000606@redhat.com> <20100920145349.GG16943@rivendell.middle-earth.co.uk> Message-ID: <4C978E11.7000904@redhat.com> Dr Andrew John Hughes wrote: > On 16:33 Mon 20 Sep , Pavel Tisnovsky wrote: >> Dr Andrew John Hughes wrote: >>> On 17:18 Fri 17 Sep , Pavel Tisnovsky wrote: >>>> Hi, >>>> >>>> is it possible to add patch [1] for regression test >>>> OnScreenRenderingResizeTest.java to IcedTea6 HEAD? >>>> >>>> Changed test is already pushed to OpenJDK7 (bug ID#6984543) and I hope >>>> it will be possible to backport it to OpenJDK6 too. >>>> >>> I don't see this patch in the jdk7/jdk7/jdk repository. Can you provide a link to the changeset? >> http://hg.openjdk.java.net/jdk7/tl/jdk/rev/441e86ab3233 >> > > Ok, please apply as described in the previous mail (below) by exporting the changeset. will do > Does this test fail on any of the release trees? This test has never passed even on OpenJDK7 :-) It's been added to head on 2010-08-04 or day before and it's included in IcedTea6-1.9 (but not in previous trees). > >>> The backported patch should be an export of the commit i.e. with the bug ID and committer headers >>> and named patches/openjdk/6984543-onscreen_rendering_resize_test.patch. >>> >>>> Pavel >>>> --- openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest-old.java 2010-09-17 14:01:17.000000000 +0200 >>>> +++ openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java 2010-09-17 13:20:00.000000000 +0200 >>>> @@ -157,7 +157,7 @@ >>>> if (cnt == 90 && robot != null) { >>>> // area where we blitted to should be either white or green >>>> Point p = frame.getLocationOnScreen(); >>>> - p.move(in.left+10, in.top+10); >>>> + p.translate(in.left+10, in.top+10); >>>> BufferedImage bi = >>>> robot.createScreenCapture( >>>> new Rectangle(p.x, p.y, IMAGE_W/2, IMAGE_H/2)); >>>> @@ -166,7 +166,7 @@ >>>> >>>> // the are where we didn't render should stay white >>>> p = frame.getLocationOnScreen(); >>>> - p.move(in.left, in.top+IMAGE_H+5); >>>> + p.translate(in.left, in.top+IMAGE_H+5); >>>> bi = robot.createScreenCapture( >>>> new Rectangle(p.x, p.y, >>>> frame.getWidth()-in.left-in.right, >>> > From doko at ubuntu.com Mon Sep 20 10:14:22 2010 From: doko at ubuntu.com (Matthias Klose) Date: Mon, 20 Sep 2010 19:14:22 +0200 Subject: [BACKPORT TO 1.9] hs19 support In-Reply-To: <20100920141953.GD16943@rivendell.middle-earth.co.uk> References: <20100920141953.GD16943@rivendell.middle-earth.co.uk> Message-ID: <4C97966E.5030406@ubuntu.com> On 20.09.2010 16:19, Dr Andrew John Hughes wrote: > I'd like to backport this to 1.9. I've already done the backport for > the Gentoo 1.9 package and it applies pretty cleanly with just one of > the Makefile.am changes having to be applied manually and > params-cast-size-t.patch having to be removed manually (due to doko's > changes to it, which you'll then get for free). > > Ok to backport? yes, I think this is ok. We should take care to have only hotspot patches in patches/hotspot. Matthias From doko at ubuntu.com Mon Sep 20 10:17:10 2010 From: doko at ubuntu.com (Matthias Klose) Date: Mon, 20 Sep 2010 19:17:10 +0200 Subject: [BACKPORT FOR 1.7, 1.8, 1.9] /hg/icedtea6: Support systems where the sched_getcpu libc call is missing In-Reply-To: <20100920142913.GE16943@rivendell.middle-earth.co.uk> References: <20100920142913.GE16943@rivendell.middle-earth.co.uk> Message-ID: <4C979716.7080009@ubuntu.com> On 20.09.2010 16:29, Dr Andrew John Hughes wrote: > Ok to backport to 1.7, 1.8 and 1.9? I assume yes, just was does "too old" mean? Matthias From doko at ubuntu.com Mon Sep 20 10:18:56 2010 From: doko at ubuntu.com (Matthias Klose) Date: Mon, 20 Sep 2010 19:18:56 +0200 Subject: [1.7, 1.8, 1.9 BACKPORT]: /hg/icedtea6: S6638712: Inference with wildcard types In-Reply-To: <20100920143218.GF16943@rivendell.middle-earth.co.uk> References: <20100920143218.GF16943@rivendell.middle-earth.co.uk> Message-ID: <4C979780.2050000@ubuntu.com> On 20.09.2010 16:32, Dr Andrew John Hughes wrote: > Ok for 1.7, 1.8 and 1.9? > > ----- Forwarded message from andrew at icedtea.classpath.org ----- > > Date: Thu, 16 Sep 2010 23:12:05 +0000 > From: andrew at icedtea.classpath.org > To: distro-pkg-dev at openjdk.java.net > Subject: /hg/icedtea6: S6638712: Inference with wildcard types causes sel... > > changeset 63024b10e2ef in /hg/icedtea6 > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=63024b10e2ef > author: Andrew John Hughes > date: Thu Sep 16 23:36:39 2010 +0100 > > S6638712: Inference with wildcard types causes selection of > inapplicable method S6650759: Inference of formal type parameter > (unused in formal parameters) is not performed > > 2010-09-09 Andrew John Hughes > > * Makefile.am: Add new patches. > * NEWS: Document new patches. Fix key. > * patches/openjdk/6638712-wildcard_types.patch, > * patches/openjdk/6650759-missing_inference.patch: Fix failure > in javac compilation. looks ok. From ahughes at redhat.com Mon Sep 20 10:53:36 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Mon, 20 Sep 2010 18:53:36 +0100 Subject: Patch for regression test OnScreenRenderingResizeTest In-Reply-To: <4C978E11.7000904@redhat.com> References: <4C9386CA.8070703@redhat.com> <20100920140744.GB16943@rivendell.middle-earth.co.uk> <4C9770C1.2000606@redhat.com> <20100920145349.GG16943@rivendell.middle-earth.co.uk> <4C978E11.7000904@redhat.com> Message-ID: <20100920175336.GH16943@rivendell.middle-earth.co.uk> On 18:38 Mon 20 Sep , Pavel Tisnovsky wrote: > Dr Andrew John Hughes wrote: > > On 16:33 Mon 20 Sep , Pavel Tisnovsky wrote: > >> Dr Andrew John Hughes wrote: > >>> On 17:18 Fri 17 Sep , Pavel Tisnovsky wrote: > >>>> Hi, > >>>> > >>>> is it possible to add patch [1] for regression test > >>>> OnScreenRenderingResizeTest.java to IcedTea6 HEAD? > >>>> > >>>> Changed test is already pushed to OpenJDK7 (bug ID#6984543) and I hope > >>>> it will be possible to backport it to OpenJDK6 too. > >>>> > >>> I don't see this patch in the jdk7/jdk7/jdk repository. Can you provide a link to the changeset? > >> http://hg.openjdk.java.net/jdk7/tl/jdk/rev/441e86ab3233 > >> > > > > Ok, please apply as described in the previous mail (below) by exporting the changeset. > > will do > > > Does this test fail on any of the release trees? > > This test has never passed even on OpenJDK7 :-) > It's been added to head on 2010-08-04 or day before and it's included in > IcedTea6-1.9 (but not in previous trees). > Ok, then please apply this fix to the 1.9 branch as well. > > > >>> The backported patch should be an export of the commit i.e. with the bug ID and committer headers > >>> and named patches/openjdk/6984543-onscreen_rendering_resize_test.patch. > >>> > >>>> Pavel > >>>> --- openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest-old.java 2010-09-17 14:01:17.000000000 +0200 > >>>> +++ openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java 2010-09-17 13:20:00.000000000 +0200 > >>>> @@ -157,7 +157,7 @@ > >>>> if (cnt == 90 && robot != null) { > >>>> // area where we blitted to should be either white or green > >>>> Point p = frame.getLocationOnScreen(); > >>>> - p.move(in.left+10, in.top+10); > >>>> + p.translate(in.left+10, in.top+10); > >>>> BufferedImage bi = > >>>> robot.createScreenCapture( > >>>> new Rectangle(p.x, p.y, IMAGE_W/2, IMAGE_H/2)); > >>>> @@ -166,7 +166,7 @@ > >>>> > >>>> // the are where we didn't render should stay white > >>>> p = frame.getLocationOnScreen(); > >>>> - p.move(in.left, in.top+IMAGE_H+5); > >>>> + p.translate(in.left, in.top+IMAGE_H+5); > >>>> bi = robot.createScreenCapture( > >>>> new Rectangle(p.x, p.y, > >>>> frame.getWidth()-in.left-in.right, > >>> > > > > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ahughes at redhat.com Mon Sep 20 10:57:25 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Mon, 20 Sep 2010 18:57:25 +0100 Subject: [BACKPORT FOR 1.7, 1.8, 1.9] /hg/icedtea6: Support systems where the sched_getcpu libc call is missing In-Reply-To: <4C979716.7080009@ubuntu.com> References: <20100920142913.GE16943@rivendell.middle-earth.co.uk> <4C979716.7080009@ubuntu.com> Message-ID: <20100920175725.GI16943@rivendell.middle-earth.co.uk> On 19:17 Mon 20 Sep , Matthias Klose wrote: > On 20.09.2010 16:29, Dr Andrew John Hughes wrote: > > Ok to backport to 1.7, 1.8 and 1.9? > > I assume yes, just was does "too old" mean? > It adds a fallback so that if the glibc call is absent but the kernel syscall is there, the syscall will be used. So we're talking about a specific period when the call was in the kernel but not glibc. It's true of RHEL 5 where the issue was found, and maybe other systems too. It shouldn't affect systems with the glibc call (that is tested for first) nor systems without either which will still fail as before. > Matthias -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ahughes at redhat.com Mon Sep 20 10:59:34 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Mon, 20 Sep 2010 18:59:34 +0100 Subject: [BACKPORT TO 1.9] hs19 support In-Reply-To: <4C97966E.5030406@ubuntu.com> References: <20100920141953.GD16943@rivendell.middle-earth.co.uk> <4C97966E.5030406@ubuntu.com> Message-ID: <20100920175934.GJ16943@rivendell.middle-earth.co.uk> On 19:14 Mon 20 Sep , Matthias Klose wrote: > On 20.09.2010 16:19, Dr Andrew John Hughes wrote: > > I'd like to backport this to 1.9. I've already done the backport for > > the Gentoo 1.9 package and it applies pretty cleanly with just one of > > the Makefile.am changes having to be applied manually and > > params-cast-size-t.patch having to be removed manually (due to doko's > > changes to it, which you'll then get for free). > > > > Ok to backport? > > yes, I think this is ok. We should take care to have only hotspot patches in > patches/hotspot. > All the patches moved to patches/hotspot are ones that didn't apply to the changed sources in hs19 but did apply to hs17 (as was the case when we supported hs14, hs16 and hs17 by this mechanism before). Was there a particular case you were thinking of where this wasn't true? Thanks for the approval. > Matthias -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ahughes at redhat.com Mon Sep 20 11:07:47 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Mon, 20 Sep 2010 19:07:47 +0100 Subject: [RFC] Backport PR557 to stable branches In-Reply-To: <20100917212632.GC13671@redhat.com> References: <20100917212632.GC13671@redhat.com> Message-ID: <20100920180747.GL16943@rivendell.middle-earth.co.uk> On 17:26 Fri 17 Sep , Deepak Bhole wrote: > Hi, > > PR557 affects all branches, and I think it should be backported to the > stable supported ones (1.7, 1.8 and 1.9). > > Patch is attached. Are there any objections? > > ChangeLog: > 2010-09-17 Deepak Bhole > > PR557: Applet opens in a separate window if tab is closed when the applet > loads > * plugin/icedteanp/IcedTeaNPPlugin.cc > (ITNP_Destroy): Send a destroy message to let Java side know that the > applet needs to be destroyed. > > Please also note that for the branches, the above will not completely > fix PR557 (there will still be a time window in which it can be > triggered. But that window will be a much smaller one.). This is because > the branches continue to remain affected by PR556 (race conditions > during initialization). PR556 is fixed in HEAD and will eventually be > backported to the branches. > This one is approved for 1.7, 1.8 and 1.9. What's the status of PR556? What do you mean by 'eventually backported'? > Cheers, > Deepak > # HG changeset patch > # User Deepak Bhole > # Date 1284757272 14400 > # Node ID f9af7b6a08ebd165a2df27af909a91718cfb9503 > # Parent ddbf2447886c46c5db2d7c3e68205b4ae7884e21 > Fixed PR557 - Applet opens in a separate window if tab is closed when the > applet loads > > diff -r ddbf2447886c -r f9af7b6a08eb plugin/icedteanp/IcedTeaNPPlugin.cc > --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Sep 17 17:36:07 2010 +0100 > +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Sep 17 17:01:12 2010 -0400 > @@ -634,14 +634,21 @@ > > ITNPPluginData* data = (ITNPPluginData*) instance->pdata; > > + int id = get_id_from_instance(instance); > + > + // Let Java know that this applet needs to be destroyed > + gchar* msg = (gchar*) g_malloc(512*sizeof(gchar)); // 512 is more than enough. We need < 100 > + g_sprintf(msg, "instance %d destroy", id); > + plugin_send_message_to_appletviewer(msg); > + g_free(msg); > + msg = NULL; > + > if (data) > { > // Free plugin data. > plugin_data_destroy (instance); > } > > - int id = get_id_from_instance(instance); > - > g_hash_table_remove(instance_to_id_map, instance); > g_hash_table_remove(id_to_instance_map, GINT_TO_POINTER(id)); > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From andrew at icedtea.classpath.org Mon Sep 20 12:49:01 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Mon, 20 Sep 2010 19:49:01 +0000 Subject: /hg/icedtea6: Apply icedtea-shark-build.patch for both HotSpots ... Message-ID: changeset 2fa7aed828ed in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=2fa7aed828ed author: Andrew John Hughes date: Mon Sep 20 20:48:54 2010 +0100 Apply icedtea-shark-build.patch for both HotSpots (top-level patch). 2010-09-20 Andrew John Hughes * Makefile.am: Enable icedtea-shark-build.patch on all builds as it applies to the top-level makefiles and not HotSpot. diffstat: 2 files changed, 9 insertions(+), 2 deletions(-) ChangeLog | 7 +++++++ Makefile.am | 4 ++-- diffs (32 lines): diff -r e470c7b5f2dc -r 2fa7aed828ed ChangeLog --- a/ChangeLog Mon Sep 20 00:18:57 2010 +0100 +++ b/ChangeLog Mon Sep 20 20:48:54 2010 +0100 @@ -1,3 +1,10 @@ 2010-09-19 Andrew John Hughes + + * Makefile.am: + Enable icedtea-shark-build.patch on all builds + as it applies to the top-level makefiles and not + HotSpot. + 2010-09-19 Andrew John Hughes * Makefile.am: diff -r e470c7b5f2dc -r 2fa7aed828ed Makefile.am --- a/Makefile.am Mon Sep 20 00:18:57 2010 +0100 +++ b/Makefile.am Mon Sep 20 20:48:54 2010 +0100 @@ -290,12 +290,12 @@ ICEDTEA_PATCHES = \ patches/openjdk/6510892-httpserver_test.patch \ patches/openjdk/6638712-wildcard_types.patch \ patches/openjdk/6650759-missing_inference.patch \ - patches/numa_on_early_glibc.patch + patches/numa_on_early_glibc.patch \ + patches/icedtea-shark-build.patch if !WITH_ALT_HSBUILD ICEDTEA_PATCHES += \ patches/shark_do_nothing_on_stub_frame.patch \ - patches/icedtea-shark-build.patch \ patches/icedtea-shark-build-hotspot.patch \ patches/shark.patch \ patches/shark-debug-option.patch \ From ptisnovs at icedtea.classpath.org Tue Sep 21 02:12:36 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 21 Sep 2010 09:12:36 +0000 Subject: /hg/icedtea6: Correction of testcase sun/java2d/DirectX/OnScreen... Message-ID: changeset fd77bd063119 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=fd77bd063119 author: ptisnovs date: Tue Sep 21 11:11:45 2010 +0200 Correction of testcase sun/java2d/DirectX/OnScreenringResizeTest/OnS creenRenderingResizeTest.java. diffstat: 3 files changed, 39 insertions(+), 1 deletion(-) ChangeLog | 7 ++ Makefile.am | 3 - patches/openjdk/6984543-onscreen_rendering_resize_test.patch | 30 ++++++++++ diffs (61 lines): diff -r 2fa7aed828ed -r fd77bd063119 ChangeLog --- a/ChangeLog Mon Sep 20 20:48:54 2010 +0100 +++ b/ChangeLog Tue Sep 21 11:11:45 2010 +0200 @@ -1,3 +1,10 @@ 2010-09-20 Andrew John Hughes + + * Makefile.am: + Add new patch. + * patches/openjdk/6984543-onscreen_rendering_resize_test.patch: + Testcase correction. + 2010-09-20 Andrew John Hughes * Makefile.am: diff -r 2fa7aed828ed -r fd77bd063119 Makefile.am --- a/Makefile.am Mon Sep 20 20:48:54 2010 +0100 +++ b/Makefile.am Tue Sep 21 11:11:45 2010 +0200 @@ -338,7 +338,8 @@ ICEDTEA_PATCHES += patches/openjdk/67252 patches/openjdk/6307603-xrender-01.patch \ patches/openjdk/6961633-xrender-02.patch \ patches/openjdk/6791612-opengl-jni-fix.patch \ - patches/openjdk/6755274-glgetstring-crash.patch + patches/openjdk/6755274-glgetstring-crash.patch \ + patches/openjdk/6984543-onscreen_rendering_resize_test.patch endif if ENABLE_NIO2 diff -r 2fa7aed828ed -r fd77bd063119 patches/openjdk/6984543-onscreen_rendering_resize_test.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6984543-onscreen_rendering_resize_test.patch Tue Sep 21 11:11:45 2010 +0200 @@ -0,0 +1,30 @@ +# HG changeset patch +# User ptisnovs +# Date 1284636320 -7200 +# Node ID 441e86ab3233112c3564210c7a669c295628a679 +# Parent a248eb631aa22ab6f3a3487a679814940117dadc +6984543: Test sun/java2d/DirectX/OnScreenRenderingResizeTest fails on GNOME +Summary: Testcase correction. +Reviewed-by: art + +diff -r a248eb631aa2 -r 441e86ab3233 test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java +--- openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest-old.java 2010-09-17 14:01:17.000000000 +0200 ++++ openjdk/jdk/test/sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java 2010-09-17 13:20:00.000000000 +0200 +@@ -157,7 +157,7 @@ + if (cnt == 90 && robot != null) { + // area where we blitted to should be either white or green + Point p = frame.getLocationOnScreen(); +- p.move(in.left+10, in.top+10); ++ p.translate(in.left+10, in.top+10); + BufferedImage bi = + robot.createScreenCapture( + new Rectangle(p.x, p.y, IMAGE_W/2, IMAGE_H/2)); +@@ -166,7 +166,7 @@ + + // the are where we didn't render should stay white + p = frame.getLocationOnScreen(); +- p.move(in.left, in.top+IMAGE_H+5); ++ p.translate(in.left, in.top+IMAGE_H+5); + bi = robot.createScreenCapture( + new Rectangle(p.x, p.y, + frame.getWidth()-in.left-in.right, From ptisnovs at redhat.com Tue Sep 21 02:29:34 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Tue, 21 Sep 2010 11:29:34 +0200 Subject: [patch] new JTreg test for IcedTea6 & 7 Message-ID: <4C987AFE.5060702@redhat.com> Hi all, is it possible to push new JTreg test to IcedTea6 HEAD and probably to 7 too? This test check if JDK does not crash when window is quickly repeatedly resized. In fact it's a reproducer for this bug: https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962 The test itself is based on Deepak's and Omair's code. Pavel -------------- next part -------------- A non-text attachment was scrubbed... Name: ResizeCrasher.patch Type: text/x-patch Size: 3969 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100921/be1ff4b6/ResizeCrasher.patch From ptisnovs at redhat.com Tue Sep 21 05:34:53 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Tue, 21 Sep 2010 14:34:53 +0200 Subject: [patch] Ok to push corrected regression test Test6933784 to IcedTea6? Message-ID: <4C98A66D.70003@redhat.com> Hi all, is it possible to push patch for regression test javax/swing/plaf/synth/Test6933784.java to IcedTea6 please? This test has been already changed in OpenJDK6 in this changeset http://hg.openjdk.java.net/jdk6/jdk6/jdk/rev/bf87d5af4361 6985992 Fix test/javax/swing/plaf/synth/Test6933784.java for OpenJDK 6 Summary: Testcase correction Reviewed-by: darcy Cheers Pavel -------------- next part -------------- A non-text attachment was scrubbed... Name: 6985992-test_6933784.patch Type: text/x-patch Size: 1466 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100921/283dfaaf/6985992-test_6933784.patch From omajid at redhat.com Tue Sep 21 06:44:33 2010 From: omajid at redhat.com (Omair Majid) Date: Tue, 21 Sep 2010 09:44:33 -0400 Subject: [patch] new JTreg test for IcedTea6 & 7 In-Reply-To: <4C987AFE.5060702@redhat.com> References: <4C987AFE.5060702@redhat.com> Message-ID: <4C98B6C1.7060602@redhat.com> Hi Pavel, On 09/21/2010 05:29 AM, Pavel Tisnovsky wrote: > is it possible to push new JTreg test to IcedTea6 HEAD and probably to 7 > too? This test check if JDK does not crash when window is quickly > repeatedly resized. > > In fact it's a reproducer for this bug: > https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962 > > The test itself is based on Deepak's and Omair's code. I have a minor concern about this patch: this test checks for a crasher and if the bug exists, it will take down the jtreg vm (and the entire test run). You should probably add the /othervm option to this test to make sure this test runs in a separate vm. Other than that, the patch looks fine to me. Cheers, Omair From omajid at redhat.com Tue Sep 21 06:48:20 2010 From: omajid at redhat.com (Omair Majid) Date: Tue, 21 Sep 2010 09:48:20 -0400 Subject: [patch] Ok to push corrected regression test Test6933784 to IcedTea6? In-Reply-To: <4C98A66D.70003@redhat.com> References: <4C98A66D.70003@redhat.com> Message-ID: <4C98B7A4.2050900@redhat.com> On 09/21/2010 08:34 AM, Pavel Tisnovsky wrote: > is it possible to push patch for regression test > javax/swing/plaf/synth/Test6933784.java to IcedTea6 please? > > This test has been already changed in OpenJDK6 in this changeset > http://hg.openjdk.java.net/jdk6/jdk6/jdk/rev/bf87d5af4361 > > 6985992 Fix test/javax/swing/plaf/synth/Test6933784.java for OpenJDK 6 > Summary: Testcase correction > Reviewed-by: darcy > Looks fine to me. Please go ahead and backport. Cheers, Omair From ptisnovs at redhat.com Tue Sep 21 06:52:03 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Tue, 21 Sep 2010 15:52:03 +0200 Subject: [patch] new JTreg test for IcedTea6 & 7 In-Reply-To: <4C98B6C1.7060602@redhat.com> References: <4C987AFE.5060702@redhat.com> <4C98B6C1.7060602@redhat.com> Message-ID: <4C98B883.5010409@redhat.com> Omair Majid wrote: > Hi Pavel, > > On 09/21/2010 05:29 AM, Pavel Tisnovsky wrote: >> is it possible to push new JTreg test to IcedTea6 HEAD and probably to 7 >> too? This test check if JDK does not crash when window is quickly >> repeatedly resized. >> >> In fact it's a reproducer for this bug: >> https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962 >> >> The test itself is based on Deepak's and Omair's code. > > I have a minor concern about this patch: this test checks for a crasher > and if the bug exists, it will take down the jtreg vm (and the entire > test run). You should probably add the /othervm option to this test to > make sure this test runs in a separate vm. Yeah, you are right, I'll change it, thanks for the advice. > > Other than that, the patch looks fine to me. > > Cheers, > Omair From ahughes at redhat.com Tue Sep 21 06:56:44 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Tue, 21 Sep 2010 14:56:44 +0100 Subject: [patch] new JTreg test for IcedTea6 & 7 In-Reply-To: <4C987AFE.5060702@redhat.com> References: <4C987AFE.5060702@redhat.com> Message-ID: <20100921135643.GA10851@rivendell.middle-earth.co.uk> On 11:29 Tue 21 Sep , Pavel Tisnovsky wrote: > Hi all, > > is it possible to push new JTreg test to IcedTea6 HEAD and probably to 7 > too? This test check if JDK does not crash when window is quickly > repeatedly resized. > > In fact it's a reproducer for this bug: > https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962 > > The test itself is based on Deepak's and Omair's code. > > Pavel > If this is pushed to 7, it should be pushed to the IcedTea forest (http://hg.openjdk.java.net/icedtea/jdk7/jdk) not added as a patch. Have you sent this upstream? > --- /dev/null 2010-06-29 11:10:08.737208357 +0200 > +++ openjdk/jdk/test/javax/swing/ResizeCrasher/ResizeCrasher.java 2010-09-17 14:40:51.000000000 +0200 > @@ -0,0 +1,105 @@ > +/* > + * Copyright 2010 Red Hat, Inc. All Rights Reserved. > + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > + * > + * This code is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License version 2 only, as > + * published by the Free Software Foundation. > + * > + * This code is distributed in the hope that it will be useful, but WITHOUT > + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > + * version 2 for more details (a copy is included in the LICENSE file that > + * accompanied this code). > + * > + * You should have received a copy of the GNU General Public License version > + * 2 along with this work; if not, write to the Free Software Foundation, > + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > + */ > + > +import java.awt.BorderLayout; > +import java.awt.Container; > +import java.awt.Dimension; > + > +import javax.swing.JButton; > +import javax.swing.JFrame; > +import javax.swing.JTextField; > +import javax.swing.SwingUtilities; > +import javax.swing.UIManager; > + > +/* @test > + * @summary This test check if OpenJDK does not crash when window is repeatedly resized. > + * bug #603962 in RH bugzilla (https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962) > + * @author Deepak Bhole, Pavel Tisnovsky > + * @run main ResizeCrasher > + */ > + > +public class ResizeCrasher { > + private static final Dimension FRAME_DIMENSION = new Dimension(100, 200); > + > + // test duration is specified in milliseconds > + private static final int TEST_DURATION = 10000; > + > + // some window managers print weird warnings when > + // window is too small > + private static final int MINIMAL_WINDOW_SIZE = 25; > + > + static JFrame mainWindow; > + > + ResizeCrasher() { > + mainWindow = new JFrame("Crashes on Resizing"); //$NON-NLS-1$ > + > + mainWindow.setSize(FRAME_DIMENSION); > + mainWindow.setResizable(true); > + > + addControlsToContainer(mainWindow.getContentPane()); > + > + mainWindow.setVisible(true); > + } > + > + private void addControlsToContainer(Container container) { > + JTextField aTextField = new JTextField("JTextField"); //$NON-NLS-1$ > + aTextField.setPreferredSize(new Dimension(200,200)); > + container.add(aTextField, BorderLayout.CENTER); > + > + JButton aButton = new JButton("JButton"); //$NON-NLS-1$ > + aButton.setPreferredSize(new Dimension(100, 200)); > + container.add(aButton, BorderLayout.SOUTH); > + } > + > + public static void main(String[] args) { > + > + try { > + UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); > + // UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); > + > + SwingUtilities.invokeAndWait(new Runnable() { > + public void run() { > + new ResizeCrasher(); > + } > + }); > + } catch (Exception e) { > + System.out.println("Could not set look and feel"); //$NON-NLS-1$ > + } > + > + final java.util.Random r = new java.util.Random(); > + long t1 = System.currentTimeMillis(); > + > + // run the test only for given time period > + while (System.currentTimeMillis() - t1 < TEST_DURATION) { > + try { > + SwingUtilities.invokeAndWait(new Runnable() { > + public void run() { > + mainWindow.setSize(r.nextInt(200) + MINIMAL_WINDOW_SIZE, r.nextInt(200) + MINIMAL_WINDOW_SIZE); > + } > + }); > + } catch (Exception e) { > + e.printStackTrace(); > + } > + } > + if (mainWindow != null) { > + mainWindow.dispose(); > + } > + > + } > +} > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ptisnovs at redhat.com Tue Sep 21 07:01:59 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Tue, 21 Sep 2010 16:01:59 +0200 Subject: [patch] new JTreg test for IcedTea6 & 7 In-Reply-To: <20100921135643.GA10851@rivendell.middle-earth.co.uk> References: <4C987AFE.5060702@redhat.com> <20100921135643.GA10851@rivendell.middle-earth.co.uk> Message-ID: <4C98BAD7.1050503@redhat.com> Dr Andrew John Hughes wrote: > On 11:29 Tue 21 Sep , Pavel Tisnovsky wrote: >> Hi all, >> >> is it possible to push new JTreg test to IcedTea6 HEAD and probably to 7 >> too? This test check if JDK does not crash when window is quickly >> repeatedly resized. >> >> In fact it's a reproducer for this bug: >> https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962 >> >> The test itself is based on Deepak's and Omair's code. >> >> Pavel >> > > If this is pushed to 7, it should be pushed to the IcedTea forest > (http://hg.openjdk.java.net/icedtea/jdk7/jdk) not added as a patch. > > Have you sent this upstream? Not yet, as I was unable to find related bug in Oracle bug database. > >> --- /dev/null 2010-06-29 11:10:08.737208357 +0200 >> +++ openjdk/jdk/test/javax/swing/ResizeCrasher/ResizeCrasher.java 2010-09-17 14:40:51.000000000 +0200 >> @@ -0,0 +1,105 @@ >> +/* >> + * Copyright 2010 Red Hat, Inc. All Rights Reserved. >> + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >> + * >> + * This code is free software; you can redistribute it and/or modify it >> + * under the terms of the GNU General Public License version 2 only, as >> + * published by the Free Software Foundation. >> + * >> + * This code is distributed in the hope that it will be useful, but WITHOUT >> + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or >> + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License >> + * version 2 for more details (a copy is included in the LICENSE file that >> + * accompanied this code). >> + * >> + * You should have received a copy of the GNU General Public License version >> + * 2 along with this work; if not, write to the Free Software Foundation, >> + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. >> + */ >> + >> +import java.awt.BorderLayout; >> +import java.awt.Container; >> +import java.awt.Dimension; >> + >> +import javax.swing.JButton; >> +import javax.swing.JFrame; >> +import javax.swing.JTextField; >> +import javax.swing.SwingUtilities; >> +import javax.swing.UIManager; >> + >> +/* @test >> + * @summary This test check if OpenJDK does not crash when window is repeatedly resized. >> + * bug #603962 in RH bugzilla (https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962) >> + * @author Deepak Bhole, Pavel Tisnovsky >> + * @run main ResizeCrasher >> + */ >> + >> +public class ResizeCrasher { >> + private static final Dimension FRAME_DIMENSION = new Dimension(100, 200); >> + >> + // test duration is specified in milliseconds >> + private static final int TEST_DURATION = 10000; >> + >> + // some window managers print weird warnings when >> + // window is too small >> + private static final int MINIMAL_WINDOW_SIZE = 25; >> + >> + static JFrame mainWindow; >> + >> + ResizeCrasher() { >> + mainWindow = new JFrame("Crashes on Resizing"); //$NON-NLS-1$ >> + >> + mainWindow.setSize(FRAME_DIMENSION); >> + mainWindow.setResizable(true); >> + >> + addControlsToContainer(mainWindow.getContentPane()); >> + >> + mainWindow.setVisible(true); >> + } >> + >> + private void addControlsToContainer(Container container) { >> + JTextField aTextField = new JTextField("JTextField"); //$NON-NLS-1$ >> + aTextField.setPreferredSize(new Dimension(200,200)); >> + container.add(aTextField, BorderLayout.CENTER); >> + >> + JButton aButton = new JButton("JButton"); //$NON-NLS-1$ >> + aButton.setPreferredSize(new Dimension(100, 200)); >> + container.add(aButton, BorderLayout.SOUTH); >> + } >> + >> + public static void main(String[] args) { >> + >> + try { >> + UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); >> + // UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); >> + >> + SwingUtilities.invokeAndWait(new Runnable() { >> + public void run() { >> + new ResizeCrasher(); >> + } >> + }); >> + } catch (Exception e) { >> + System.out.println("Could not set look and feel"); //$NON-NLS-1$ >> + } >> + >> + final java.util.Random r = new java.util.Random(); >> + long t1 = System.currentTimeMillis(); >> + >> + // run the test only for given time period >> + while (System.currentTimeMillis() - t1 < TEST_DURATION) { >> + try { >> + SwingUtilities.invokeAndWait(new Runnable() { >> + public void run() { >> + mainWindow.setSize(r.nextInt(200) + MINIMAL_WINDOW_SIZE, r.nextInt(200) + MINIMAL_WINDOW_SIZE); >> + } >> + }); >> + } catch (Exception e) { >> + e.printStackTrace(); >> + } >> + } >> + if (mainWindow != null) { >> + mainWindow.dispose(); >> + } >> + >> + } >> +} >> > > From ahughes at redhat.com Tue Sep 21 08:26:34 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Tue, 21 Sep 2010 16:26:34 +0100 Subject: [patch] new JTreg test for IcedTea6 & 7 In-Reply-To: <4C98BAD7.1050503@redhat.com> References: <4C987AFE.5060702@redhat.com> <20100921135643.GA10851@rivendell.middle-earth.co.uk> <4C98BAD7.1050503@redhat.com> Message-ID: <20100921152634.GB10851@rivendell.middle-earth.co.uk> On 16:01 Tue 21 Sep , Pavel Tisnovsky wrote: > Dr Andrew John Hughes wrote: > > On 11:29 Tue 21 Sep , Pavel Tisnovsky wrote: > >> Hi all, > >> > >> is it possible to push new JTreg test to IcedTea6 HEAD and probably to 7 > >> too? This test check if JDK does not crash when window is quickly > >> repeatedly resized. > >> > >> In fact it's a reproducer for this bug: > >> https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962 > >> > >> The test itself is based on Deepak's and Omair's code. > >> > >> Pavel > >> > > > > If this is pushed to 7, it should be pushed to the IcedTea forest > > (http://hg.openjdk.java.net/icedtea/jdk7/jdk) not added as a patch. > > > > Have you sent this upstream? > > Not yet, as I was unable to find related bug in Oracle bug database. > Then just ask them to file one. But in this case: S6678385, RH551835: Fixes jvm crashes when window is resized. is in the NEWS file so you should use 6678385. > > > >> --- /dev/null 2010-06-29 11:10:08.737208357 +0200 > >> +++ openjdk/jdk/test/javax/swing/ResizeCrasher/ResizeCrasher.java 2010-09-17 14:40:51.000000000 +0200 > >> @@ -0,0 +1,105 @@ > >> +/* > >> + * Copyright 2010 Red Hat, Inc. All Rights Reserved. > >> + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > >> + * > >> + * This code is free software; you can redistribute it and/or modify it > >> + * under the terms of the GNU General Public License version 2 only, as > >> + * published by the Free Software Foundation. > >> + * > >> + * This code is distributed in the hope that it will be useful, but WITHOUT > >> + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > >> + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > >> + * version 2 for more details (a copy is included in the LICENSE file that > >> + * accompanied this code). > >> + * > >> + * You should have received a copy of the GNU General Public License version > >> + * 2 along with this work; if not, write to the Free Software Foundation, > >> + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > >> + */ > >> + > >> +import java.awt.BorderLayout; > >> +import java.awt.Container; > >> +import java.awt.Dimension; > >> + > >> +import javax.swing.JButton; > >> +import javax.swing.JFrame; > >> +import javax.swing.JTextField; > >> +import javax.swing.SwingUtilities; > >> +import javax.swing.UIManager; > >> + > >> +/* @test > >> + * @summary This test check if OpenJDK does not crash when window is repeatedly resized. > >> + * bug #603962 in RH bugzilla (https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962) > >> + * @author Deepak Bhole, Pavel Tisnovsky > >> + * @run main ResizeCrasher > >> + */ > >> + > >> +public class ResizeCrasher { > >> + private static final Dimension FRAME_DIMENSION = new Dimension(100, 200); > >> + > >> + // test duration is specified in milliseconds > >> + private static final int TEST_DURATION = 10000; > >> + > >> + // some window managers print weird warnings when > >> + // window is too small > >> + private static final int MINIMAL_WINDOW_SIZE = 25; > >> + > >> + static JFrame mainWindow; > >> + > >> + ResizeCrasher() { > >> + mainWindow = new JFrame("Crashes on Resizing"); //$NON-NLS-1$ > >> + > >> + mainWindow.setSize(FRAME_DIMENSION); > >> + mainWindow.setResizable(true); > >> + > >> + addControlsToContainer(mainWindow.getContentPane()); > >> + > >> + mainWindow.setVisible(true); > >> + } > >> + > >> + private void addControlsToContainer(Container container) { > >> + JTextField aTextField = new JTextField("JTextField"); //$NON-NLS-1$ > >> + aTextField.setPreferredSize(new Dimension(200,200)); > >> + container.add(aTextField, BorderLayout.CENTER); > >> + > >> + JButton aButton = new JButton("JButton"); //$NON-NLS-1$ > >> + aButton.setPreferredSize(new Dimension(100, 200)); > >> + container.add(aButton, BorderLayout.SOUTH); > >> + } > >> + > >> + public static void main(String[] args) { > >> + > >> + try { > >> + UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); > >> + // UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); > >> + > >> + SwingUtilities.invokeAndWait(new Runnable() { > >> + public void run() { > >> + new ResizeCrasher(); > >> + } > >> + }); > >> + } catch (Exception e) { > >> + System.out.println("Could not set look and feel"); //$NON-NLS-1$ > >> + } > >> + > >> + final java.util.Random r = new java.util.Random(); > >> + long t1 = System.currentTimeMillis(); > >> + > >> + // run the test only for given time period > >> + while (System.currentTimeMillis() - t1 < TEST_DURATION) { > >> + try { > >> + SwingUtilities.invokeAndWait(new Runnable() { > >> + public void run() { > >> + mainWindow.setSize(r.nextInt(200) + MINIMAL_WINDOW_SIZE, r.nextInt(200) + MINIMAL_WINDOW_SIZE); > >> + } > >> + }); > >> + } catch (Exception e) { > >> + e.printStackTrace(); > >> + } > >> + } > >> + if (mainWindow != null) { > >> + mainWindow.dispose(); > >> + } > >> + > >> + } > >> +} > >> > > > > > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ptisnovs at icedtea.classpath.org Tue Sep 21 08:38:51 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Tue, 21 Sep 2010 15:38:51 +0000 Subject: /hg/icedtea6: Correction of testcase test/javax/swing/plaf/synth... Message-ID: changeset e4c712442cf1 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=e4c712442cf1 author: ptisnovs date: Tue Sep 21 17:37:58 2010 +0200 Correction of testcase test/javax/swing/plaf/synth/Test6933784.java diffstat: 3 files changed, 52 insertions(+), 1 deletion(-) ChangeLog | 7 ++++ Makefile.am | 3 + patches/openjdk/6985992-test_6933784.patch | 43 ++++++++++++++++++++++++++++ diffs (74 lines): diff -r fd77bd063119 -r e4c712442cf1 ChangeLog --- a/ChangeLog Tue Sep 21 11:11:45 2010 +0200 +++ b/ChangeLog Tue Sep 21 17:37:58 2010 +0200 @@ -1,3 +1,10 @@ 2010-09-21 Pavel Tisnovsky + + * Makefile.am: + Add new patch. + * patches/openjdk/6985992-test_6933784.patch + Testcase correction. + 2010-09-21 Pavel Tisnovsky * Makefile.am: diff -r fd77bd063119 -r e4c712442cf1 Makefile.am --- a/Makefile.am Tue Sep 21 11:11:45 2010 +0200 +++ b/Makefile.am Tue Sep 21 17:37:58 2010 +0200 @@ -291,7 +291,8 @@ ICEDTEA_PATCHES = \ patches/openjdk/6638712-wildcard_types.patch \ patches/openjdk/6650759-missing_inference.patch \ patches/numa_on_early_glibc.patch \ - patches/icedtea-shark-build.patch + patches/icedtea-shark-build.patch \ + patches/openjdk/6985992-test_6933784.patch if !WITH_ALT_HSBUILD ICEDTEA_PATCHES += \ diff -r fd77bd063119 -r e4c712442cf1 patches/openjdk/6985992-test_6933784.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6985992-test_6933784.patch Tue Sep 21 17:37:58 2010 +0200 @@ -0,0 +1,43 @@ +# HG changeset patch +# User ptisnovs +# Date 1284983956 -7200 +# Node ID bf87d5af43614d609a5251c43eea44c028500d02 +# Parent 4d6c88bce53e4ec3902312abad5eaada33f77a23 +6985992 Fix test/javax/swing/plaf/synth/Test6933784.java for OpenJDK 6 +Summary: Testcase correction +Reviewed-by: darcy + +diff -r 4d6c88bce53e -r bf87d5af4361 test/javax/swing/plaf/synth/Test6933784.java +--- openjdk/jdk/test/javax/swing/plaf/synth/Test6933784-old.java Thu Jan 29 14:58:12 2009 +0300 ++++ openjdk/jdk/test/javax/swing/plaf/synth/Test6933784.java Mon Sep 20 13:59:16 2010 +0200 +@@ -29,7 +29,7 @@ + */ + + import javax.swing.*; +-import javax.swing.plaf.nimbus.NimbusLookAndFeel; ++import javax.swing.UIManager.LookAndFeelInfo; + import javax.swing.plaf.synth.SynthLookAndFeel; + import javax.swing.text.Element; + import javax.swing.text.html.HTMLDocument; +@@ -43,11 +43,20 @@ + + checkImages(); + +- UIManager.setLookAndFeel(new NimbusLookAndFeel()); ++ setNimbusLookAndFeel(); + + checkImages(); + } + ++ private static void setNimbusLookAndFeel() throws Exception { ++ for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) { ++ if ("Nimbus".equals(info.getName())) { ++ UIManager.setLookAndFeel(info.getClassName()); ++ break; ++ } ++ } ++ } ++ + private static void checkImages() throws Exception { + SwingUtilities.invokeAndWait(new Runnable() { + public void run() { From asu at redhat.com Tue Sep 21 18:30:25 2010 From: asu at redhat.com (Andrew Su) Date: Tue, 21 Sep 2010 21:30:25 -0400 (EDT) Subject: /hg/icedtea6: Fixed PR557 - Applet opens in a separate window if... In-Reply-To: Message-ID: <275574341.284071285119025931.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Hello, I tested rapidly refreshing a web page that loads about 10 applets, and this does close the applets that pop-up, however sometimes there will still be applets hanging around (not all of them gets closed). At other times, there is a chance that the applet shows up blank on the website but will popup in a separate window. --Andrew ----- dbhole at icedtea.classpath.org wrote: > From: dbhole at icedtea.classpath.org > To: distro-pkg-dev at openjdk.java.net > Sent: Friday, September 17, 2010 5:01:07 PM GMT -05:00 US/Canada Eastern > Subject: /hg/icedtea6: Fixed PR557 - Applet opens in a separate window if... > > changeset f9af7b6a08eb in /hg/icedtea6 > details: > http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=f9af7b6a08eb > author: Deepak Bhole > date: Fri Sep 17 17:01:12 2010 -0400 > > Fixed PR557 - Applet opens in a separate window if tab is closed > when the applet loads > > > diffstat: > > 3 files changed, 18 insertions(+), 2 deletions(-) > ChangeLog | 8 ++++++++ > NEWS | 1 + > plugin/icedteanp/IcedTeaNPPlugin.cc | 11 +++++++++-- > > diffs (52 lines): > > diff -r ddbf2447886c -r f9af7b6a08eb ChangeLog > --- a/ChangeLog Fri Sep 17 17:36:07 2010 +0100 > +++ b/ChangeLog Fri Sep 17 17:01:12 2010 -0400 > @@ -1,3 +1,11 @@ 2010-09-17 Andrew John Hughes +2010-09-17 Deepak Bhole > + > + PR557: Applet opens in a separate window if tab is closed when the > applet > + loads > + * plugin/icedteanp/IcedTeaNPPlugin.cc > + (ITNP_Destroy): Send a destroy message to let Java side know that > the > + applet needs to be destroyed. > + > 2010-09-17 Andrew John Hughes > > * Makefile.am: > diff -r ddbf2447886c -r f9af7b6a08eb NEWS > --- a/NEWS Fri Sep 17 17:36:07 2010 +0100 > +++ b/NEWS Fri Sep 17 17:01:12 2010 -0400 > @@ -20,6 +20,7 @@ New in release 1.10 (2010-XX-XX): > - A new man page for javaws. > * Plugin > - PR556: Applet initialization code is prone to race conditions > + - PR557: Applet opens in a separate window if tab is closed when > the applet loads > > New in release 1.9 (2010-09-07): > > diff -r ddbf2447886c -r f9af7b6a08eb > plugin/icedteanp/IcedTeaNPPlugin.cc > --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Sep 17 17:36:07 2010 > +0100 > +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Sep 17 17:01:12 2010 > -0400 > @@ -634,13 +634,20 @@ ITNP_Destroy (NPP instance, NPSavedData* > > ITNPPluginData* data = (ITNPPluginData*) instance->pdata; > > + int id = get_id_from_instance(instance); > + > + // Let Java know that this applet needs to be destroyed > + gchar* msg = (gchar*) g_malloc(512*sizeof(gchar)); // 512 is more > than enough. We need < 100 > + g_sprintf(msg, "instance %d destroy", id); > + plugin_send_message_to_appletviewer(msg); > + g_free(msg); > + msg = NULL; > + > if (data) > { > // Free plugin data. > plugin_data_destroy (instance); > } > - > - int id = get_id_from_instance(instance); > > g_hash_table_remove(instance_to_id_map, instance); > g_hash_table_remove(id_to_instance_map, GINT_TO_POINTER(id)); From dbhole at redhat.com Tue Sep 21 18:57:11 2010 From: dbhole at redhat.com (Deepak Bhole) Date: Tue, 21 Sep 2010 18:57:11 -0700 Subject: /hg/icedtea6: Fixed PR557 - Applet opens in a separate window if... In-Reply-To: <275574341.284071285119025931.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> References: <275574341.284071285119025931.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Message-ID: <20100922015711.GA15269@redhat.com> * Andrew Su [2010-09-21 18:30]: > Hello, > > I tested rapidly refreshing a web page that loads about 10 applets, and this does close the applets that pop-up, however sometimes there will still be applets hanging around (not all of them gets closed). At other times, there is a chance that the applet shows up blank on the website but will popup in a separate window. > Did you test it with HEAD? It could be that there is still a race condition happening that prevents the close requests from being queued correctly. Parts of that code are going to be re-written to provide a proper api that blocks till initialization is complete. It will synchronize things correctly and prevent this. What website did you try it with btw? With HEAD I was unable to keep any windows hanging around (eventually they all closed). Cheers, Deepak > --Andrew > > > ----- dbhole at icedtea.classpath.org wrote: > > > From: dbhole at icedtea.classpath.org > > To: distro-pkg-dev at openjdk.java.net > > Sent: Friday, September 17, 2010 5:01:07 PM GMT -05:00 US/Canada Eastern > > Subject: /hg/icedtea6: Fixed PR557 - Applet opens in a separate window if... > > > > changeset f9af7b6a08eb in /hg/icedtea6 > > details: > > http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=f9af7b6a08eb > > author: Deepak Bhole > > date: Fri Sep 17 17:01:12 2010 -0400 > > > > Fixed PR557 - Applet opens in a separate window if tab is closed > > when the applet loads > > > > > > diffstat: > > > > 3 files changed, 18 insertions(+), 2 deletions(-) > > ChangeLog | 8 ++++++++ > > NEWS | 1 + > > plugin/icedteanp/IcedTeaNPPlugin.cc | 11 +++++++++-- > > > > diffs (52 lines): > > > > diff -r ddbf2447886c -r f9af7b6a08eb ChangeLog > > --- a/ChangeLog Fri Sep 17 17:36:07 2010 +0100 > > +++ b/ChangeLog Fri Sep 17 17:01:12 2010 -0400 > > @@ -1,3 +1,11 @@ 2010-09-17 Andrew John Hughes > +2010-09-17 Deepak Bhole > > + > > + PR557: Applet opens in a separate window if tab is closed when the > > applet > > + loads > > + * plugin/icedteanp/IcedTeaNPPlugin.cc > > + (ITNP_Destroy): Send a destroy message to let Java side know that > > the > > + applet needs to be destroyed. > > + > > 2010-09-17 Andrew John Hughes > > > > * Makefile.am: > > diff -r ddbf2447886c -r f9af7b6a08eb NEWS > > --- a/NEWS Fri Sep 17 17:36:07 2010 +0100 > > +++ b/NEWS Fri Sep 17 17:01:12 2010 -0400 > > @@ -20,6 +20,7 @@ New in release 1.10 (2010-XX-XX): > > - A new man page for javaws. > > * Plugin > > - PR556: Applet initialization code is prone to race conditions > > + - PR557: Applet opens in a separate window if tab is closed when > > the applet loads > > > > New in release 1.9 (2010-09-07): > > > > diff -r ddbf2447886c -r f9af7b6a08eb > > plugin/icedteanp/IcedTeaNPPlugin.cc > > --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Sep 17 17:36:07 2010 > > +0100 > > +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Sep 17 17:01:12 2010 > > -0400 > > @@ -634,13 +634,20 @@ ITNP_Destroy (NPP instance, NPSavedData* > > > > ITNPPluginData* data = (ITNPPluginData*) instance->pdata; > > > > + int id = get_id_from_instance(instance); > > + > > + // Let Java know that this applet needs to be destroyed > > + gchar* msg = (gchar*) g_malloc(512*sizeof(gchar)); // 512 is more > > than enough. We need < 100 > > + g_sprintf(msg, "instance %d destroy", id); > > + plugin_send_message_to_appletviewer(msg); > > + g_free(msg); > > + msg = NULL; > > + > > if (data) > > { > > // Free plugin data. > > plugin_data_destroy (instance); > > } > > - > > - int id = get_id_from_instance(instance); > > > > g_hash_table_remove(instance_to_id_map, instance); > > g_hash_table_remove(id_to_instance_map, GINT_TO_POINTER(id)); From ptisnovs at redhat.com Wed Sep 22 04:36:04 2010 From: ptisnovs at redhat.com (Pavel Tisnovsky) Date: Wed, 22 Sep 2010 13:36:04 +0200 Subject: [patch] new JTreg test for IcedTea6 & 7 In-Reply-To: <20100921152634.GB10851@rivendell.middle-earth.co.uk> References: <4C987AFE.5060702@redhat.com> <20100921135643.GA10851@rivendell.middle-earth.co.uk> <4C98BAD7.1050503@redhat.com> <20100921152634.GB10851@rivendell.middle-earth.co.uk> Message-ID: <4C99EA24.5060406@redhat.com> Dr Andrew John Hughes wrote: > On 16:01 Tue 21 Sep , Pavel Tisnovsky wrote: >> Dr Andrew John Hughes wrote: >>> On 11:29 Tue 21 Sep , Pavel Tisnovsky wrote: >>>> Hi all, >>>> >>>> is it possible to push new JTreg test to IcedTea6 HEAD and probably to 7 >>>> too? This test check if JDK does not crash when window is quickly >>>> repeatedly resized. >>>> >>>> In fact it's a reproducer for this bug: >>>> https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962 >>>> >>>> The test itself is based on Deepak's and Omair's code. >>>> >>>> Pavel >>>> >>> If this is pushed to 7, it should be pushed to the IcedTea forest >>> (http://hg.openjdk.java.net/icedtea/jdk7/jdk) not added as a patch. >>> >>> Have you sent this upstream? >> Not yet, as I was unable to find related bug in Oracle bug database. >> > > Then just ask them to file one. > > But in this case: > > S6678385, RH551835: Fixes jvm crashes when window is resized. Is the bug ID 6678385 really correct? It seems it is focused to another problem (StackOverflowError versus JDK crash). > > is in the NEWS file so you should use 6678385. > >>>> --- /dev/null 2010-06-29 11:10:08.737208357 +0200 >>>> +++ openjdk/jdk/test/javax/swing/ResizeCrasher/ResizeCrasher.java 2010-09-17 14:40:51.000000000 +0200 >>>> @@ -0,0 +1,105 @@ >>>> +/* >>>> + * Copyright 2010 Red Hat, Inc. All Rights Reserved. >>>> + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. >>>> + * >>>> + * This code is free software; you can redistribute it and/or modify it >>>> + * under the terms of the GNU General Public License version 2 only, as >>>> + * published by the Free Software Foundation. >>>> + * >>>> + * This code is distributed in the hope that it will be useful, but WITHOUT >>>> + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or >>>> + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License >>>> + * version 2 for more details (a copy is included in the LICENSE file that >>>> + * accompanied this code). >>>> + * >>>> + * You should have received a copy of the GNU General Public License version >>>> + * 2 along with this work; if not, write to the Free Software Foundation, >>>> + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. >>>> + */ >>>> + >>>> +import java.awt.BorderLayout; >>>> +import java.awt.Container; >>>> +import java.awt.Dimension; >>>> + >>>> +import javax.swing.JButton; >>>> +import javax.swing.JFrame; >>>> +import javax.swing.JTextField; >>>> +import javax.swing.SwingUtilities; >>>> +import javax.swing.UIManager; >>>> + >>>> +/* @test >>>> + * @summary This test check if OpenJDK does not crash when window is repeatedly resized. >>>> + * bug #603962 in RH bugzilla (https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962) >>>> + * @author Deepak Bhole, Pavel Tisnovsky >>>> + * @run main ResizeCrasher >>>> + */ >>>> + >>>> +public class ResizeCrasher { >>>> + private static final Dimension FRAME_DIMENSION = new Dimension(100, 200); >>>> + >>>> + // test duration is specified in milliseconds >>>> + private static final int TEST_DURATION = 10000; >>>> + >>>> + // some window managers print weird warnings when >>>> + // window is too small >>>> + private static final int MINIMAL_WINDOW_SIZE = 25; >>>> + >>>> + static JFrame mainWindow; >>>> + >>>> + ResizeCrasher() { >>>> + mainWindow = new JFrame("Crashes on Resizing"); //$NON-NLS-1$ >>>> + >>>> + mainWindow.setSize(FRAME_DIMENSION); >>>> + mainWindow.setResizable(true); >>>> + >>>> + addControlsToContainer(mainWindow.getContentPane()); >>>> + >>>> + mainWindow.setVisible(true); >>>> + } >>>> + >>>> + private void addControlsToContainer(Container container) { >>>> + JTextField aTextField = new JTextField("JTextField"); //$NON-NLS-1$ >>>> + aTextField.setPreferredSize(new Dimension(200,200)); >>>> + container.add(aTextField, BorderLayout.CENTER); >>>> + >>>> + JButton aButton = new JButton("JButton"); //$NON-NLS-1$ >>>> + aButton.setPreferredSize(new Dimension(100, 200)); >>>> + container.add(aButton, BorderLayout.SOUTH); >>>> + } >>>> + >>>> + public static void main(String[] args) { >>>> + >>>> + try { >>>> + UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); >>>> + // UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); >>>> + >>>> + SwingUtilities.invokeAndWait(new Runnable() { >>>> + public void run() { >>>> + new ResizeCrasher(); >>>> + } >>>> + }); >>>> + } catch (Exception e) { >>>> + System.out.println("Could not set look and feel"); //$NON-NLS-1$ >>>> + } >>>> + >>>> + final java.util.Random r = new java.util.Random(); >>>> + long t1 = System.currentTimeMillis(); >>>> + >>>> + // run the test only for given time period >>>> + while (System.currentTimeMillis() - t1 < TEST_DURATION) { >>>> + try { >>>> + SwingUtilities.invokeAndWait(new Runnable() { >>>> + public void run() { >>>> + mainWindow.setSize(r.nextInt(200) + MINIMAL_WINDOW_SIZE, r.nextInt(200) + MINIMAL_WINDOW_SIZE); >>>> + } >>>> + }); >>>> + } catch (Exception e) { >>>> + e.printStackTrace(); >>>> + } >>>> + } >>>> + if (mainWindow != null) { >>>> + mainWindow.dispose(); >>>> + } >>>> + >>>> + } >>>> +} >>>> >>> > From bugzilla-daemon at icedtea.classpath.org Wed Sep 22 05:17:27 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 22 Sep 2010 12:17:27 +0000 Subject: [Bug 558] New: Plugin doesn't work with France VAT declaration web site Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=558 Summary: Plugin doesn't work with France VAT declaration web site Product: IcedTea Version: 6-1.8.1 Platform: 64-bit OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: IcedTea6 AssignedTo: unassigned at icedtea.classpath.org ReportedBy: alexis at via.ecp.fr I am using Ubuntu 10.04 64bit with the following packages : - icedtea6-plugin version 6b18-1.8.1-0ubuntu1 - openjdk-6-jre version 6b18-1.8.1-0ubuntu1 - firefox version 3.6.10+build1+nobinonly-0ubuntu0.10.04.1 I can't use the official web site of France's tax office for the monthly tax declaration of my company. Here is what happens : * First web page : check of computer configuration : it passes the test and it says that my Java virtual machine is OK * Second web page : it downloads a Java appel and it is supposed to ask me to authorize its execution. Unfortunately, I never get the Java pop-up to authorize the execution of the applet and it doesn't bring me automatically to the next web page as it should. Here is a screenshot : http://people.via.ecp.fr/~alexis/screenshot_tva_bug-1.jpg On the same PC, if I replace the "icedtea6-plugin" package by the "sun-java6-plugin" package (as available in Ubuntu's "partner" repository), it works : on the second web page, I get a pop-up to authorize the Java applet and then it brings me to the next Web page. In order to get more info, I replayed the scenario with the icedtea6-plugin package and started firefox with the variable ICEDTEAPLUGIN_DEBUG=1. Here are the logs with my comments inside : http://people.via.ecp.fr/~alexis/logs-ff-icedteaplugin.txt Do you have an idea of where the problem comes from ? -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Sep 22 05:30:08 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 22 Sep 2010 12:30:08 +0000 Subject: [Bug 558] Plugin doesn't work with France VAT declaration web site Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=558 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at icedtea.classpath|dbhole at redhat.com |.org | Component|IcedTea6 |NPPlugin ------- Comment #1 from gnu_andrew at member.fsf.org 2010-09-22 12:30 ------- Moving to plugin and reassigned to Deepak, the plugin maintainer. Is this site accessible to all? (i.e. can we try loading this applet) It may be worth trying with IcedTea6 1.9 or Mercurial HEAD to see if the issue has already been fixed in the newer version. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. You are the assignee for the bug, or are watching the assignee. From ahughes at redhat.com Wed Sep 22 05:32:08 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Wed, 22 Sep 2010 13:32:08 +0100 Subject: [patch] new JTreg test for IcedTea6 & 7 In-Reply-To: <4C99EA24.5060406@redhat.com> References: <4C987AFE.5060702@redhat.com> <20100921135643.GA10851@rivendell.middle-earth.co.uk> <4C98BAD7.1050503@redhat.com> <20100921152634.GB10851@rivendell.middle-earth.co.uk> <4C99EA24.5060406@redhat.com> Message-ID: <20100922123208.GC5611@bree.middle-earth.co.uk> On 13:36 Wed 22 Sep , Pavel Tisnovsky wrote: > Dr Andrew John Hughes wrote: > > On 16:01 Tue 21 Sep , Pavel Tisnovsky wrote: > >> Dr Andrew John Hughes wrote: > >>> On 11:29 Tue 21 Sep , Pavel Tisnovsky wrote: > >>>> Hi all, > >>>> > >>>> is it possible to push new JTreg test to IcedTea6 HEAD and probably to 7 > >>>> too? This test check if JDK does not crash when window is quickly > >>>> repeatedly resized. > >>>> > >>>> In fact it's a reproducer for this bug: > >>>> https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962 > >>>> > >>>> The test itself is based on Deepak's and Omair's code. > >>>> > >>>> Pavel > >>>> > >>> If this is pushed to 7, it should be pushed to the IcedTea forest > >>> (http://hg.openjdk.java.net/icedtea/jdk7/jdk) not added as a patch. > >>> > >>> Have you sent this upstream? > >> Not yet, as I was unable to find related bug in Oracle bug database. > >> > > > > Then just ask them to file one. > > > > But in this case: > > > > S6678385, RH551835: Fixes jvm crashes when window is resized. > > Is the bug ID 6678385 really correct? It seems it is focused to another > problem (StackOverflowError versus JDK crash). > I don't follow; a StackOverflowError does cause a crash. If you don't think it's appropriate, ask them for a bug ID. Either way, it would be good to get feedback from the Oracle developer teams on this. > > > > is in the NEWS file so you should use 6678385. > > > >>>> --- /dev/null 2010-06-29 11:10:08.737208357 +0200 > >>>> +++ openjdk/jdk/test/javax/swing/ResizeCrasher/ResizeCrasher.java 2010-09-17 14:40:51.000000000 +0200 > >>>> @@ -0,0 +1,105 @@ > >>>> +/* > >>>> + * Copyright 2010 Red Hat, Inc. All Rights Reserved. > >>>> + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > >>>> + * > >>>> + * This code is free software; you can redistribute it and/or modify it > >>>> + * under the terms of the GNU General Public License version 2 only, as > >>>> + * published by the Free Software Foundation. > >>>> + * > >>>> + * This code is distributed in the hope that it will be useful, but WITHOUT > >>>> + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > >>>> + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > >>>> + * version 2 for more details (a copy is included in the LICENSE file that > >>>> + * accompanied this code). > >>>> + * > >>>> + * You should have received a copy of the GNU General Public License version > >>>> + * 2 along with this work; if not, write to the Free Software Foundation, > >>>> + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > >>>> + */ > >>>> + > >>>> +import java.awt.BorderLayout; > >>>> +import java.awt.Container; > >>>> +import java.awt.Dimension; > >>>> + > >>>> +import javax.swing.JButton; > >>>> +import javax.swing.JFrame; > >>>> +import javax.swing.JTextField; > >>>> +import javax.swing.SwingUtilities; > >>>> +import javax.swing.UIManager; > >>>> + > >>>> +/* @test > >>>> + * @summary This test check if OpenJDK does not crash when window is repeatedly resized. > >>>> + * bug #603962 in RH bugzilla (https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=603962) > >>>> + * @author Deepak Bhole, Pavel Tisnovsky > >>>> + * @run main ResizeCrasher > >>>> + */ > >>>> + > >>>> +public class ResizeCrasher { > >>>> + private static final Dimension FRAME_DIMENSION = new Dimension(100, 200); > >>>> + > >>>> + // test duration is specified in milliseconds > >>>> + private static final int TEST_DURATION = 10000; > >>>> + > >>>> + // some window managers print weird warnings when > >>>> + // window is too small > >>>> + private static final int MINIMAL_WINDOW_SIZE = 25; > >>>> + > >>>> + static JFrame mainWindow; > >>>> + > >>>> + ResizeCrasher() { > >>>> + mainWindow = new JFrame("Crashes on Resizing"); //$NON-NLS-1$ > >>>> + > >>>> + mainWindow.setSize(FRAME_DIMENSION); > >>>> + mainWindow.setResizable(true); > >>>> + > >>>> + addControlsToContainer(mainWindow.getContentPane()); > >>>> + > >>>> + mainWindow.setVisible(true); > >>>> + } > >>>> + > >>>> + private void addControlsToContainer(Container container) { > >>>> + JTextField aTextField = new JTextField("JTextField"); //$NON-NLS-1$ > >>>> + aTextField.setPreferredSize(new Dimension(200,200)); > >>>> + container.add(aTextField, BorderLayout.CENTER); > >>>> + > >>>> + JButton aButton = new JButton("JButton"); //$NON-NLS-1$ > >>>> + aButton.setPreferredSize(new Dimension(100, 200)); > >>>> + container.add(aButton, BorderLayout.SOUTH); > >>>> + } > >>>> + > >>>> + public static void main(String[] args) { > >>>> + > >>>> + try { > >>>> + UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); > >>>> + // UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); > >>>> + > >>>> + SwingUtilities.invokeAndWait(new Runnable() { > >>>> + public void run() { > >>>> + new ResizeCrasher(); > >>>> + } > >>>> + }); > >>>> + } catch (Exception e) { > >>>> + System.out.println("Could not set look and feel"); //$NON-NLS-1$ > >>>> + } > >>>> + > >>>> + final java.util.Random r = new java.util.Random(); > >>>> + long t1 = System.currentTimeMillis(); > >>>> + > >>>> + // run the test only for given time period > >>>> + while (System.currentTimeMillis() - t1 < TEST_DURATION) { > >>>> + try { > >>>> + SwingUtilities.invokeAndWait(new Runnable() { > >>>> + public void run() { > >>>> + mainWindow.setSize(r.nextInt(200) + MINIMAL_WINDOW_SIZE, r.nextInt(200) + MINIMAL_WINDOW_SIZE); > >>>> + } > >>>> + }); > >>>> + } catch (Exception e) { > >>>> + e.printStackTrace(); > >>>> + } > >>>> + } > >>>> + if (mainWindow != null) { > >>>> + mainWindow.dispose(); > >>>> + } > >>>> + > >>>> + } > >>>> +} > >>>> > >>> > > > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From asu at redhat.com Wed Sep 22 06:32:50 2010 From: asu at redhat.com (Andrew Su) Date: Wed, 22 Sep 2010 09:32:50 -0400 (EDT) Subject: /hg/icedtea6: Fixed PR557 - Applet opens in a separate window if... In-Reply-To: <20100922015711.GA15269@redhat.com> Message-ID: <1829013226.327711285162370308.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Yes I tested it with HEAD, the applets do get closed (all the ones that are suppose to be destroyed) but after many refreshes. I tested it with this site[1] [1] http://www-archive.mozilla.org/quality/browser/front-end/testcases/oji/objtest2.html --Andrew ----- "Deepak Bhole" wrote: > From: "Deepak Bhole" > To: "Andrew Su" > Cc: distro-pkg-dev at openjdk.java.net > Sent: Tuesday, September 21, 2010 9:57:11 PM GMT -05:00 US/Canada Eastern > Subject: Re: /hg/icedtea6: Fixed PR557 - Applet opens in a separate window if... > > * Andrew Su [2010-09-21 18:30]: > > Hello, > > > > I tested rapidly refreshing a web page that loads about 10 applets, > and this does close the applets that pop-up, however sometimes there > will still be applets hanging around (not all of them gets closed). At > other times, there is a chance that the applet shows up blank on the > website but will popup in a separate window. > > > > Did you test it with HEAD? > > It could be that there is still a race condition happening that > prevents > the close requests from being queued correctly. Parts of that code > are > going to be re-written to provide a proper api that blocks till > initialization is complete. It will synchronize things correctly and > prevent this. > > What website did you try it with btw? With HEAD I was unable to keep > any > windows hanging around (eventually they all closed). > > Cheers, > Deepak > > > --Andrew > > > > > > ----- dbhole at icedtea.classpath.org wrote: > > > > > From: dbhole at icedtea.classpath.org > > > To: distro-pkg-dev at openjdk.java.net > > > Sent: Friday, September 17, 2010 5:01:07 PM GMT -05:00 US/Canada > Eastern > > > Subject: /hg/icedtea6: Fixed PR557 - Applet opens in a separate > window if... > > > > > > changeset f9af7b6a08eb in /hg/icedtea6 > > > details: > > > > http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=f9af7b6a08eb > > > author: Deepak Bhole > > > date: Fri Sep 17 17:01:12 2010 -0400 > > > > > > Fixed PR557 - Applet opens in a separate window if tab is closed > > > when the applet loads > > > > > > > > > diffstat: > > > > > > 3 files changed, 18 insertions(+), 2 deletions(-) > > > ChangeLog | 8 ++++++++ > > > NEWS | 1 + > > > plugin/icedteanp/IcedTeaNPPlugin.cc | 11 +++++++++-- > > > > > > diffs (52 lines): > > > > > > diff -r ddbf2447886c -r f9af7b6a08eb ChangeLog > > > --- a/ChangeLog Fri Sep 17 17:36:07 2010 +0100 > > > +++ b/ChangeLog Fri Sep 17 17:01:12 2010 -0400 > > > @@ -1,3 +1,11 @@ 2010-09-17 Andrew John Hughes > > +2010-09-17 Deepak Bhole > > > + > > > + PR557: Applet opens in a separate window if tab is closed when > the > > > applet > > > + loads > > > + * plugin/icedteanp/IcedTeaNPPlugin.cc > > > + (ITNP_Destroy): Send a destroy message to let Java side know > that > > > the > > > + applet needs to be destroyed. > > > + > > > 2010-09-17 Andrew John Hughes > > > > > > * Makefile.am: > > > diff -r ddbf2447886c -r f9af7b6a08eb NEWS > > > --- a/NEWS Fri Sep 17 17:36:07 2010 +0100 > > > +++ b/NEWS Fri Sep 17 17:01:12 2010 -0400 > > > @@ -20,6 +20,7 @@ New in release 1.10 (2010-XX-XX): > > > - A new man page for javaws. > > > * Plugin > > > - PR556: Applet initialization code is prone to race > conditions > > > + - PR557: Applet opens in a separate window if tab is closed > when > > > the applet loads > > > > > > New in release 1.9 (2010-09-07): > > > > > > diff -r ddbf2447886c -r f9af7b6a08eb > > > plugin/icedteanp/IcedTeaNPPlugin.cc > > > --- a/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Sep 17 17:36:07 > 2010 > > > +0100 > > > +++ b/plugin/icedteanp/IcedTeaNPPlugin.cc Fri Sep 17 17:01:12 > 2010 > > > -0400 > > > @@ -634,13 +634,20 @@ ITNP_Destroy (NPP instance, NPSavedData* > > > > > > ITNPPluginData* data = (ITNPPluginData*) instance->pdata; > > > > > > + int id = get_id_from_instance(instance); > > > + > > > + // Let Java know that this applet needs to be destroyed > > > + gchar* msg = (gchar*) g_malloc(512*sizeof(gchar)); // 512 is > more > > > than enough. We need < 100 > > > + g_sprintf(msg, "instance %d destroy", id); > > > + plugin_send_message_to_appletviewer(msg); > > > + g_free(msg); > > > + msg = NULL; > > > + > > > if (data) > > > { > > > // Free plugin data. > > > plugin_data_destroy (instance); > > > } > > > - > > > - int id = get_id_from_instance(instance); > > > > > > g_hash_table_remove(instance_to_id_map, instance); > > > g_hash_table_remove(id_to_instance_map, GINT_TO_POINTER(id)); From bugzilla-daemon at icedtea.classpath.org Wed Sep 22 08:21:08 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 22 Sep 2010 15:21:08 +0000 Subject: [Bug 559] New: shark + hs19 crashes in building docs Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=559 Summary: shark + hs19 crashes in building docs Product: IcedTea Version: 6-hg Platform: x86_64 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: Shark AssignedTo: unassigned at icedtea.classpath.org ReportedBy: gnu_andrew at member.fsf.org /home/andrew/builder/shark6/bootstrap/jdk1.6.0/bin/java -Xmx1024m -Xms128m -XX:PermSize=32m -XX:MaxPermSize=160m "-Xbootclasspath/p:/home/andrew/builder/shark6/openjdk.build/langtools/dist/bootstrap/lib/javadoc.jar:/home/andrew/builder/shark6/openjdk.build/langtools/dist/bootstrap/lib/javac.jar:/home/andrew/builder/shark6/openjdk.build/langtools/dist/bootstrap/lib/doclets.jar" -jar /home/andrew/builder/shark6/openjdk.build/langtools/dist/bootstrap/lib/javadoc.jar -d /home/andrew/builder/shark6/openjdk.build/docs/api \ @/home/andrew/builder/shark6/openjdk.build/tmp/docs/doctmp/coredocs.options @/home/andrew/builder/shark6/openjdk.build/tmp/docs/doctmp/coredocs.packages # # A fatal error has been detected by the Java Runtime Environment: # # Internal Error (os_linux_zero.cpp:236), pid=11665, tid=47887745468176 # fatal error: caught unhandled signal 11 # # JRE version: 6.0_20-b20 # Java VM: OpenJDK 64-Bit Shark VM (19.0-b06 mixed mode linux-amd64 ) # Derivative: IcedTea6 1.10pre+re4c712442cf1 # Distribution: Built on Gentoo Base System release 2.0.1 (Wed Sep 22 14:47:20 BST 2010) # An error report file with more information is saved as: # /mnt/builder/shark6/openjdk/jdk/make/docs/hs_err_pid11665.log # # If you would like to submit a bug report, please include # instructions how to reproduce the bug and visit: # http://icedtea.classpath.org/bugzilla # -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Wed Sep 22 08:21:56 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Wed, 22 Sep 2010 15:21:56 +0000 Subject: [Bug 559] shark + hs19 crashes in building docs Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=559 ------- Comment #1 from gnu_andrew at member.fsf.org 2010-09-22 15:21 ------- Created an attachment (id=422) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=422&action=view) HotSpot Crash Dump -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From andrew at icedtea.classpath.org Wed Sep 22 08:27:30 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Wed, 22 Sep 2010 15:27:30 +0000 Subject: /hg/icedtea6: Split arm assembler and Shark into different direc... Message-ID: changeset 61d5e01c802e in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=61d5e01c802e author: Andrew John Hughes date: Wed Sep 22 16:27:14 2010 +0100 Split arm assembler and Shark into different directories so that Shark is not copied for hs19 builds (hs19 includes Shark). 2010-09-22 Andrew John Hughes * ports/hotspot/make/linux/makefiles/shark.make, * ports/hotspot/src/cpu/zero/vm/asm_helper.cpp, * ports/hotspot/src/cpu/zero/vm/bytecodes_arm.def, * ports/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S, * ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp, * ports/hotspot/src/cpu/zero/vm/thumb2.cpp, * ports/hotspot/src/share/vm/includeDB_shark, * ports/hotspot/src/share/vm/shark/llvmHeaders.hpp, * ports/hotspot/src/share/vm/shark/llvmValue.hpp, * ports/hotspot/src/share/vm/shark/sharkBlock.cpp, * ports/hotspot/src/share/vm/shark/sharkBlock.hpp, * ports/hotspot/src/share/vm/shark/sharkBuilder.cpp, * ports/hotspot/src/share/vm/shark/sharkBuilder.hpp, * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, * ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp, * ports/hotspot/src/share/vm/shark/sharkCompiler.cpp, * ports/hotspot/src/share/vm/shark/sharkCompiler.hpp, * ports/hotspot/src/share/vm/shark/sharkConstant.cpp, * ports/hotspot/src/share/vm/shark/sharkConstant.hpp, * ports/hotspot/src/share/vm/shark/sharkContext.cpp, * ports/hotspot/src/share/vm/shark/sharkContext.hpp, * ports/hotspot/src/share/vm/shark/sharkEntry.hpp, * ports/hotspot/src/share/vm/shark/sharkFunction.cpp, * ports/hotspot/src/share/vm/shark/sharkFunction.hpp, * ports/hotspot/src/share/vm/shark/sharkInliner.cpp, * ports/hotspot/src/share/vm/shark/sharkInliner.hpp, * ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp, * ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp, * ports/hotspot/src/share/vm/shark/sharkInvariants.cpp, * ports/hotspot/src/share/vm/shark/sharkInvariants.hpp, * ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp, * ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp, * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp, * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp, * ports/hotspot/src/share/vm/shark/sharkRuntime.cpp, * ports/hotspot/src/share/vm/shark/sharkRuntime.hpp, * ports/hotspot/src/share/vm/shark/sharkStack.cpp, * ports/hotspot/src/share/vm/shark/sharkStack.hpp, * ports/hotspot/src/share/vm/shark/sharkState.cpp, * ports/hotspot/src/share/vm/shark/sharkState.hpp, * ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp, * ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp, * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp, * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp, * ports/hotspot/src/share/vm/shark/sharkType.hpp, * ports/hotspot/src/share/vm/shark/sharkValue.cpp, * ports/hotspot/src/share/vm/shark/sharkValue.hpp, * ports/hotspot/src/share/vm/shark/shark_globals.cpp, * ports/hotspot/src/share/vm/shark/shark_globals.hpp, * ports/hotspot/tools/mkbc.c: Split into arm_port and shark directories. * Makefile.am: Only copy Shark when hs17 is built. hs19 includes Shark and the in-tree Shark fails to build with it. * arm_port/hotspot/src/cpu/zero/vm/asm_helper.cpp, * arm_port/hotspot/src/cpu/zero/vm/bytecodes_arm.def, * arm_port/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S, * arm_port/hotspot/src/cpu/zero/vm/thumb2.cpp, * arm_port/hotspot/tools/mkbc.c: New location of arm assembler files. * shark/hotspot/make/linux/makefiles/shark.make, * shark/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp, * shark/hotspot/src/share/vm/includeDB_shark, * shark/hotspot/src/share/vm/shark/llvmHeaders.hpp, * shark/hotspot/src/share/vm/shark/llvmValue.hpp, * shark/hotspot/src/share/vm/shark/sharkBlock.cpp, * shark/hotspot/src/share/vm/shark/sharkBlock.hpp, * shark/hotspot/src/share/vm/shark/sharkBuilder.cpp, * shark/hotspot/src/share/vm/shark/sharkBuilder.hpp, * shark/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, * shark/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, * shark/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp, * shark/hotspot/src/share/vm/shark/sharkCompiler.cpp, * shark/hotspot/src/share/vm/shark/sharkCompiler.hpp, * shark/hotspot/src/share/vm/shark/sharkConstant.cpp, * shark/hotspot/src/share/vm/shark/sharkConstant.hpp, * shark/hotspot/src/share/vm/shark/sharkContext.cpp, * shark/hotspot/src/share/vm/shark/sharkContext.hpp, * shark/hotspot/src/share/vm/shark/sharkEntry.hpp, * shark/hotspot/src/share/vm/shark/sharkFunction.cpp, * shark/hotspot/src/share/vm/shark/sharkFunction.hpp, * shark/hotspot/src/share/vm/shark/sharkInliner.cpp, * shark/hotspot/src/share/vm/shark/sharkInliner.hpp, * shark/hotspot/src/share/vm/shark/sharkIntrinsics.cpp, * shark/hotspot/src/share/vm/shark/sharkIntrinsics.hpp, * shark/hotspot/src/share/vm/shark/sharkInvariants.cpp, * shark/hotspot/src/share/vm/shark/sharkInvariants.hpp, * shark/hotspot/src/share/vm/shark/sharkMemoryManager.cpp, * shark/hotspot/src/share/vm/shark/sharkMemoryManager.hpp, * shark/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp, * shark/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp, * shark/hotspot/src/share/vm/shark/sharkRuntime.cpp, * shark/hotspot/src/share/vm/shark/sharkRuntime.hpp, * shark/hotspot/src/share/vm/shark/sharkStack.cpp, * shark/hotspot/src/share/vm/shark/sharkStack.hpp, * shark/hotspot/src/share/vm/shark/sharkState.cpp, * shark/hotspot/src/share/vm/shark/sharkState.hpp, * shark/hotspot/src/share/vm/shark/sharkStateScanner.cpp, * shark/hotspot/src/share/vm/shark/sharkStateScanner.hpp, * shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp, * shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp, * shark/hotspot/src/share/vm/shark/sharkType.hpp, * shark/hotspot/src/share/vm/shark/sharkValue.cpp, * shark/hotspot/src/share/vm/shark/sharkValue.hpp, * shark/hotspot/src/share/vm/shark/shark_globals.cpp, * shark/hotspot/src/share/vm/shark/shark_globals.hpp: New location of Shark. diffstat: 104 files changed, 34796 insertions(+), 34674 deletions(-) ChangeLog | 110 Makefile.am | 34 arm_port/hotspot/src/cpu/zero/vm/asm_helper.cpp | 583 + arm_port/hotspot/src/cpu/zero/vm/bytecodes_arm.def | 7695 +++++++++++++++ arm_port/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S | 6336 ++++++++++++ arm_port/hotspot/src/cpu/zero/vm/thumb2.cpp | 7456 ++++++++++++++ arm_port/hotspot/tools/mkbc.c | 607 + ports/hotspot/make/linux/makefiles/shark.make | 32 ports/hotspot/src/cpu/zero/vm/asm_helper.cpp | 583 - ports/hotspot/src/cpu/zero/vm/bytecodes_arm.def | 7695 --------------- ports/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S | 6336 ------------ ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp | 62 ports/hotspot/src/cpu/zero/vm/thumb2.cpp | 7456 -------------- ports/hotspot/src/share/vm/includeDB_shark | 369 ports/hotspot/src/share/vm/shark/llvmHeaders.hpp | 82 ports/hotspot/src/share/vm/shark/llvmValue.hpp | 62 ports/hotspot/src/share/vm/shark/sharkBlock.cpp | 1260 -- ports/hotspot/src/share/vm/shark/sharkBlock.hpp | 281 ports/hotspot/src/share/vm/shark/sharkBuilder.cpp | 591 - ports/hotspot/src/share/vm/shark/sharkBuilder.hpp | 209 ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp | 259 ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp | 417 ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp | 87 ports/hotspot/src/share/vm/shark/sharkCompiler.cpp | 340 ports/hotspot/src/share/vm/shark/sharkCompiler.hpp | 119 ports/hotspot/src/share/vm/shark/sharkConstant.cpp | 128 ports/hotspot/src/share/vm/shark/sharkConstant.hpp | 64 ports/hotspot/src/share/vm/shark/sharkContext.cpp | 180 ports/hotspot/src/share/vm/shark/sharkContext.hpp | 187 ports/hotspot/src/share/vm/shark/sharkEntry.hpp | 58 ports/hotspot/src/share/vm/shark/sharkFunction.cpp | 188 ports/hotspot/src/share/vm/shark/sharkFunction.hpp | 111 ports/hotspot/src/share/vm/shark/sharkInliner.cpp | 749 - ports/hotspot/src/share/vm/shark/sharkInliner.hpp | 32 ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp | 277 ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp | 54 ports/hotspot/src/share/vm/shark/sharkInvariants.cpp | 37 ports/hotspot/src/share/vm/shark/sharkInvariants.hpp | 167 ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp | 116 ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp | 88 ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp | 352 ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp | 182 ports/hotspot/src/share/vm/shark/sharkRuntime.cpp | 251 ports/hotspot/src/share/vm/shark/sharkRuntime.hpp | 83 ports/hotspot/src/share/vm/shark/sharkStack.cpp | 263 ports/hotspot/src/share/vm/shark/sharkStack.hpp | 290 ports/hotspot/src/share/vm/shark/sharkState.cpp | 389 ports/hotspot/src/share/vm/shark/sharkState.hpp | 188 ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp | 99 ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp | 75 ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp | 1991 --- ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp | 430 ports/hotspot/src/share/vm/shark/sharkType.hpp | 112 ports/hotspot/src/share/vm/shark/sharkValue.cpp | 260 ports/hotspot/src/share/vm/shark/sharkValue.hpp | 332 ports/hotspot/src/share/vm/shark/shark_globals.cpp | 29 ports/hotspot/src/share/vm/shark/shark_globals.hpp | 54 ports/hotspot/tools/mkbc.c | 607 - shark/hotspot/make/linux/makefiles/shark.make | 32 shark/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp | 62 shark/hotspot/src/share/vm/includeDB_shark | 369 shark/hotspot/src/share/vm/shark/llvmHeaders.hpp | 82 shark/hotspot/src/share/vm/shark/llvmValue.hpp | 62 shark/hotspot/src/share/vm/shark/sharkBlock.cpp | 1260 ++ shark/hotspot/src/share/vm/shark/sharkBlock.hpp | 281 shark/hotspot/src/share/vm/shark/sharkBuilder.cpp | 591 + shark/hotspot/src/share/vm/shark/sharkBuilder.hpp | 209 shark/hotspot/src/share/vm/shark/sharkCacheDecache.cpp | 259 shark/hotspot/src/share/vm/shark/sharkCacheDecache.hpp | 417 shark/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp | 87 shark/hotspot/src/share/vm/shark/sharkCompiler.cpp | 340 shark/hotspot/src/share/vm/shark/sharkCompiler.hpp | 119 shark/hotspot/src/share/vm/shark/sharkConstant.cpp | 128 shark/hotspot/src/share/vm/shark/sharkConstant.hpp | 64 shark/hotspot/src/share/vm/shark/sharkContext.cpp | 180 shark/hotspot/src/share/vm/shark/sharkContext.hpp | 187 shark/hotspot/src/share/vm/shark/sharkEntry.hpp | 58 shark/hotspot/src/share/vm/shark/sharkFunction.cpp | 188 shark/hotspot/src/share/vm/shark/sharkFunction.hpp | 111 shark/hotspot/src/share/vm/shark/sharkInliner.cpp | 749 + shark/hotspot/src/share/vm/shark/sharkInliner.hpp | 32 shark/hotspot/src/share/vm/shark/sharkIntrinsics.cpp | 277 shark/hotspot/src/share/vm/shark/sharkIntrinsics.hpp | 54 shark/hotspot/src/share/vm/shark/sharkInvariants.cpp | 37 shark/hotspot/src/share/vm/shark/sharkInvariants.hpp | 167 shark/hotspot/src/share/vm/shark/sharkMemoryManager.cpp | 116 shark/hotspot/src/share/vm/shark/sharkMemoryManager.hpp | 88 shark/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp | 352 shark/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp | 182 shark/hotspot/src/share/vm/shark/sharkRuntime.cpp | 251 shark/hotspot/src/share/vm/shark/sharkRuntime.hpp | 83 shark/hotspot/src/share/vm/shark/sharkStack.cpp | 263 shark/hotspot/src/share/vm/shark/sharkStack.hpp | 290 shark/hotspot/src/share/vm/shark/sharkState.cpp | 389 shark/hotspot/src/share/vm/shark/sharkState.hpp | 188 shark/hotspot/src/share/vm/shark/sharkStateScanner.cpp | 99 shark/hotspot/src/share/vm/shark/sharkStateScanner.hpp | 75 shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp | 1991 +++ shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp | 430 shark/hotspot/src/share/vm/shark/sharkType.hpp | 112 shark/hotspot/src/share/vm/shark/sharkValue.cpp | 260 shark/hotspot/src/share/vm/shark/sharkValue.hpp | 332 shark/hotspot/src/share/vm/shark/shark_globals.cpp | 29 shark/hotspot/src/share/vm/shark/shark_globals.hpp | 54 diffs (truncated from 69917 to 500 lines): diff -r e4c712442cf1 -r 61d5e01c802e ChangeLog --- a/ChangeLog Tue Sep 21 17:37:58 2010 +0200 +++ b/ChangeLog Wed Sep 22 16:27:14 2010 +0100 @@ -1,3 +1,113 @@ 2010-09-21 Pavel Tisnovsky + + * ports/hotspot/make/linux/makefiles/shark.make, + * ports/hotspot/src/cpu/zero/vm/asm_helper.cpp, + * ports/hotspot/src/cpu/zero/vm/bytecodes_arm.def, + * ports/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S, + * ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp, + * ports/hotspot/src/cpu/zero/vm/thumb2.cpp, + * ports/hotspot/src/share/vm/includeDB_shark, + * ports/hotspot/src/share/vm/shark/llvmHeaders.hpp, + * ports/hotspot/src/share/vm/shark/llvmValue.hpp, + * ports/hotspot/src/share/vm/shark/sharkBlock.cpp, + * ports/hotspot/src/share/vm/shark/sharkBlock.hpp, + * ports/hotspot/src/share/vm/shark/sharkBuilder.cpp, + * ports/hotspot/src/share/vm/shark/sharkBuilder.hpp, + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, + * ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp, + * ports/hotspot/src/share/vm/shark/sharkCompiler.cpp, + * ports/hotspot/src/share/vm/shark/sharkCompiler.hpp, + * ports/hotspot/src/share/vm/shark/sharkConstant.cpp, + * ports/hotspot/src/share/vm/shark/sharkConstant.hpp, + * ports/hotspot/src/share/vm/shark/sharkContext.cpp, + * ports/hotspot/src/share/vm/shark/sharkContext.hpp, + * ports/hotspot/src/share/vm/shark/sharkEntry.hpp, + * ports/hotspot/src/share/vm/shark/sharkFunction.cpp, + * ports/hotspot/src/share/vm/shark/sharkFunction.hpp, + * ports/hotspot/src/share/vm/shark/sharkInliner.cpp, + * ports/hotspot/src/share/vm/shark/sharkInliner.hpp, + * ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp, + * ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp, + * ports/hotspot/src/share/vm/shark/sharkInvariants.cpp, + * ports/hotspot/src/share/vm/shark/sharkInvariants.hpp, + * ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp, + * ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp, + * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp, + * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp, + * ports/hotspot/src/share/vm/shark/sharkRuntime.cpp, + * ports/hotspot/src/share/vm/shark/sharkRuntime.hpp, + * ports/hotspot/src/share/vm/shark/sharkStack.cpp, + * ports/hotspot/src/share/vm/shark/sharkStack.hpp, + * ports/hotspot/src/share/vm/shark/sharkState.cpp, + * ports/hotspot/src/share/vm/shark/sharkState.hpp, + * ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp, + * ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp, + * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp, + * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp, + * ports/hotspot/src/share/vm/shark/sharkType.hpp, + * ports/hotspot/src/share/vm/shark/sharkValue.cpp, + * ports/hotspot/src/share/vm/shark/sharkValue.hpp, + * ports/hotspot/src/share/vm/shark/shark_globals.cpp, + * ports/hotspot/src/share/vm/shark/shark_globals.hpp, + * ports/hotspot/tools/mkbc.c: + Split into arm_port and shark directories. + * Makefile.am: Only copy Shark when hs17 is built. + hs19 includes Shark and the in-tree Shark fails to build with it. + * arm_port/hotspot/src/cpu/zero/vm/asm_helper.cpp, + * arm_port/hotspot/src/cpu/zero/vm/bytecodes_arm.def, + * arm_port/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S, + * arm_port/hotspot/src/cpu/zero/vm/thumb2.cpp, + * arm_port/hotspot/tools/mkbc.c: + New location of arm assembler files. + * shark/hotspot/make/linux/makefiles/shark.make, + * shark/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp, + * shark/hotspot/src/share/vm/includeDB_shark, + * shark/hotspot/src/share/vm/shark/llvmHeaders.hpp, + * shark/hotspot/src/share/vm/shark/llvmValue.hpp, + * shark/hotspot/src/share/vm/shark/sharkBlock.cpp, + * shark/hotspot/src/share/vm/shark/sharkBlock.hpp, + * shark/hotspot/src/share/vm/shark/sharkBuilder.cpp, + * shark/hotspot/src/share/vm/shark/sharkBuilder.hpp, + * shark/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, + * shark/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, + * shark/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp, + * shark/hotspot/src/share/vm/shark/sharkCompiler.cpp, + * shark/hotspot/src/share/vm/shark/sharkCompiler.hpp, + * shark/hotspot/src/share/vm/shark/sharkConstant.cpp, + * shark/hotspot/src/share/vm/shark/sharkConstant.hpp, + * shark/hotspot/src/share/vm/shark/sharkContext.cpp, + * shark/hotspot/src/share/vm/shark/sharkContext.hpp, + * shark/hotspot/src/share/vm/shark/sharkEntry.hpp, + * shark/hotspot/src/share/vm/shark/sharkFunction.cpp, + * shark/hotspot/src/share/vm/shark/sharkFunction.hpp, + * shark/hotspot/src/share/vm/shark/sharkInliner.cpp, + * shark/hotspot/src/share/vm/shark/sharkInliner.hpp, + * shark/hotspot/src/share/vm/shark/sharkIntrinsics.cpp, + * shark/hotspot/src/share/vm/shark/sharkIntrinsics.hpp, + * shark/hotspot/src/share/vm/shark/sharkInvariants.cpp, + * shark/hotspot/src/share/vm/shark/sharkInvariants.hpp, + * shark/hotspot/src/share/vm/shark/sharkMemoryManager.cpp, + * shark/hotspot/src/share/vm/shark/sharkMemoryManager.hpp, + * shark/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp, + * shark/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp, + * shark/hotspot/src/share/vm/shark/sharkRuntime.cpp, + * shark/hotspot/src/share/vm/shark/sharkRuntime.hpp, + * shark/hotspot/src/share/vm/shark/sharkStack.cpp, + * shark/hotspot/src/share/vm/shark/sharkStack.hpp, + * shark/hotspot/src/share/vm/shark/sharkState.cpp, + * shark/hotspot/src/share/vm/shark/sharkState.hpp, + * shark/hotspot/src/share/vm/shark/sharkStateScanner.cpp, + * shark/hotspot/src/share/vm/shark/sharkStateScanner.hpp, + * shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp, + * shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp, + * shark/hotspot/src/share/vm/shark/sharkType.hpp, + * shark/hotspot/src/share/vm/shark/sharkValue.cpp, + * shark/hotspot/src/share/vm/shark/sharkValue.hpp, + * shark/hotspot/src/share/vm/shark/shark_globals.cpp, + * shark/hotspot/src/share/vm/shark/shark_globals.hpp: + New location of Shark. + 2010-09-21 Pavel Tisnovsky * Makefile.am: diff -r e4c712442cf1 -r 61d5e01c802e Makefile.am --- a/Makefile.am Tue Sep 21 17:37:58 2010 +0200 +++ b/Makefile.am Wed Sep 22 16:27:14 2010 +0100 @@ -524,7 +524,7 @@ ICEDTEA_ENV_ECJ = $(ICEDTEA_ENV) \ EXTRA_DIST = generated $(NETX_SRCDIR) \ $(abs_top_srcdir)/patches/* \ - contrib ports \ + contrib shark arm_port \ extra overlays \ javaws.png javaws.desktop \ jconsole.desktop policytool.desktop \ @@ -881,11 +881,11 @@ clean-replace-hotspot: # Copy ports sources into tree stamps/ports.stamp: stamps/replace-hotspot.stamp - for target in $(abs_top_srcdir)/ports/hotspot/make/*/makefiles/* \ - $(abs_top_srcdir)/ports/hotspot/tools \ - $(abs_top_srcdir)/ports/hotspot/src/*cpu/* \ - $(abs_top_srcdir)/ports/hotspot/src/share/vm/*; do \ - link=$$(dirname $$target | sed 's/^.*ports/openjdk/'); \ +if !WITH_ALT_HSBUILD + for target in $(abs_top_srcdir)/shark/hotspot/make/*/makefiles/* \ + $(abs_top_srcdir)/shark/hotspot/src/*cpu/* \ + $(abs_top_srcdir)/shark/hotspot/src/share/vm/*; do \ + link=$$(dirname $$target | sed 's/^.*shark/openjdk/'); \ cp -rv $$target $$link; \ done if ! test "x$(WITH_CACAO)" = "xno" ; then \ @@ -897,19 +897,31 @@ stamps/ports.stamp: stamps/replace-hotsp ln -sf $(abs_top_builddir)/ergo.c \ openjdk/jdk/src/solaris/bin/ergo_$(BUILD_ARCH_DIR).c; \ fi +endif + for target in $(abs_top_srcdir)/arm_port/hotspot/tools \ + $(abs_top_srcdir)/arm_port/hotspot/src/*cpu/* ; do \ + link=$$(dirname $$target | sed 's/^.*arm_port/openjdk/'); \ + cp -rv $$target $$link; \ + done mkdir -p stamps touch stamps/ports.stamp clean-ports: - for target in $(abs_top_srcdir)/ports/hotspot/make/*/makefiles/* \ - $(abs_top_srcdir)/ports/hotspot/tools \ - $(abs_top_srcdir)/ports/hotspot/src/*cpu/* \ - $(abs_top_srcdir)/ports/hotspot/src/share/vm/*; do \ - link=$$(echo $$target | sed 's/^.*ports/openjdk/'); \ +if !WITH_ALT_HSBUILD + for target in $(abs_top_srcdir)/shark/hotspot/make/*/makefiles/* \ + $(abs_top_srcdir)/shark/hotspot/src/*cpu/* \ + $(abs_top_srcdir)/shark/hotspot/src/share/vm/*; do \ + link=$$(dirname $$target | sed 's/^.*shark/openjdk/'); \ rm -rf $$link; \ done rm -f openjdk/jdk/src/solaris/bin/$(BUILD_ARCH_DIR)/jvm.cfg rm -f openjdk/jdk/src/solaris/bin/ergo_$(BUILD_ARCH_DIR).c +endif + for target in $(abs_top_srcdir)/arm_port/hotspot/tools \ + $(abs_top_srcdir)/arm_port/hotspot/src/*cpu/* ; do \ + link=$$(dirname $$target | sed 's/^.*arm_port/openjdk/'); \ + rm -rf $$link; \ + done rm -f stamps/ports.stamp stamps/generated.stamp: stamps/ports.stamp diff -r e4c712442cf1 -r 61d5e01c802e arm_port/hotspot/src/cpu/zero/vm/asm_helper.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/arm_port/hotspot/src/cpu/zero/vm/asm_helper.cpp Wed Sep 22 16:27:14 2010 +0100 @@ -0,0 +1,583 @@ +/* + * Copyright 2009, 2010 Edward Nevill + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#define ARCH_THUMBEE (1<<16) +#define ARCH_VFP (1<<17) +#define ARCH_CLZ (1<<18) + +#ifndef STATIC_OFFSETS + +#include "incls/_bytecodeInterpreter.cpp.incl" + +#include +#include + +#define VECBUFF_SIZE 64 + +extern "C" unsigned hwcap(void) +{ + int fd; + unsigned vecs[VECBUFF_SIZE]; + unsigned *p; + int i, n; + unsigned rc = 0; + unsigned arch = 4; + + fd = open("/proc/self/auxv", O_RDONLY); + if (fd < 0) return 0; + do { + n = read(fd, vecs, VECBUFF_SIZE * sizeof(unsigned)); + p = vecs; + i = n/8; + while (--i >= 0) { + unsigned tag = *p++; + unsigned value = *p++; + if (tag == 0) goto fini; + if (tag == AT_HWCAP) { + if (value & HWCAP_THUMBEE) rc |= ARCH_THUMBEE; + if (value & HWCAP_VFP) rc |= ARCH_VFP; + } else if (tag == AT_PLATFORM) { + const char *s = (const char *)value; + int c; + + if (*s++ == 'v') { + arch = 0; + while ((isdigit)(c = *s++)) arch = arch * 10 + c - '0'; + } + } + } + } while (n == VECBUFF_SIZE * sizeof(unsigned)); +fini: + close(fd); +// printf("arch = %d, rc = 0x%08x\n", arch, rc); + if (arch >= 5) rc |= ARCH_CLZ; + if (arch >= 7) rc |= ARCH_THUMBEE; + return rc | (1<is_lock_owned(r1); +} + +extern "C" HeapWord **CollectedHeap_top_addr(CollectedHeap *r0) +{ + return r0->top_addr(); +} + +extern "C" HeapWord **CollectedHeap_end_addr(CollectedHeap *r0) +{ + return r0->end_addr(); +} + +extern "C" char *SharedRuntime_generate_class_cast_message(const char *name, const char *klass) +{ + return SharedRuntime::generate_class_cast_message(name, klass); +} + +#define HELPER_THROW(thread, name, msg) Exceptions::_throw_msg(thread, __FILE__, __LINE__, name, msg) + +class VMStructs { +public: + static inline klassOop klass_at_addr(constantPoolOop constants, u2 index) { + return (klassOop) *constants->obj_at_addr(index); + } +}; + +extern "C" oop Helper_new(interpreterState istate, unsigned index) +{ + JavaThread *thread = istate->thread(); + + constantPoolOop constants = istate->method()->constants(); + oop result = NULL; + if (!constants->tag_at(index).is_unresolved_klass()) { + // Make sure klass is initialized and doesn't have a finalizer + oop entry = VMStructs::klass_at_addr(constants, index); + klassOop k_entry = (klassOop) entry; + instanceKlass* ik = (instanceKlass*) k_entry->klass_part(); + if ( ik->is_initialized() && ik->can_be_fastpath_allocated() ) { + size_t obj_size = ik->size_helper(); + // If the TLAB isn't pre-zeroed then we'll have to do it + bool need_zero = !ZeroTLAB; + if (UseTLAB) { + result = (oop) thread->tlab().allocate(obj_size); + } + if (result == NULL) { + need_zero = true; + // Try allocate in shared eden + retry: + HeapWord* compare_to = *Universe::heap()->top_addr(); + HeapWord* new_top = compare_to + obj_size; + if (new_top <= *Universe::heap()->end_addr()) { + if (Atomic::cmpxchg_ptr(new_top, Universe::heap()->top_addr(), compare_to) != compare_to) { + goto retry; + } + result = (oop) compare_to; + } + } + if (result != NULL) { + // Initialize object (if nonzero size and need) and then the header + if (need_zero ) { + HeapWord* to_zero = (HeapWord*) result + sizeof(oopDesc) / oopSize; + obj_size -= sizeof(oopDesc) / oopSize; + if (obj_size > 0 ) { + memset(to_zero, 0, obj_size * HeapWordSize); + } + } + if (UseBiasedLocking) { + result->set_mark(ik->prototype_header()); + } else { + result->set_mark(markOopDesc::prototype()); + } + result->set_klass_gap(0); + result->set_klass(k_entry); + return result; + } + } + } + // Slow case allocation + InterpreterRuntime::_new(thread, istate->method()->constants(), index); + result = thread->vm_result(); + thread->set_vm_result(NULL); + return result; +} + +extern "C" int Helper_instanceof(interpreterState istate, unsigned index, oop tos) +{ + if (tos == NULL) return 0; + + // Constant pool may have actual klass or unresolved klass. If it is + // unresolved we must resolve it + if (istate->method()->constants()->tag_at(index).is_unresolved_klass()) { + InterpreterRuntime::quicken_io_cc(istate->thread()); + if (istate->thread()->has_pending_exception()) return 0; + } + klassOop klassOf = VMStructs::klass_at_addr(istate->method()->constants(), index); + klassOop objKlassOop = tos->klass(); + // + // Check for compatibilty. This check must not GC!! + // Seems way more expensive now that we must dispatch + // + return objKlassOop == klassOf || objKlassOop->klass_part()->is_subtype_of(klassOf); +} + +extern "C" oop Helper_checkcast(interpreterState istate, unsigned index, oop tos) +{ + if (tos == NULL) return NULL; + + // Constant pool may have actual klass or unresolved klass. If it is + // unresolved we must resolve it + if (istate->method()->constants()->tag_at(index).is_unresolved_klass()) { + oop except_oop; + InterpreterRuntime::quicken_io_cc(istate->thread()); + if (except_oop = istate->thread()->pending_exception()) return except_oop; + } + klassOop klassOf = VMStructs::klass_at_addr(istate->method()->constants(), index); + klassOop objKlassOop = tos->klass(); //ebx + // + // Check for compatibilty. This check must not GC!! + // Seems way more expensive now that we must dispatch + // + if (objKlassOop != klassOf && !objKlassOop->klass_part()->is_subtype_of(klassOf)) { + ResourceMark rm(istate->thread()); + const char* objName = Klass::cast(objKlassOop)->external_name(); + const char* klassName = Klass::cast(klassOf)->external_name(); + char* message = SharedRuntime::generate_class_cast_message(objName, klassName); + ThreadInVMfromJava trans(istate->thread()); + HELPER_THROW(istate->thread(), vmSymbols::java_lang_ClassCastException(), message); + } + return istate->thread()->pending_exception(); +} + +extern "C" oop Helper_aastore(interpreterState istate, oop value, int index, arrayOop arrayref) +{ + if (arrayref == NULL) { + ThreadInVMfromJava trans(istate->thread()); + HELPER_THROW(istate->thread(), vmSymbols::java_lang_NullPointerException(), ""); + } else if ((uint32_t)index >= (uint32_t)arrayref->length()) { + char message[jintAsStringSize]; + sprintf(message, "%d", index); + HELPER_THROW(istate->thread(), vmSymbols::java_lang_ArrayIndexOutOfBoundsException(), message); + } else { + if (value != NULL) { + /* Check assignability of value into arrayref */ + klassOop rhsKlassOop = value->klass(); // EBX (subclass) + klassOop elemKlassOop = ((objArrayKlass*) arrayref->klass()->klass_part())->element_klass(); + // + // Check for compatibilty. This check must not GC!! + // Seems way more expensive now that we must dispatch + // + if (rhsKlassOop != elemKlassOop && !rhsKlassOop->klass_part()->is_subtype_of(elemKlassOop)) { + HELPER_THROW(istate->thread(), vmSymbols::java_lang_ArrayStoreException(), ""); + goto handle_exception; + } + } + oop* elem_loc = (oop*)(((address) arrayref->base(T_OBJECT)) + index * sizeof(oop)); + // *(oop*)(((address) arrayref->base(T_OBJECT)) + index * sizeof(oop)) = value; + *elem_loc = value; + // Mark the card + BarrierSet* bs = Universe::heap()->barrier_set(); + static volatile jbyte* _byte_map_base = (volatile jbyte*)(((CardTableModRefBS*)bs)->byte_map_base); + OrderAccess::release_store(&_byte_map_base[(uintptr_t)elem_loc >> CardTableModRefBS::card_shift], 0); + } +handle_exception: + return istate->thread()->pending_exception(); +} + +extern "C" void Helper_aputfield(oop obj) +{ + BarrierSet* bs = Universe::heap()->barrier_set(); + static volatile jbyte* _byte_map_base = (volatile jbyte*)(((CardTableModRefBS*)bs)->byte_map_base); + OrderAccess::release_store(&_byte_map_base[(uintptr_t)obj >> CardTableModRefBS::card_shift], 0); +} + +extern "C" oop Helper_synchronized_enter(JavaThread *thread, BasicObjectLock *mon) +{ + BasicLock *lock = mon->lock(); + markOop displaced = lock->displaced_header(); + + if (thread->is_lock_owned((address)displaced->clear_lock_bits())) + lock->set_displaced_header(NULL); + else + InterpreterRuntime::monitorenter(thread, mon); + return thread->pending_exception(); +} + +extern "C" oop Helper_synchronized_exit(JavaThread *thread, BasicObjectLock *mon) +{ + { + HandleMark __hm(thread); + if (mon->obj() == NULL) + InterpreterRuntime::throw_illegal_monitor_state_exception(thread); + else + InterpreterRuntime::monitorexit(thread, mon); + } + return thread->pending_exception(); +} + +extern "C" oop Helper_SafePoint(JavaThread *thread) +{ + { + HandleMarkCleaner __hmc(thread); + } + SafepointSynchronize::block(thread); + return thread->pending_exception(); +} + +extern "C" void Helper_RaiseArrayBoundException(JavaThread *thread, int index) +{ + char message[jintAsStringSize]; + sprintf(message, "%d", index); + { + ThreadInVMfromJava trans(thread); + Exceptions::_throw_msg(thread, "[Bytecoce Interpreter]", 99, + vmSymbols::java_lang_ArrayIndexOutOfBoundsException(), message); + } +} + +extern "C" void Helper_Raise(JavaThread *thread, symbolOopDesc *name, char const *msg) +{ + ThreadInVMfromJava trans(thread); + Exceptions::_throw_msg(thread, "[Bytecoce Interpreter]", 99, name, msg); +} + +extern "C" void Helper_RaiseIllegalMonitorException(JavaThread *thread) +{ + HandleMark __hm(thread); + thread->clear_pending_exception(); + InterpreterRuntime::throw_illegal_monitor_state_exception(thread); +} + +extern "C" address Helper_HandleException(interpreterState istate, JavaThread *thread) +{ + HandleMarkCleaner __hmc(thread); + Handle except_oop(thread, thread->pending_exception()); From andrew at icedtea.classpath.org Thu Sep 23 03:51:43 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 23 Sep 2010 10:51:43 +0000 Subject: /hg/icedtea6: 2 new changesets Message-ID: changeset fd61403cdd41 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=fd61403cdd41 author: Andrew John Hughes date: Wed Sep 22 17:56:27 2010 +0100 Move SystemTap support to a separate target. 2010-09-22 Andrew John Hughes Move SystemTap support to a separate target. * Makefile.am: (.PHONY): Add clean-add-systemtap and clean-add-systemtap-debug. (icedtea): Remove systemtap support. (icedtea-debug): Likewise. (icedtea- against-icedtea): Depend on add-systemtap. (icedtea-debug- against-icedtea): Depend on add-systemtap-debug. (add- plugin): Depend on icedtea.stamp. (add-plugin-debug): Depend on icedtea-debug.stamp. (add-netx): Depend on icedtea.stamp. (add-netx-debug): Depend on icedtea-debug.stamp. (add- systemtap): New target to add SystemTap support to the build. (add-systemtap-debug): Likewise for debug. (clean-add- systemtap): Remove SystemTap support from the build. (clean- add-systemtap-debug): Likewise for debug. changeset 36fac414f1b4 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=36fac414f1b4 author: Andrew John Hughes date: Thu Sep 23 11:51:33 2010 +0100 Separate PulseAudio addition into separate targets. 2010-09-23 Andrew John Hughes * Makefile.am: (.PHONY): Add clean-add-pulseaudio and clean-add-pulseaudio-debug. (clean-local): Likewise. (icedtea): Remove pulse-java support and dependency. (icedtea-debug): Likewise. (icedtea- against-icedtea): Depend on add-pulseaudio. (icedtea-debug- against-icedtea): Depend on add-pulseaudio-debug. (add- systemtap-debug): Dependency should be icedtea-debug. (add- pulseaudio): New target to add PulseAudio support to the build. (add-pulseaudio-debug): Likewise for debug. (clean-add- pulseaudio): Remove PulseAudio support from the build. (clean-add-pulseaudio-debug): Likewise for debug. diffstat: 2 files changed, 147 insertions(+), 73 deletions(-) ChangeLog | 36 +++++++++++ Makefile.am | 184 +++++++++++++++++++++++++++++++++++------------------------ diffs (335 lines): diff -r 61d5e01c802e -r 36fac414f1b4 ChangeLog --- a/ChangeLog Wed Sep 22 16:27:14 2010 +0100 +++ b/ChangeLog Thu Sep 23 11:51:33 2010 +0100 @@ -1,3 +1,39 @@ 2010-09-22 Andrew John Hughes + + * Makefile.am: + (.PHONY): Add clean-add-pulseaudio and + clean-add-pulseaudio-debug. + (clean-local): Likewise. + (icedtea): Remove pulse-java support and dependency. + (icedtea-debug): Likewise. + (icedtea-against-icedtea): Depend on add-pulseaudio. + (icedtea-debug-against-icedtea): Depend on add-pulseaudio-debug. + (add-systemtap-debug): Dependency should be icedtea-debug. + (add-pulseaudio): New target to add PulseAudio support to the build. + (add-pulseaudio-debug): Likewise for debug. + (clean-add-pulseaudio): Remove PulseAudio support from the build. + (clean-add-pulseaudio-debug): Likewise for debug. + +2010-09-22 Andrew John Hughes + + Move SystemTap support to a separate target. + * Makefile.am: + (.PHONY): Add clean-add-systemtap and + clean-add-systemtap-debug. + (clean-local): Likewise. + (icedtea): Remove systemtap support. + (icedtea-debug): Likewise. + (icedtea-against-icedtea): Depend on add-systemtap. + (icedtea-debug-against-icedtea): Depend on add-systemtap-debug. + (add-plugin): Depend on icedtea.stamp. + (add-plugin-debug): Depend on icedtea-debug.stamp. + (add-netx): Depend on icedtea.stamp. + (add-netx-debug): Depend on icedtea-debug.stamp. + (add-systemtap): New target to add SystemTap support to the build. + (add-systemtap-debug): Likewise for debug. + (clean-add-systemtap): Remove SystemTap support from the build. + (clean-add-systemtap-debug): Likewise for debug. + 2010-09-22 Andrew John Hughes * ports/hotspot/make/linux/makefiles/shark.make, diff -r 61d5e01c802e -r 36fac414f1b4 Makefile.am --- a/Makefile.am Wed Sep 22 16:27:14 2010 +0100 +++ b/Makefile.am Thu Sep 23 11:51:33 2010 +0100 @@ -555,7 +555,8 @@ clean-local: clean-jtreg clean-jtreg-rep clean-icedtea-against-ecj clean-extract-ecj clean-generated clean-replace-hotspot \ clean-rewriter clean-rewrite-rhino clean-extra clean-rt clean-bootstrap-directory \ clean-bootstrap-directory-ecj clean-bootstrap-directory-symlink \ - clean-bootstrap-directory-symlink-ecj + clean-bootstrap-directory-symlink-ecj clean-add-systemtap clean-add-systemtap-debug \ + clean-add-pulseaudio clean-add-pulseaudio-debug if [ -e bootstrap ]; then \ rmdir bootstrap ; \ fi @@ -588,8 +589,8 @@ install: clean-ports clean-overlay clean-extract-ecj clean-extract clean-extract-openjdk \ clean-replace-hotspot clean-generated clean-download clean-hgforest clean-download-openjdk \ clean-rewriter clean-rewrite-rhino clean-add-netx clean-add-netx-debug \ - clean-add-plugin clean-add-plugin-debug - + clean-add-plugin clean-add-plugin-debug clean-add-systemtap clean-add-systemtap-debug \ + clean-add-pulseaudio clean-add-pulseaudio-debug env: @echo 'unset JAVA_HOME' @echo 'export $(ICEDTEA_ENV)' @@ -1247,7 +1248,7 @@ clean-bootstrap-directory-symlink: # If you change anything here in the icedtea target, please make sure # you change it in the icedtea-debug target as well. stamps/icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ - $(OPENJDK_TREE) stamps/cacao.stamp $(PULSE_JAVA_TARGET) stamps/rewrite-rhino.stamp + $(OPENJDK_TREE) stamps/cacao.stamp stamps/rewrite-rhino.stamp $(ARCH_PREFIX) $(MAKE) \ $(ICEDTEA_ENV) \ -C openjdk \ @@ -1256,18 +1257,6 @@ stamps/icedtea.stamp: stamps/bootstrap-d mkdir -p $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext mkdir -p $(BUILD_OUTPUT_DIR)/j2re-image/lib/ext -if ENABLE_PULSE_JAVA - cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) - cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \ - $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) - cp -pPRf $(PULSE_JAVA_BUILDDIR)/pulse-java.jar \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext - cp -pPRf $(PULSE_JAVA_BUILDDIR)/pulse-java.jar \ - $(BUILD_OUTPUT_DIR)/j2re-image/lib/ext - (cd $(PULSE_JAVA_JAVA_SRCDIR) && \ - $(ZIP) -qur $(BUILD_OUTPUT_DIR)/j2sdk-image/src.zip org ) -endif if ZERO_BUILD printf -- '-zero ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg endif @@ -1276,25 +1265,6 @@ endif endif if WITH_CACAO printf -- '-cacao ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg -endif -if ENABLE_SYSTEMTAP - mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset ; \ - grep "client IGNORE" $(BUILD_JRE_ARCH_DIR)/jvm.cfg; \ - if test $$? -eq 0; then \ - sed -e '/\/client\/libjvm.so/d' \ - < $(abs_top_builddir)/tapset/hotspot.stp \ - > $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \ - sed -e '/\/client\/libjvm.so/d' \ - < $(abs_top_builddir)/tapset/hotspot_jni.stp \ - > $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \ - else \ - cp $(abs_top_builddir)/tapset/hotspot.stp \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \ - cp $(abs_top_builddir)/tapset/hotspot_jni.stp \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \ - fi; \ - cp $(abs_top_builddir)/tapset/jstack.stp \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/jstack.stp endif cp $(abs_top_builddir)/nss.cfg \ $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/security; @@ -1311,7 +1281,7 @@ clean-icedtea: rm -f stamps/icedtea.stamp stamps/icedtea-debug.stamp: stamps/bootstrap-directory-symlink.stamp \ - $(OPENJDK_TREE) stamps/cacao.stamp $(PULSE_JAVA_TARGET) stamps/rewrite-rhino.stamp + $(OPENJDK_TREE) stamps/cacao.stamp stamps/rewrite-rhino.stamp $(ARCH_PREFIX) $(MAKE) \ $(ICEDTEA_ENV) \ -C openjdk \ @@ -1320,18 +1290,6 @@ stamps/icedtea-debug.stamp: stamps/boots mkdir -p $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) mkdir -p $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext mkdir -p $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/ext -if ENABLE_PULSE_JAVA - cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) - cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) - cp -pPRf $(PULSE_JAVA_BUILDDIR)/pulse-java.jar \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext - cp -pPRf $(PULSE_JAVA_BUILDDIR)/pulse-java.jar \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/ext - (cd $(PULSE_JAVA_JAVA_SRCDIR) && \ - $(ZIP) -qur $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/src.zip org ) -endif if ZERO_BUILD printf -- '-zero ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg endif @@ -1340,25 +1298,6 @@ endif endif if WITH_CACAO printf -- '-cacao ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg -endif -if ENABLE_SYSTEMTAP - mkdir -p $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset ; \ - grep "client IGNORE" $(BUILD_JRE_ARCH_DIR)/jvm.cfg; \ - if test $$? -eq 0; then \ - sed -e '/\/client\/libjvm.so/d' \ - < $(abs_top_builddir)/tapset/hotspot.stp \ - > $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \ - sed -e '/\/client\/libjvm.so/d' \ - < $(abs_top_builddir)/tapset/hotspot_jni.stp \ - > $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \ - else \ - cp $(abs_top_builddir)/tapset/hotspot.stp \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \ - cp $(abs_top_builddir)/tapset/hotspot_jni.stp \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \ - fi; \ - cp $(abs_top_builddir)/tapset/jstack.stp \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/jstack.stp endif cp $(abs_top_builddir)/nss.cfg \ $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/security; @@ -1377,7 +1316,7 @@ clean-icedtea-debug: stamps/icedtea-against-icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/icedtea.stamp stamps/add-cacao.stamp stamps/add-zero.stamp stamps/add-plugin.stamp \ - stamps/add-netx.stamp + stamps/add-netx.stamp stamps/add-systemtap.stamp stamps/add-pulseaudio.stamp mkdir -p stamps touch stamps/icedtea-against-icedtea.stamp @@ -1386,7 +1325,8 @@ clean-icedtea-against-icedtea: clean-add stamps/icedtea-debug-against-icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/icedtea-debug.stamp stamps/add-cacao-debug.stamp stamps/add-zero-debug.stamp \ - stamps/add-plugin-debug.stamp stamps/add-netx-debug.stamp + stamps/add-plugin-debug.stamp stamps/add-netx-debug.stamp stamps/add-systemtap-debug.stamp \ + stamps/add-pulseaudio-debug.stamp mkdir -p stamps touch stamps/icedtea-debug-against-icedtea.stamp @@ -1394,7 +1334,7 @@ clean-icedtea-debug-against-icedtea: cle clean-add-netx-debug rm -f stamps/icedtea-debug-against-icedtea.stamp -stamps/add-plugin.stamp: stamps/plugin.stamp +stamps/add-plugin.stamp: stamps/plugin.stamp stamps/icedtea.stamp if ENABLE_PLUGIN cp -pPRf $(PLUGIN_DIR)/IcedTeaPlugin.so \ $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) @@ -1414,7 +1354,7 @@ clean-add-plugin: rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/plugin.jar rm -f stamps/add-plugin.stamp -stamps/add-plugin-debug.stamp: stamps/plugin.stamp +stamps/add-plugin-debug.stamp: stamps/plugin.stamp stamps/icedtea-debug.stamp if ENABLE_PLUGIN cp -pPRf $(PLUGIN_DIR)/IcedTeaPlugin.so \ $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) @@ -1434,7 +1374,7 @@ clean-add-plugin-debug: rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/plugin.jar rm -f stamps/add-plugin-debug.stamp -stamps/add-netx.stamp: stamps/netx-dist.stamp extra-lib/about.jar +stamps/add-netx.stamp: stamps/netx-dist.stamp extra-lib/about.jar stamps/icedtea.stamp cp -pPRf $(abs_top_builddir)/netx.build/lib/classes.jar \ $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/netx.jar cp -pPRf $(abs_top_builddir)/netx.build/lib/classes.jar \ @@ -1460,7 +1400,7 @@ clean-add-netx: rm -f $(BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 rm -f stamps/add-netx.stamp -stamps/add-netx-debug.stamp: stamps/netx-dist.stamp extra-lib/about.jar +stamps/add-netx-debug.stamp: stamps/netx-dist.stamp extra-lib/about.jar stamps/icedtea-debug.stamp cp -pPRf $(abs_top_builddir)/netx.build/lib/classes.jar \ $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/netx.jar cp -pPRf $(abs_top_builddir)/netx.build/lib/classes.jar \ @@ -1485,6 +1425,104 @@ clean-add-netx-debug: rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 rm -f stamps/add-netx-debug.stamp + +stamps/add-systemtap.stamp: stamps/icedtea.stamp +if ENABLE_SYSTEMTAP + mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset + grep "client IGNORE" $(BUILD_JRE_ARCH_DIR)/jvm.cfg; \ + if test $$? -eq 0; then \ + sed -e '/\/client\/libjvm.so/d' \ + < $(abs_top_builddir)/tapset/hotspot.stp \ + > $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \ + sed -e '/\/client\/libjvm.so/d' \ + < $(abs_top_builddir)/tapset/hotspot_jni.stp \ + > $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \ + else \ + cp $(abs_top_builddir)/tapset/hotspot.stp \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \ + cp $(abs_top_builddir)/tapset/hotspot_jni.stp \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \ + fi + cp $(abs_top_builddir)/tapset/jstack.stp \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/jstack.stp +endif + touch stamps/add-systemtap.stamp + +clean-add-systemtap: + rm -rf $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset + rm -f stamps/add-systemtap.stamp + +stamps/add-systemtap-debug.stamp: stamps/icedtea-debug.stamp +if ENABLE_SYSTEMTAP + mkdir -p $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset + grep "client IGNORE" $(BUILD_JRE_ARCH_DIR)/jvm.cfg; \ + if test $$? -eq 0; then \ + sed -e '/\/client\/libjvm.so/d' \ + < $(abs_top_builddir)/tapset/hotspot.stp \ + > $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \ + sed -e '/\/client\/libjvm.so/d' \ + < $(abs_top_builddir)/tapset/hotspot_jni.stp \ + > $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \ + else \ + cp $(abs_top_builddir)/tapset/hotspot.stp \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \ + cp $(abs_top_builddir)/tapset/hotspot_jni.stp \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \ + fi + cp $(abs_top_builddir)/tapset/jstack.stp \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/jstack.stp +endif + touch stamps/add-systemtap-debug.stamp + +clean-add-systemtap-debug: + rm -rf $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/tapset + rm -f stamps/add-systemtap-debug.stamp + +stamps/add-pulseaudio.stamp: stamps/icedtea.stamp $(PULSE_JAVA_TARGET) +if ENABLE_PULSE_JAVA + cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) + cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \ + $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) + cp -pPRf $(PULSE_JAVA_BUILDDIR)/pulse-java.jar \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext + cp -pPRf $(PULSE_JAVA_BUILDDIR)/pulse-java.jar \ + $(BUILD_OUTPUT_DIR)/j2re-image/lib/ext + (cd $(PULSE_JAVA_JAVA_SRCDIR) && \ + $(ZIP) -qur $(BUILD_OUTPUT_DIR)/j2sdk-image/src.zip org ) +endif + touch stamps/add-pulseaudio.stamp + +# Note: for simplicity, we don't revert the update of src.zip +clean-add-pulseaudio: + rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so + rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so + rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext/pulse-java.jar + rm -f $(BUILD_OUTPUT_DIR)/j2re-image/lib/ext/pulse-java.jar + rm -f stamps/add-pulseaudio.stamp + +stamps/add-pulseaudio-debug.stamp: stamps/icedtea-debug.stamp $(PULSE_JAVA_TARGET) +if ENABLE_PULSE_JAVA + cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) + cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) + cp -pPRf $(PULSE_JAVA_BUILDDIR)/pulse-java.jar \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext + cp -pPRf $(PULSE_JAVA_BUILDDIR)/pulse-java.jar \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/ext + (cd $(PULSE_JAVA_JAVA_SRCDIR) && \ + $(ZIP) -qur $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/src.zip org ) +endif + touch stamps/add-pulseaudio-debug.stamp + +# Note: for simplicity, we don't revert the update of src.zip +clean-add-pulseaudio-debug: + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext/pulse-java.jar + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/ext/pulse-java.jar + rm -f stamps/add-pulseaudio-debug.stamp # OpenJDK ecj Targets # =================== From bugzilla-daemon at icedtea.classpath.org Thu Sep 23 05:28:53 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Thu, 23 Sep 2010 12:28:53 +0000 Subject: [Bug 559] shark + hs19 crashes in building docs Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=559 ------- Comment #2 from xerxes at zafena.se 2010-09-23 12:28 ------- Created an attachment (id=423) --> (http://icedtea.classpath.org/bugzilla/attachment.cgi?id=423&action=view) ia32 hs19 llvm 2.9svn hs_err_pid*.log I have reproduces this bug on ia32 hs19 and llvm 2.9svn and on my machine the crash hit inside the same shark frame containing the jited method: com.sun.tools.doclets.internal.toolkit.util.Util.isDeprecated(Lcom/sun/javadoc/ProgramElementDoc;)Z How to reproduce: hg clone http://icedtea.classpath.org/hg/icedtea6 cd icedtea6 ./autogen.sh mkdir ../icedtea6-shark-hs19-full cd ../icedtea6-shark-hs19-full ../icedtea6/configure --enable-shark --with-hotspot-build=hs19 time make -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From andrew at icedtea.classpath.org Thu Sep 23 06:41:12 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 23 Sep 2010 13:41:12 +0000 Subject: /hg/icedtea6: Separate addition of NSS and timezone data support... Message-ID: changeset 65ab89d428ac in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=65ab89d428ac author: Andrew John Hughes date: Thu Sep 23 14:40:49 2010 +0100 Separate addition of NSS and timezone data support into separate targets. 2010-09-23 Andrew John Hughes * Makefile.am: (.PHONY): Add clean-add-nss, clean- add-nss-debug, clean-add-tzdata-support and clean-add- tzdata-support-debug. (clean-local): Likewise. (icedtea): Remove NSS and tzdata support. (icedtea-debug): Likewise. (icedtea-against-icedtea): Depend on add-nss and add-tzdata-support. (icedtea-debug-against-icedtea): Depend on add-nss-debug and add-tzdata-support-debug. (add-nss): New target to add NSS support to the build. (add-nss-debug): Likewise for debug. (clean-add-nss): Remove NSS support from the build. (clean-add-nss-debug): Likewise for debug. (add-tzdata-support): New target to add alternate timezone data support to the build. (add-tzdata-support-debug): Likewise for debug. (clean-add-tzdata-support): Remove alternate timezone data support from the build. (clean-add-tzdata- support-debug): Likewise for debug. diffstat: 2 files changed, 67 insertions(+), 16 deletions(-) ChangeLog | 19 +++++++++++++++++ Makefile.am | 64 ++++++++++++++++++++++++++++++++++++++++++++--------------- diffs (142 lines): diff -r 36fac414f1b4 -r 65ab89d428ac ChangeLog --- a/ChangeLog Thu Sep 23 11:51:33 2010 +0100 +++ b/ChangeLog Thu Sep 23 14:40:49 2010 +0100 @@ -1,3 +1,22 @@ 2010-09-23 Andrew John Hughes + + * Makefile.am: + (.PHONY): Add clean-add-nss, clean-add-nss-debug, + clean-add-tzdata-support and clean-add-tzdata-support-debug. + (clean-local): Likewise. + (icedtea): Remove NSS and tzdata support. + (icedtea-debug): Likewise. + (icedtea-against-icedtea): Depend on add-nss and add-tzdata-support. + (icedtea-debug-against-icedtea): Depend on add-nss-debug and add-tzdata-support-debug. + (add-nss): New target to add NSS support to the build. + (add-nss-debug): Likewise for debug. + (clean-add-nss): Remove NSS support from the build. + (clean-add-nss-debug): Likewise for debug. + (add-tzdata-support): New target to add alternate timezone data support to the build. + (add-tzdata-support-debug): Likewise for debug. + (clean-add-tzdata-support): Remove alternate timezone data support from the build. + (clean-add-tzdata-support-debug): Likewise for debug. + 2010-09-23 Andrew John Hughes * Makefile.am: diff -r 36fac414f1b4 -r 65ab89d428ac Makefile.am --- a/Makefile.am Thu Sep 23 11:51:33 2010 +0100 +++ b/Makefile.am Thu Sep 23 14:40:49 2010 +0100 @@ -556,7 +556,8 @@ clean-local: clean-jtreg clean-jtreg-rep clean-rewriter clean-rewrite-rhino clean-extra clean-rt clean-bootstrap-directory \ clean-bootstrap-directory-ecj clean-bootstrap-directory-symlink \ clean-bootstrap-directory-symlink-ecj clean-add-systemtap clean-add-systemtap-debug \ - clean-add-pulseaudio clean-add-pulseaudio-debug + clean-add-pulseaudio clean-add-pulseaudio-debug clean-add-nss clean-add-nss-debug \ + clean-add-tzdata-support clean-add-tzdata-support-debug if [ -e bootstrap ]; then \ rmdir bootstrap ; \ fi @@ -590,7 +591,9 @@ install: clean-replace-hotspot clean-generated clean-download clean-hgforest clean-download-openjdk \ clean-rewriter clean-rewrite-rhino clean-add-netx clean-add-netx-debug \ clean-add-plugin clean-add-plugin-debug clean-add-systemtap clean-add-systemtap-debug \ - clean-add-pulseaudio clean-add-pulseaudio-debug + clean-add-pulseaudio clean-add-pulseaudio-debug clean-add-nss clean-add-nss-debug \ + clean-add-tzdata-support clean-add-tzdata-support-debug + env: @echo 'unset JAVA_HOME' @echo 'export $(ICEDTEA_ENV)' @@ -1266,12 +1269,6 @@ if WITH_CACAO if WITH_CACAO printf -- '-cacao ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg endif - cp $(abs_top_builddir)/nss.cfg \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/security; -if WITH_TZDATA_DIR - cp $(abs_top_builddir)/tz.properties \ - $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib; -endif @echo "IcedTea is served:" $(BUILD_OUTPUT_DIR) mkdir -p stamps touch stamps/icedtea.stamp @@ -1299,12 +1296,6 @@ if WITH_CACAO if WITH_CACAO printf -- '-cacao ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg endif - cp $(abs_top_builddir)/nss.cfg \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/security; -if WITH_TZDATA_DIR - cp $(abs_top_builddir)/tz.properties \ - $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib; -endif @echo "IcedTea (debug build) is served:" \ $(DEBUG_BUILD_OUTPUT_DIR) mkdir -p stamps @@ -1316,7 +1307,8 @@ clean-icedtea-debug: stamps/icedtea-against-icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/icedtea.stamp stamps/add-cacao.stamp stamps/add-zero.stamp stamps/add-plugin.stamp \ - stamps/add-netx.stamp stamps/add-systemtap.stamp stamps/add-pulseaudio.stamp + stamps/add-netx.stamp stamps/add-systemtap.stamp stamps/add-pulseaudio.stamp stamps/add-nss.stamp \ + stamps/add-tzdata-support.stamp mkdir -p stamps touch stamps/icedtea-against-icedtea.stamp @@ -1326,7 +1318,7 @@ stamps/icedtea-debug-against-icedtea.sta stamps/icedtea-debug-against-icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ stamps/icedtea-debug.stamp stamps/add-cacao-debug.stamp stamps/add-zero-debug.stamp \ stamps/add-plugin-debug.stamp stamps/add-netx-debug.stamp stamps/add-systemtap-debug.stamp \ - stamps/add-pulseaudio-debug.stamp + stamps/add-pulseaudio-debug.stamp stamps/add-nss-debug.stamp stamps/add/tzdata-support-debug.stamp mkdir -p stamps touch stamps/icedtea-debug-against-icedtea.stamp @@ -1523,6 +1515,46 @@ clean-add-pulseaudio-debug: rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext/pulse-java.jar rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2re-image/lib/ext/pulse-java.jar rm -f stamps/add-pulseaudio-debug.stamp + +stamps/add-nss.stamp: stamps/icedtea.stamp + cp $(abs_top_builddir)/nss.cfg \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/security + touch stamps/add-nss.stamp + +clean-add-nss: + rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/security/nss.cfg + rm -f stamps/add-nss.stamp + +stamps/add-nss-debug.stamp: stamps/icedtea-debug.stamp + cp $(abs_top_builddir)/nss.cfg \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/security; + touch stamps/add-nss-debug.stamp + +clean-add-nss-debug: + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/security/nss.cfg + rm -f stamps/add-nss-debug.stamp + +stamps/add-tzdata-support.stamp: stamps/icedtea.stamp +if WITH_TZDATA_DIR + cp $(abs_top_builddir)/tz.properties \ + $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib +endif + touch stamps/add-tzdata-support.stamp + +clean-add-tzdata-support: + rm -f $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/tz.properties + rm -f stamps/add-tzdata-support.stamp + +stamps/add-tzdata-support-debug.stamp: stamps/icedtea.stamp +if WITH_TZDATA_DIR + cp $(abs_top_builddir)/tz.properties \ + $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib; +endif + touch stamps/add-tzdata-support-debug.stamp + +clean-add-tzdata-support-debug: + rm -f $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/tz.properties + rm -f stamps/add-tzdata-support-debug.stamp # OpenJDK ecj Targets # =================== From andrew at icedtea.classpath.org Thu Sep 23 16:13:07 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 23 Sep 2010 23:13:07 +0000 Subject: /hg/icedtea6-hg: 23 new changesets Message-ID: changeset b17d4c7ff7a1 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=b17d4c7ff7a1 author: Andrew John Hughes date: Tue Sep 07 12:38:02 2010 +0100 S6510892, S6969395: Fix networking tests. 2010-09-07 Andrew John Hughes S6510892, S6969395: * Makefile.am: Add new patches. * NEWS: Updated. * patches/openjdk/6510892-httpserver_test.patch, * patches/openjdk/6969395-net_bugs.patch: Fix networking tests. changeset e8452eabe369 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=e8452eabe369 author: Andrew John Hughes date: Wed Sep 08 13:16:22 2010 +0100 Synchronise NEWS with 1.9 branch. 2010-09-08 Andrew John Hughes * NEWS: Sync with 1.9 branch. changeset bdd2de6605a8 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=bdd2de6605a8 author: doko at ubuntu.com date: Fri Sep 10 14:17:28 2010 +0200 Fix build failure on s390. 2010-09-10 Matthias Klose * patches/params-cast-size_t.patch: Update, fix build failure on s390. changeset 1c5acca8abfd in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=1c5acca8abfd author: omajid date: Mon Sep 13 10:21:58 2010 -0400 netx: add a new man page for javaws 2010-09-13 Omair Majid Add a new man page for netx's javaws. * NEWS: Updated to indicate the new man page for javaws. * Makefile.am (stamps/add-netx.stamp): Copy over the javaws man page into the build. (clean-add-netx): Remove the javaws man pages on clean. (stamps/add-netx-debug.stamp): Copy over the javaws man page. (clean-add-netx-debug): Remove the javaws man page. (add-netx): New target. Alias for stamps/add-netx.stamp. (add-netx-debug): New target. Alias for stamps/add-netx-debug.stamp. * netx/javaws.1: New man page for netx's javaws. changeset c764b38139a5 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=c764b38139a5 author: Deepak Bhole date: Thu Sep 16 13:03:57 2010 -0400 PR556: Re-implement applet initialization to be serialialized, to fix current and future possible race conditions. changeset a1ccc755c8f7 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=a1ccc755c8f7 author: Deepak Bhole date: Thu Sep 16 14:53:19 2010 -0400 Output applet initialization info only in debug mode. changeset 63024b10e2ef in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=63024b10e2ef author: Andrew John Hughes date: Thu Sep 16 23:36:39 2010 +0100 S6638712: Inference with wildcard types causes selection of inapplicable method S6650759: Inference of formal type parameter (unused in formal parameters) is not performed 2010-09-09 Andrew John Hughes * Makefile.am: Add new patches. * NEWS: Document new patches. Fix key. * patches/openjdk/6638712-wildcard_types.patch, * patches/openjdk/6650759-missing_inference.patch: Fix failure in javac compilation. changeset 06703b4d41b4 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=06703b4d41b4 author: Andrew John Hughes date: Fri Sep 17 15:01:17 2010 +0100 Fix test output for 6638712. 2010-09-17 Andrew John Hughes * patches/openjdk/6638712-wildcard_types.patch: Fix copyrights (from 6875336) and test output. * patches/openjdk/6650759-missing_inference.patch, Remove test output changes already incorporated in 6875336. changeset 2713dbdb914e in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=2713dbdb914e author: omajid date: Fri Sep 17 10:07:45 2010 -0400 only generate javaws.1 if we want to build docs and the man directory exists 2010-09-17 Omair Majid * Makefile.am: Only create man pages for javaws if ENABLE_DOCS is set and the man directory exists. changeset ddbf2447886c in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=ddbf2447886c author: Andrew John Hughes date: Fri Sep 17 17:36:07 2010 +0100 Support systems where the sched_getcpu libc call is not present but the syscall is. 2010-09-17 Andrew John Hughes * Makefile.am: Add new patch. * patches/numa_on_early_glibc.patch, Fallback to making a syscall if sched_getcpu exists but the glibc used is too old to support it. changeset f9af7b6a08eb in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=f9af7b6a08eb author: Deepak Bhole date: Fri Sep 17 17:01:12 2010 -0400 Fixed PR557 - Applet opens in a separate window if tab is closed when the applet loads changeset ed033548219c in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=ed033548219c author: Andrew John Hughes date: Sun Sep 19 23:00:46 2010 +0100 Support HotSpot 19. 2010-09-19 Andrew John Hughes Support HotSpot 19. * patches/icedtea-alpha-fixes.patch, * patches/icedtea-gcc-suffix-hotspot.patch, * patches/icedtea-print-lsb-release.patch, * patches/params-cast-size_t.patch, * patches/update-bootclasspath.patch: Split into original and hs19 versions. * Makefile.am: Apply some patches only when hs17 is built. Apply different variants of above patches depending on HotSpot build used. * hotspot.map: Add hs19. * patches/hotspot/hs19/alpha-fixes.patch, * patches/hotspot/hs19/gcc-suffix.patch, * patches/hotspot/hs19/params-cast-size_t.patch, * patches/hotspot/hs19/print_lsb_release.patch, * patches/hotspot/hs19/update-bootclasspath.patch: HotSpot 19 variants of patches moved above. * patches/hotspot/original/alpha-fixes.patch, * patches/hotspot/original/gcc-suffix.patch, * patches/hotspot/original/params-cast-size_t.patch, * patches/hotspot/original/print_lsb_release.patch, * patches/hotspot/original/update-bootclasspath.patch: HotSpot 17 patches moved from patches above. changeset 0c7a9312151e in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=0c7a9312151e author: Andrew John Hughes date: Sun Sep 19 23:04:46 2010 +0100 Revert 2713dbdb914e changes to javaws.1 installation. 2010-09-19 Andrew John Hughes * Makefile.am: Revert 2713dbdb914e changes to javaws.1 installation. changeset e470c7b5f2dc in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=e470c7b5f2dc author: Andrew John Hughes date: Mon Sep 20 00:18:57 2010 +0100 Fix hotspot target to only rebuild OpenJDK. 2010-09-19 Andrew John Hughes * Makefile.am: (hotspot): Only remake the main icedtea and icedtea-ecj targets (i.e. the OpenJDK build) and not the additional targets from icedtea-against- icedtea and icedtea-against-ecj. changeset 2fa7aed828ed in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=2fa7aed828ed author: Andrew John Hughes date: Mon Sep 20 20:48:54 2010 +0100 Apply icedtea-shark-build.patch for both HotSpots (top-level patch). 2010-09-20 Andrew John Hughes * Makefile.am: Enable icedtea-shark-build.patch on all builds as it applies to the top-level makefiles and not HotSpot. changeset fd77bd063119 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=fd77bd063119 author: ptisnovs date: Tue Sep 21 11:11:45 2010 +0200 Correction of testcase sun/java2d/DirectX/OnScreenringResizeTest/OnS creenRenderingResizeTest.java. changeset e4c712442cf1 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=e4c712442cf1 author: ptisnovs date: Tue Sep 21 17:37:58 2010 +0200 Correction of testcase test/javax/swing/plaf/synth/Test6933784.java changeset 61d5e01c802e in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=61d5e01c802e author: Andrew John Hughes date: Wed Sep 22 16:27:14 2010 +0100 Split arm assembler and Shark into different directories so that Shark is not copied for hs19 builds (hs19 includes Shark). 2010-09-22 Andrew John Hughes * ports/hotspot/make/linux/makefiles/shark.make, * ports/hotspot/src/cpu/zero/vm/asm_helper.cpp, * ports/hotspot/src/cpu/zero/vm/bytecodes_arm.def, * ports/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S, * ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp, * ports/hotspot/src/cpu/zero/vm/thumb2.cpp, * ports/hotspot/src/share/vm/includeDB_shark, * ports/hotspot/src/share/vm/shark/llvmHeaders.hpp, * ports/hotspot/src/share/vm/shark/llvmValue.hpp, * ports/hotspot/src/share/vm/shark/sharkBlock.cpp, * ports/hotspot/src/share/vm/shark/sharkBlock.hpp, * ports/hotspot/src/share/vm/shark/sharkBuilder.cpp, * ports/hotspot/src/share/vm/shark/sharkBuilder.hpp, * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, * ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp, * ports/hotspot/src/share/vm/shark/sharkCompiler.cpp, * ports/hotspot/src/share/vm/shark/sharkCompiler.hpp, * ports/hotspot/src/share/vm/shark/sharkConstant.cpp, * ports/hotspot/src/share/vm/shark/sharkConstant.hpp, * ports/hotspot/src/share/vm/shark/sharkContext.cpp, * ports/hotspot/src/share/vm/shark/sharkContext.hpp, * ports/hotspot/src/share/vm/shark/sharkEntry.hpp, * ports/hotspot/src/share/vm/shark/sharkFunction.cpp, * ports/hotspot/src/share/vm/shark/sharkFunction.hpp, * ports/hotspot/src/share/vm/shark/sharkInliner.cpp, * ports/hotspot/src/share/vm/shark/sharkInliner.hpp, * ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp, * ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp, * ports/hotspot/src/share/vm/shark/sharkInvariants.cpp, * ports/hotspot/src/share/vm/shark/sharkInvariants.hpp, * ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp, * ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp, * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp, * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp, * ports/hotspot/src/share/vm/shark/sharkRuntime.cpp, * ports/hotspot/src/share/vm/shark/sharkRuntime.hpp, * ports/hotspot/src/share/vm/shark/sharkStack.cpp, * ports/hotspot/src/share/vm/shark/sharkStack.hpp, * ports/hotspot/src/share/vm/shark/sharkState.cpp, * ports/hotspot/src/share/vm/shark/sharkState.hpp, * ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp, * ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp, * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp, * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp, * ports/hotspot/src/share/vm/shark/sharkType.hpp, * ports/hotspot/src/share/vm/shark/sharkValue.cpp, * ports/hotspot/src/share/vm/shark/sharkValue.hpp, * ports/hotspot/src/share/vm/shark/shark_globals.cpp, * ports/hotspot/src/share/vm/shark/shark_globals.hpp, * ports/hotspot/tools/mkbc.c: Split into arm_port and shark directories. * Makefile.am: Only copy Shark when hs17 is built. hs19 includes Shark and the in-tree Shark fails to build with it. * arm_port/hotspot/src/cpu/zero/vm/asm_helper.cpp, * arm_port/hotspot/src/cpu/zero/vm/bytecodes_arm.def, * arm_port/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S, * arm_port/hotspot/src/cpu/zero/vm/thumb2.cpp, * arm_port/hotspot/tools/mkbc.c: New location of arm assembler files. * shark/hotspot/make/linux/makefiles/shark.make, * shark/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp, * shark/hotspot/src/share/vm/includeDB_shark, * shark/hotspot/src/share/vm/shark/llvmHeaders.hpp, * shark/hotspot/src/share/vm/shark/llvmValue.hpp, * shark/hotspot/src/share/vm/shark/sharkBlock.cpp, * shark/hotspot/src/share/vm/shark/sharkBlock.hpp, * shark/hotspot/src/share/vm/shark/sharkBuilder.cpp, * shark/hotspot/src/share/vm/shark/sharkBuilder.hpp, * shark/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, * shark/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, * shark/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp, * shark/hotspot/src/share/vm/shark/sharkCompiler.cpp, * shark/hotspot/src/share/vm/shark/sharkCompiler.hpp, * shark/hotspot/src/share/vm/shark/sharkConstant.cpp, * shark/hotspot/src/share/vm/shark/sharkConstant.hpp, * shark/hotspot/src/share/vm/shark/sharkContext.cpp, * shark/hotspot/src/share/vm/shark/sharkContext.hpp, * shark/hotspot/src/share/vm/shark/sharkEntry.hpp, * shark/hotspot/src/share/vm/shark/sharkFunction.cpp, * shark/hotspot/src/share/vm/shark/sharkFunction.hpp, * shark/hotspot/src/share/vm/shark/sharkInliner.cpp, * shark/hotspot/src/share/vm/shark/sharkInliner.hpp, * shark/hotspot/src/share/vm/shark/sharkIntrinsics.cpp, * shark/hotspot/src/share/vm/shark/sharkIntrinsics.hpp, * shark/hotspot/src/share/vm/shark/sharkInvariants.cpp, * shark/hotspot/src/share/vm/shark/sharkInvariants.hpp, * shark/hotspot/src/share/vm/shark/sharkMemoryManager.cpp, * shark/hotspot/src/share/vm/shark/sharkMemoryManager.hpp, * shark/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp, * shark/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp, * shark/hotspot/src/share/vm/shark/sharkRuntime.cpp, * shark/hotspot/src/share/vm/shark/sharkRuntime.hpp, * shark/hotspot/src/share/vm/shark/sharkStack.cpp, * shark/hotspot/src/share/vm/shark/sharkStack.hpp, * shark/hotspot/src/share/vm/shark/sharkState.cpp, * shark/hotspot/src/share/vm/shark/sharkState.hpp, * shark/hotspot/src/share/vm/shark/sharkStateScanner.cpp, * shark/hotspot/src/share/vm/shark/sharkStateScanner.hpp, * shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp, * shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp, * shark/hotspot/src/share/vm/shark/sharkType.hpp, * shark/hotspot/src/share/vm/shark/sharkValue.cpp, * shark/hotspot/src/share/vm/shark/sharkValue.hpp, * shark/hotspot/src/share/vm/shark/shark_globals.cpp, * shark/hotspot/src/share/vm/shark/shark_globals.hpp: New location of Shark. changeset fd61403cdd41 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=fd61403cdd41 author: Andrew John Hughes date: Wed Sep 22 17:56:27 2010 +0100 Move SystemTap support to a separate target. 2010-09-22 Andrew John Hughes Move SystemTap support to a separate target. * Makefile.am: (.PHONY): Add clean-add-systemtap and clean-add-systemtap-debug. (icedtea): Remove systemtap support. (icedtea-debug): Likewise. (icedtea- against-icedtea): Depend on add-systemtap. (icedtea-debug- against-icedtea): Depend on add-systemtap-debug. (add- plugin): Depend on icedtea.stamp. (add-plugin-debug): Depend on icedtea-debug.stamp. (add-netx): Depend on icedtea.stamp. (add-netx-debug): Depend on icedtea-debug.stamp. (add- systemtap): New target to add SystemTap support to the build. (add-systemtap-debug): Likewise for debug. (clean-add- systemtap): Remove SystemTap support from the build. (clean- add-systemtap-debug): Likewise for debug. changeset 36fac414f1b4 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=36fac414f1b4 author: Andrew John Hughes date: Thu Sep 23 11:51:33 2010 +0100 Separate PulseAudio addition into separate targets. 2010-09-23 Andrew John Hughes * Makefile.am: (.PHONY): Add clean-add-pulseaudio and clean-add-pulseaudio-debug. (clean-local): Likewise. (icedtea): Remove pulse-java support and dependency. (icedtea-debug): Likewise. (icedtea- against-icedtea): Depend on add-pulseaudio. (icedtea-debug- against-icedtea): Depend on add-pulseaudio-debug. (add- systemtap-debug): Dependency should be icedtea-debug. (add- pulseaudio): New target to add PulseAudio support to the build. (add-pulseaudio-debug): Likewise for debug. (clean-add- pulseaudio): Remove PulseAudio support from the build. (clean-add-pulseaudio-debug): Likewise for debug. changeset 65ab89d428ac in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=65ab89d428ac author: Andrew John Hughes date: Thu Sep 23 14:40:49 2010 +0100 Separate addition of NSS and timezone data support into separate targets. 2010-09-23 Andrew John Hughes * Makefile.am: (.PHONY): Add clean-add-nss, clean- add-nss-debug, clean-add-tzdata-support and clean-add- tzdata-support-debug. (clean-local): Likewise. (icedtea): Remove NSS and tzdata support. (icedtea-debug): Likewise. (icedtea-against-icedtea): Depend on add-nss and add-tzdata-support. (icedtea-debug-against-icedtea): Depend on add-nss-debug and add-tzdata-support-debug. (add-nss): New target to add NSS support to the build. (add-nss-debug): Likewise for debug. (clean-add-nss): Remove NSS support from the build. (clean-add-nss-debug): Likewise for debug. (add-tzdata-support): New target to add alternate timezone data support to the build. (add-tzdata-support-debug): Likewise for debug. (clean-add-tzdata-support): Remove alternate timezone data support from the build. (clean-add-tzdata- support-debug): Likewise for debug. changeset d70236972367 in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=d70236972367 author: Andrew John Hughes date: Thu Sep 23 21:11:08 2010 +0100 Merge changeset 0452a3386f4f in /hg/icedtea6-hg details: http://icedtea.classpath.org/hg/icedtea6-hg?cmd=changeset;node=0452a3386f4f author: Andrew John Hughes date: Fri Sep 24 00:12:54 2010 +0100 Drop upstreamed patches: 6969395, 6985992, 6721088. 2010-09-23 Andrew John Hughes * patches/icedtea-awt-window-size.patch, * patches/openjdk/6969395-net_bugs.patch, * patches/openjdk/6985992-test_6933784.patch: Dropped; upstreamed. * Makefile.am: Remove above patches. diffstat: 142 files changed, 38431 insertions(+), 37304 deletions(-) ChangeLog | 390 Makefile.am | 346 NEWS | 425 arm_port/hotspot/src/cpu/zero/vm/asm_helper.cpp | 583 arm_port/hotspot/src/cpu/zero/vm/bytecodes_arm.def | 7695 ++++++++++ arm_port/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S | 6336 ++++++++ arm_port/hotspot/src/cpu/zero/vm/thumb2.cpp | 7456 +++++++++ arm_port/hotspot/tools/mkbc.c | 607 hotspot.map | 1 netx/javaws.1 | 123 patches/hotspot/hs19/alpha-fixes.patch | 21 patches/hotspot/hs19/gcc-suffix.patch | 31 patches/hotspot/hs19/params-cast-size_t.patch | 264 patches/hotspot/hs19/print_lsb_release.patch | 49 patches/hotspot/hs19/update-bootclasspath.patch | 13 patches/hotspot/original/alpha-fixes.patch | 31 patches/hotspot/original/gcc-suffix.patch | 25 patches/hotspot/original/params-cast-size_t.patch | 274 patches/hotspot/original/print_lsb_release.patch | 48 patches/hotspot/original/update-bootclasspath.patch | 13 patches/icedtea-alpha-fixes.patch | 31 patches/icedtea-awt-window-size.patch | 67 patches/icedtea-gcc-suffix-hotspot.patch | 25 patches/icedtea-jtreg-jrunscript.patch | 12 patches/icedtea-print-lsb-release.patch | 48 patches/numa_on_early_glibc.patch | 46 patches/openjdk/4356282-opentype.patch | 227 patches/openjdk/6438179-systray_check.patch | 92 patches/openjdk/6510892-httpserver_test.patch | 122 patches/openjdk/6638712-wildcard_types.patch | 563 patches/openjdk/6650759-missing_inference.patch | 884 + patches/openjdk/6678385-window_movement_crasher.patch | 1241 - patches/openjdk/6795060-icu_crash.patch | 95 patches/openjdk/6951319-sparc_build_fixes.patch | 24 patches/openjdk/6954424-opentype_javadoc.patch | 23 patches/openjdk/6961732-negative_leading.patch | 45 patches/openjdk/6984543-onscreen_rendering_resize_test.patch | 30 patches/params-cast-size_t.patch | 252 patches/update-bootclasspath.patch | 13 plugin/icedteanp/IcedTeaJavaRequestProcessor.h | 2 plugin/icedteanp/IcedTeaNPPlugin.cc | 78 plugin/icedteanp/IcedTeaNPPlugin.h | 4 plugin/icedteanp/IcedTeaPluginUtils.cc | 8 plugin/icedteanp/java/sun/applet/PluginAppletViewer.java | 378 plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java | 45 ports/hotspot/make/linux/makefiles/shark.make | 32 ports/hotspot/src/cpu/zero/vm/asm_helper.cpp | 583 ports/hotspot/src/cpu/zero/vm/bytecodes_arm.def | 7695 ---------- ports/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S | 6336 -------- ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp | 62 ports/hotspot/src/cpu/zero/vm/thumb2.cpp | 7456 --------- ports/hotspot/src/share/vm/includeDB_shark | 369 ports/hotspot/src/share/vm/shark/llvmHeaders.hpp | 82 ports/hotspot/src/share/vm/shark/llvmValue.hpp | 62 ports/hotspot/src/share/vm/shark/sharkBlock.cpp | 1260 - ports/hotspot/src/share/vm/shark/sharkBlock.hpp | 281 ports/hotspot/src/share/vm/shark/sharkBuilder.cpp | 591 ports/hotspot/src/share/vm/shark/sharkBuilder.hpp | 209 ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp | 259 ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp | 417 ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp | 87 ports/hotspot/src/share/vm/shark/sharkCompiler.cpp | 340 ports/hotspot/src/share/vm/shark/sharkCompiler.hpp | 119 ports/hotspot/src/share/vm/shark/sharkConstant.cpp | 128 ports/hotspot/src/share/vm/shark/sharkConstant.hpp | 64 ports/hotspot/src/share/vm/shark/sharkContext.cpp | 180 ports/hotspot/src/share/vm/shark/sharkContext.hpp | 187 ports/hotspot/src/share/vm/shark/sharkEntry.hpp | 58 ports/hotspot/src/share/vm/shark/sharkFunction.cpp | 188 ports/hotspot/src/share/vm/shark/sharkFunction.hpp | 111 ports/hotspot/src/share/vm/shark/sharkInliner.cpp | 749 ports/hotspot/src/share/vm/shark/sharkInliner.hpp | 32 ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp | 277 ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp | 54 ports/hotspot/src/share/vm/shark/sharkInvariants.cpp | 37 ports/hotspot/src/share/vm/shark/sharkInvariants.hpp | 167 ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp | 116 ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp | 88 ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp | 352 ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp | 182 ports/hotspot/src/share/vm/shark/sharkRuntime.cpp | 251 ports/hotspot/src/share/vm/shark/sharkRuntime.hpp | 83 ports/hotspot/src/share/vm/shark/sharkStack.cpp | 263 ports/hotspot/src/share/vm/shark/sharkStack.hpp | 290 ports/hotspot/src/share/vm/shark/sharkState.cpp | 389 ports/hotspot/src/share/vm/shark/sharkState.hpp | 188 ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp | 99 ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp | 75 ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp | 1991 -- ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp | 430 ports/hotspot/src/share/vm/shark/sharkType.hpp | 112 ports/hotspot/src/share/vm/shark/sharkValue.cpp | 260 ports/hotspot/src/share/vm/shark/sharkValue.hpp | 332 ports/hotspot/src/share/vm/shark/shark_globals.cpp | 29 ports/hotspot/src/share/vm/shark/shark_globals.hpp | 54 ports/hotspot/tools/mkbc.c | 607 shark/hotspot/make/linux/makefiles/shark.make | 32 shark/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp | 62 shark/hotspot/src/share/vm/includeDB_shark | 369 shark/hotspot/src/share/vm/shark/llvmHeaders.hpp | 82 shark/hotspot/src/share/vm/shark/llvmValue.hpp | 62 shark/hotspot/src/share/vm/shark/sharkBlock.cpp | 1260 + shark/hotspot/src/share/vm/shark/sharkBlock.hpp | 281 shark/hotspot/src/share/vm/shark/sharkBuilder.cpp | 591 shark/hotspot/src/share/vm/shark/sharkBuilder.hpp | 209 shark/hotspot/src/share/vm/shark/sharkCacheDecache.cpp | 259 shark/hotspot/src/share/vm/shark/sharkCacheDecache.hpp | 417 shark/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp | 87 shark/hotspot/src/share/vm/shark/sharkCompiler.cpp | 340 shark/hotspot/src/share/vm/shark/sharkCompiler.hpp | 119 shark/hotspot/src/share/vm/shark/sharkConstant.cpp | 128 shark/hotspot/src/share/vm/shark/sharkConstant.hpp | 64 shark/hotspot/src/share/vm/shark/sharkContext.cpp | 180 shark/hotspot/src/share/vm/shark/sharkContext.hpp | 187 shark/hotspot/src/share/vm/shark/sharkEntry.hpp | 58 shark/hotspot/src/share/vm/shark/sharkFunction.cpp | 188 shark/hotspot/src/share/vm/shark/sharkFunction.hpp | 111 shark/hotspot/src/share/vm/shark/sharkInliner.cpp | 749 shark/hotspot/src/share/vm/shark/sharkInliner.hpp | 32 shark/hotspot/src/share/vm/shark/sharkIntrinsics.cpp | 277 shark/hotspot/src/share/vm/shark/sharkIntrinsics.hpp | 54 shark/hotspot/src/share/vm/shark/sharkInvariants.cpp | 37 shark/hotspot/src/share/vm/shark/sharkInvariants.hpp | 167 shark/hotspot/src/share/vm/shark/sharkMemoryManager.cpp | 116 shark/hotspot/src/share/vm/shark/sharkMemoryManager.hpp | 88 shark/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp | 352 shark/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp | 182 shark/hotspot/src/share/vm/shark/sharkRuntime.cpp | 251 shark/hotspot/src/share/vm/shark/sharkRuntime.hpp | 83 shark/hotspot/src/share/vm/shark/sharkStack.cpp | 263 shark/hotspot/src/share/vm/shark/sharkStack.hpp | 290 shark/hotspot/src/share/vm/shark/sharkState.cpp | 389 shark/hotspot/src/share/vm/shark/sharkState.hpp | 188 shark/hotspot/src/share/vm/shark/sharkStateScanner.cpp | 99 shark/hotspot/src/share/vm/shark/sharkStateScanner.hpp | 75 shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp | 1991 ++ shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp | 430 shark/hotspot/src/share/vm/shark/sharkType.hpp | 112 shark/hotspot/src/share/vm/shark/sharkValue.cpp | 260 shark/hotspot/src/share/vm/shark/sharkValue.hpp | 332 shark/hotspot/src/share/vm/shark/shark_globals.cpp | 29 shark/hotspot/src/share/vm/shark/shark_globals.hpp | 54 diffs (truncated from 77067 to 500 lines): diff -r dfc3c1061ec7 -r 0452a3386f4f ChangeLog --- a/ChangeLog Fri Sep 03 11:00:55 2010 +0200 +++ b/ChangeLog Fri Sep 24 00:12:54 2010 +0100 @@ -1,3 +1,359 @@ 2010-09-03 Pavel Tisnovsky + + * patches/icedtea-awt-window-size.patch, + * patches/openjdk/6969395-net_bugs.patch, + * patches/openjdk/6985992-test_6933784.patch: + Dropped; upstreamed. + * Makefile.am: Remove above patches. + +2010-09-23 Andrew John Hughes + + * Makefile.am: + (.PHONY): Add clean-add-nss, clean-add-nss-debug, + clean-add-tzdata-support and clean-add-tzdata-support-debug. + (clean-local): Likewise. + (icedtea): Remove NSS and tzdata support. + (icedtea-debug): Likewise. + (icedtea-against-icedtea): Depend on add-nss and add-tzdata-support. + (icedtea-debug-against-icedtea): Depend on add-nss-debug and add-tzdata-support-debug. + (add-nss): New target to add NSS support to the build. + (add-nss-debug): Likewise for debug. + (clean-add-nss): Remove NSS support from the build. + (clean-add-nss-debug): Likewise for debug. + (add-tzdata-support): New target to add alternate timezone data support to the build. + (add-tzdata-support-debug): Likewise for debug. + (clean-add-tzdata-support): Remove alternate timezone data support from the build. + (clean-add-tzdata-support-debug): Likewise for debug. + +2010-09-23 Andrew John Hughes + + * Makefile.am: + (.PHONY): Add clean-add-pulseaudio and + clean-add-pulseaudio-debug. + (clean-local): Likewise. + (icedtea): Remove pulse-java support and dependency. + (icedtea-debug): Likewise. + (icedtea-against-icedtea): Depend on add-pulseaudio. + (icedtea-debug-against-icedtea): Depend on add-pulseaudio-debug. + (add-systemtap-debug): Dependency should be icedtea-debug. + (add-pulseaudio): New target to add PulseAudio support to the build. + (add-pulseaudio-debug): Likewise for debug. + (clean-add-pulseaudio): Remove PulseAudio support from the build. + (clean-add-pulseaudio-debug): Likewise for debug. + +2010-09-22 Andrew John Hughes + + Move SystemTap support to a separate target. + * Makefile.am: + (.PHONY): Add clean-add-systemtap and + clean-add-systemtap-debug. + (clean-local): Likewise. + (icedtea): Remove systemtap support. + (icedtea-debug): Likewise. + (icedtea-against-icedtea): Depend on add-systemtap. + (icedtea-debug-against-icedtea): Depend on add-systemtap-debug. + (add-plugin): Depend on icedtea.stamp. + (add-plugin-debug): Depend on icedtea-debug.stamp. + (add-netx): Depend on icedtea.stamp. + (add-netx-debug): Depend on icedtea-debug.stamp. + (add-systemtap): New target to add SystemTap support to the build. + (add-systemtap-debug): Likewise for debug. + (clean-add-systemtap): Remove SystemTap support from the build. + (clean-add-systemtap-debug): Likewise for debug. + +2010-09-22 Andrew John Hughes + + * ports/hotspot/make/linux/makefiles/shark.make, + * ports/hotspot/src/cpu/zero/vm/asm_helper.cpp, + * ports/hotspot/src/cpu/zero/vm/bytecodes_arm.def, + * ports/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S, + * ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp, + * ports/hotspot/src/cpu/zero/vm/thumb2.cpp, + * ports/hotspot/src/share/vm/includeDB_shark, + * ports/hotspot/src/share/vm/shark/llvmHeaders.hpp, + * ports/hotspot/src/share/vm/shark/llvmValue.hpp, + * ports/hotspot/src/share/vm/shark/sharkBlock.cpp, + * ports/hotspot/src/share/vm/shark/sharkBlock.hpp, + * ports/hotspot/src/share/vm/shark/sharkBuilder.cpp, + * ports/hotspot/src/share/vm/shark/sharkBuilder.hpp, + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, + * ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, + * ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp, + * ports/hotspot/src/share/vm/shark/sharkCompiler.cpp, + * ports/hotspot/src/share/vm/shark/sharkCompiler.hpp, + * ports/hotspot/src/share/vm/shark/sharkConstant.cpp, + * ports/hotspot/src/share/vm/shark/sharkConstant.hpp, + * ports/hotspot/src/share/vm/shark/sharkContext.cpp, + * ports/hotspot/src/share/vm/shark/sharkContext.hpp, + * ports/hotspot/src/share/vm/shark/sharkEntry.hpp, + * ports/hotspot/src/share/vm/shark/sharkFunction.cpp, + * ports/hotspot/src/share/vm/shark/sharkFunction.hpp, + * ports/hotspot/src/share/vm/shark/sharkInliner.cpp, + * ports/hotspot/src/share/vm/shark/sharkInliner.hpp, + * ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp, + * ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp, + * ports/hotspot/src/share/vm/shark/sharkInvariants.cpp, + * ports/hotspot/src/share/vm/shark/sharkInvariants.hpp, + * ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp, + * ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp, + * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp, + * ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp, + * ports/hotspot/src/share/vm/shark/sharkRuntime.cpp, + * ports/hotspot/src/share/vm/shark/sharkRuntime.hpp, + * ports/hotspot/src/share/vm/shark/sharkStack.cpp, + * ports/hotspot/src/share/vm/shark/sharkStack.hpp, + * ports/hotspot/src/share/vm/shark/sharkState.cpp, + * ports/hotspot/src/share/vm/shark/sharkState.hpp, + * ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp, + * ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp, + * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp, + * ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp, + * ports/hotspot/src/share/vm/shark/sharkType.hpp, + * ports/hotspot/src/share/vm/shark/sharkValue.cpp, + * ports/hotspot/src/share/vm/shark/sharkValue.hpp, + * ports/hotspot/src/share/vm/shark/shark_globals.cpp, + * ports/hotspot/src/share/vm/shark/shark_globals.hpp, + * ports/hotspot/tools/mkbc.c: + Split into arm_port and shark directories. + * Makefile.am: Only copy Shark when hs17 is built. + hs19 includes Shark and the in-tree Shark fails to build with it. + * arm_port/hotspot/src/cpu/zero/vm/asm_helper.cpp, + * arm_port/hotspot/src/cpu/zero/vm/bytecodes_arm.def, + * arm_port/hotspot/src/cpu/zero/vm/cppInterpreter_arm.S, + * arm_port/hotspot/src/cpu/zero/vm/thumb2.cpp, + * arm_port/hotspot/tools/mkbc.c: + New location of arm assembler files. + * shark/hotspot/make/linux/makefiles/shark.make, + * shark/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp, + * shark/hotspot/src/share/vm/includeDB_shark, + * shark/hotspot/src/share/vm/shark/llvmHeaders.hpp, + * shark/hotspot/src/share/vm/shark/llvmValue.hpp, + * shark/hotspot/src/share/vm/shark/sharkBlock.cpp, + * shark/hotspot/src/share/vm/shark/sharkBlock.hpp, + * shark/hotspot/src/share/vm/shark/sharkBuilder.cpp, + * shark/hotspot/src/share/vm/shark/sharkBuilder.hpp, + * shark/hotspot/src/share/vm/shark/sharkCacheDecache.cpp, + * shark/hotspot/src/share/vm/shark/sharkCacheDecache.hpp, + * shark/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp, + * shark/hotspot/src/share/vm/shark/sharkCompiler.cpp, + * shark/hotspot/src/share/vm/shark/sharkCompiler.hpp, + * shark/hotspot/src/share/vm/shark/sharkConstant.cpp, + * shark/hotspot/src/share/vm/shark/sharkConstant.hpp, + * shark/hotspot/src/share/vm/shark/sharkContext.cpp, + * shark/hotspot/src/share/vm/shark/sharkContext.hpp, + * shark/hotspot/src/share/vm/shark/sharkEntry.hpp, + * shark/hotspot/src/share/vm/shark/sharkFunction.cpp, + * shark/hotspot/src/share/vm/shark/sharkFunction.hpp, + * shark/hotspot/src/share/vm/shark/sharkInliner.cpp, + * shark/hotspot/src/share/vm/shark/sharkInliner.hpp, + * shark/hotspot/src/share/vm/shark/sharkIntrinsics.cpp, + * shark/hotspot/src/share/vm/shark/sharkIntrinsics.hpp, + * shark/hotspot/src/share/vm/shark/sharkInvariants.cpp, + * shark/hotspot/src/share/vm/shark/sharkInvariants.hpp, + * shark/hotspot/src/share/vm/shark/sharkMemoryManager.cpp, + * shark/hotspot/src/share/vm/shark/sharkMemoryManager.hpp, + * shark/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp, + * shark/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp, + * shark/hotspot/src/share/vm/shark/sharkRuntime.cpp, + * shark/hotspot/src/share/vm/shark/sharkRuntime.hpp, + * shark/hotspot/src/share/vm/shark/sharkStack.cpp, + * shark/hotspot/src/share/vm/shark/sharkStack.hpp, + * shark/hotspot/src/share/vm/shark/sharkState.cpp, + * shark/hotspot/src/share/vm/shark/sharkState.hpp, + * shark/hotspot/src/share/vm/shark/sharkStateScanner.cpp, + * shark/hotspot/src/share/vm/shark/sharkStateScanner.hpp, + * shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp, + * shark/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp, + * shark/hotspot/src/share/vm/shark/sharkType.hpp, + * shark/hotspot/src/share/vm/shark/sharkValue.cpp, + * shark/hotspot/src/share/vm/shark/sharkValue.hpp, + * shark/hotspot/src/share/vm/shark/shark_globals.cpp, + * shark/hotspot/src/share/vm/shark/shark_globals.hpp: + New location of Shark. + +2010-09-21 Pavel Tisnovsky + + * Makefile.am: + Add new patch. + * patches/openjdk/6985992-test_6933784.patch + Testcase correction. + +2010-09-21 Pavel Tisnovsky + + * Makefile.am: + Add new patch. + * patches/openjdk/6984543-onscreen_rendering_resize_test.patch: + Testcase correction. + +2010-09-20 Andrew John Hughes + + * Makefile.am: + Enable icedtea-shark-build.patch on all builds + as it applies to the top-level makefiles and not + HotSpot. + +2010-09-19 Andrew John Hughes + + * Makefile.am: + (hotspot): Only remake the main icedtea + and icedtea-ecj targets (i.e. the OpenJDK + build) and not the additional targets from + icedtea-against-icedtea and icedtea-against-ecj. + +2010-09-19 Andrew John Hughes + + * Makefile.am: + Revert 2713dbdb914e changes to javaws.1 + installation. + +2010-09-19 Andrew John Hughes + + Support HotSpot 19. + * patches/icedtea-alpha-fixes.patch, + * patches/icedtea-gcc-suffix-hotspot.patch, + * patches/icedtea-print-lsb-release.patch, + * patches/params-cast-size_t.patch, + * patches/update-bootclasspath.patch: + Split into original and hs19 versions. + * Makefile.am: Apply some patches only when + hs17 is built. Apply different variants of + above patches depending on HotSpot build used. + * hotspot.map: Add hs19. + * patches/hotspot/hs19/alpha-fixes.patch, + * patches/hotspot/hs19/gcc-suffix.patch, + * patches/hotspot/hs19/params-cast-size_t.patch, + * patches/hotspot/hs19/print_lsb_release.patch, + * patches/hotspot/hs19/update-bootclasspath.patch: + HotSpot 19 variants of patches moved above. + * patches/hotspot/original/alpha-fixes.patch, + * patches/hotspot/original/gcc-suffix.patch, + * patches/hotspot/original/params-cast-size_t.patch, + * patches/hotspot/original/print_lsb_release.patch, + * patches/hotspot/original/update-bootclasspath.patch: + HotSpot 17 patches moved from patches above. + +2010-09-17 Deepak Bhole + + PR557: Applet opens in a separate window if tab is closed when the applet + loads + * plugin/icedteanp/IcedTeaNPPlugin.cc + (ITNP_Destroy): Send a destroy message to let Java side know that the + applet needs to be destroyed. + +2010-09-17 Andrew John Hughes + + * Makefile.am: + Add new patch. + * patches/numa_on_early_glibc.patch, + Fallback to making a syscall if sched_getcpu + exists but the glibc used is too old to support it. + +2010-09-17 Omair Majid + + * Makefile.am: Only create man pages for javaws if ENABLE_DOCS is set + and the man directory exists. + +2010-09-17 Andrew John Hughes + + * patches/openjdk/6638712-wildcard_types.patch: + Fix copyrights (from 6875336) and test output. + * patches/openjdk/6650759-missing_inference.patch, + Remove test output changes already incorporated in + 6875336. + +2010-09-09 Andrew John Hughes + + * Makefile.am: Add new patches. + * NEWS: Document new patches. Fix key. + * patches/openjdk/6638712-wildcard_types.patch, + * patches/openjdk/6650759-missing_inference.patch: + Fix failure in javac compilation. + +2010-09-16 Deepak Bhole + + * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java + (handleMessage): Output initialization info only in debug mode. + +2010-09-15 Deepak Bhole + + PR556: Re-implement applet initialization to be serialialized, to fix + current and future possible race conditions. + * plugin/icedteanp/IcedTeaJavaRequestProcessor.h: Updated timeout to 3 + minutes. + * plugin/icedteanp/IcedTeaNPPlugin.cc + (ITNP_New): Remove the tag_message string, don't send any data to Java + side and instead, populate the new ITNPPluginData.applet_tag field with + the tag info. Do cleanup accordingly. + (ITNP_SetWindow): Send all (handle, size and tag) initialization + information to java in a single message. Cleanup accordingly for newly + added variables. + * plugin/icedteanp/IcedTeaPluginUtils.cc + (getReference): Use a negative decreasing reference count to prevent + clashes with references for Java-side requests. + * plugin/icedteanp/IcedTeaNPPlugin.h: Rename the instance_string field of + ITNPPluginData to instance_id, and add an applet_tag field. + * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java + (PluginAppletPanelFactory.createPanel): Remove code that tried to account + for percent heights and widths. This is done by the browser now. + (reFrame): Same. + (PluginAppletViewer): Update constructor to not take height and width + factor information. + (handleMessage): Update function for new protocol that now passes all + information relevant to initialization in a single message. + (skipSpace): Accept a new int array that contains the character at the + current position in the stream. Use the value accordingly. + (scanIdentifier): Same. + (skipComment): Same. + (scanTag): Same. + (parse): Updated all function signatures to accept width and height info. + Initialize an int array (for fake pass-by-reference) that contains + position of current character in the stream. Inject width and height + information into the atts table. + * plugin/icedteanp/java/sun/applet/PluginMessageConsumer.java: Updated + thread count needed for initialization. + (okayToProcess): Remove function that is no longer needed with the + serialized initialization code. + (ConsumerThread.run): Remove call to okayToProcess(). + +2010-09-13 Omair Majid + + Add a new man page for netx's javaws. + * NEWS: Updated to indicate the new man page for javaws. + * Makefile.am + (stamps/add-netx.stamp): Copy over the javaws man page into the build. + (clean-add-netx): Remove the javaws man pages on clean. + (stamps/add-netx-debug.stamp): Copy over the javaws man page. + (clean-add-netx-debug): Remove the javaws man page. + (add-netx): New target. Alias for stamps/add-netx.stamp. + (add-netx-debug): New target. Alias for stamps/add-netx-debug.stamp. + * netx/javaws.1: New man page for netx's javaws. + +2010-09-10 Matthias Klose + + * patches/params-cast-size_t.patch: Update, fix build failure on s390. + +2010-09-08 Andrew John Hughes + + * NEWS: Sync with 1.9 branch. + +2010-09-07 Andrew John Hughes + + S6510892, S6969395: + * Makefile.am: Add new patches. + * NEWS: Updated. + * patches/openjdk/6510892-httpserver_test.patch, + * patches/openjdk/6969395-net_bugs.patch: + Fix networking tests. + +2010-09-05 Andrew John Hughes + + * patches/openjdk/6438179-systray_check.patch: + Dropped, applied upstream. + * Makefile.am: Drop above patch and those brought + back by merge. Update JAXP tarball. + * patches/openjdk/6951319-sparc_build_fixes.patch: + Remove upstreamed parts. + 2010-09-03 Pavel Tisnovsky * Makefile.am: Fixed indentation, changes spaces to tab. @@ -47,7 +403,7 @@ 2010-08-27 Deepak Bhole - * Makefile.am: + * Makefile.am: Add patch. * patches/opengl-jni-fix.patch: Fixed missing JNI link to native function OGLContext.getOGLIdString() which causes @@ -134,6 +490,22 @@ 2010-08-13 Andrew John Hughes + + * patches/openjdk/4356282-opentype.patch, + * patches/openjdk/6795060-icu_crash.patch, + * patches/openjdk/6954424-opentype_javadoc.patch: + Dropped, applied upstream. + * Makefile.am: + Remove above patches. + +2010-08-12 Andrew John Hughes + + * patches/openjdk/6678385-window_movement_crasher.patch: + Dropped, applied upstream. + * Makefile.am: + Remove above patch. 2010-08-09 Omair Majid @@ -175,7 +547,7 @@ 2010-08-09 Deepak Bhole @@ -487,6 +859,12 @@ 2010-07-28 Matthias Klose * NEWS: Add 1.8.1 entry. + +2010-07-26 Andrew John Hughes + + * patches/icedtea-jtreg-jrunscript.patch: + Regenerate after 50002bfcff96 from dcubed being + added to OpenJDK6. 2010-07-26 Andrew John Hughes @@ -936,6 +1314,12 @@ 2010-07-08 Andrew John Hughes + + * patches/openjdk/6961732.patch: + Dropped, applied upstream. + * Makefile.am: Remove above patch. 2010-07-06 Andrew John Hughes @@ -9229,7 +9613,7 @@ 2009-04-07 Omair Majid - * patches/icedtea-jtreg-jrunscript.patch: New patch. Replaces + * patches/icedtea-jtreg-jrunscript.patch: New patch. Replaces jrunscriptTest.sh with a java version that isnt picky about int vs double changes. * Makefile.am (ICEDTEA_PATCHES): Apply the above. diff -r dfc3c1061ec7 -r 0452a3386f4f Makefile.am --- a/Makefile.am Fri Sep 03 11:00:55 2010 +0200 +++ b/Makefile.am Fri Sep 24 00:12:54 2010 +0100 @@ -17,9 +17,9 @@ JAF_DROP_URL = https://jax-ws.dev.java.n JAF_DROP_URL = https://jax-ws.dev.java.net/files/documents/4202/150725 JAF_DROP_ZIP = jdk6-jaf-b20.zip JAF_DROP_SHA256SUM = 78c7b5c9d6271e88ee46abadd018a61f1e9645f8936cc8df1617e5f4f5074012 -JAXP_DROP_URL = https://jaxp.dev.java.net/files/documents/913/150648 -JAXP_DROP_ZIP = jdk6-jaxp-b20.zip -JAXP_DROP_SHA256SUM = d097627d4059d488c5a09d4e33cec275a193d4d8bc0fea8ef4f1337170904156 +JAXP_DROP_URL = https://jaxp.dev.java.net/files/documents/913/152561 +JAXP_DROP_ZIP = jaxp-1_4_4.zip +JAXP_DROP_SHA256SUM = 10b203bec5b7d3dd8f515a9e098f80abc316faf977bcc220b56efe3dc6e9e5e9 OPENJDK_HG_URL = http://hg.openjdk.java.net/jdk6/jdk6 @@ -198,7 +198,6 @@ ICEDTEA_FSG_PATCHES = ICEDTEA_FSG_PATCHES = ICEDTEA_PATCHES = \ - patches/shark_do_nothing_on_stub_frame.patch \ patches/icedtea-notice-safepoints.patch \ patches/icedtea-parisc-opt.patch \ patches/icedtea-lucene-crash.patch \ @@ -212,7 +211,7 @@ ICEDTEA_PATCHES = \ patches/icedtea-headers.patch \ patches/icedtea-headers-hotspot.patch \ patches/icedtea-gcc-suffix.patch \ - patches/icedtea-gcc-suffix-hotspot.patch \ + patches/hotspot/$(HSBUILD)/gcc-suffix.patch \ patches/icedtea-bytebuffer-compact.patch \ patches/memory-limits.patch \ patches/icedtea-sunsrc.patch \ @@ -221,22 +220,19 @@ ICEDTEA_PATCHES = \ patches/icedtea-jvmtiEnv.patch \ patches/icedtea-lcms.patch \ patches/icedtea-timerqueue.patch \ - patches/icedtea-print-lsb-release.patch \ + patches/hotspot/$(HSBUILD)/print_lsb_release.patch \ patches/icedtea-jpegclasses.patch \ patches/icedtea-uname.patch \ patches/icedtea-freetypeversion.patch \ - patches/icedtea-shark-build.patch \ - patches/icedtea-shark-build-hotspot.patch \ patches/icedtea-nomotif-6706121.patch \ patches/icedtea-nomotif.patch \ patches/icedtea-nomotif-mtoolkit.patch \ - patches/icedtea-alpha-fixes.patch \ + patches/hotspot/$(HSBUILD)/alpha-fixes.patch \ patches/icedtea-alt-jar.patch \ patches/icedtea-jdk-use-ssize_t.patch \ patches/icedtea-use-idx_t.patch \ - patches/params-cast-size_t.patch \ + patches/hotspot/$(HSBUILD)/params-cast-size_t.patch \ patches/icedtea-clean-crypto.patch \ - patches/icedtea-shark.patch \ patches/icedtea-arch.patch \ patches/icedtea-lc_ctype.patch \ patches/icedtea-xjc.patch \ @@ -251,7 +247,6 @@ ICEDTEA_PATCHES = \ patches/icedtea-sparc-ptracefix.patch \ From andrew at icedtea.classpath.org Thu Sep 23 16:18:14 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Thu, 23 Sep 2010 23:18:14 +0000 Subject: /hg/icedtea6: 2 new changesets Message-ID: changeset f6995ca0f34d in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=f6995ca0f34d author: Andrew John Hughes date: Fri Sep 24 00:14:30 2010 +0100 Add bug ID to awt_window_size patch to reflect upstreaming. 2010-09-23 Andrew John Hughes * patches/icedtea-awt-window-size.patch: Moved to... * Makefile.am: Fix path of above patch. * patches/openjdk/6721088-awt_window_size.patch, ...here to reflect upstreaming. changeset ebedc637de4d in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=ebedc637de4d author: Andrew John Hughes date: Fri Sep 24 00:18:08 2010 +0100 Move add-x and add-x-debug cleaning targets to clean-icedtea- against-icedtea and clean-icedtea-debug-against-icedtea respectively. 2010-09-24 Andrew John Hughes * Makefile.am: (clean-local): Remove add-x and add-x-debug clean targets. (clean-icedtea-against-icedtea): Add clean-add-x targets. (clean-icedtea-debug-against- icedtea): Add clean-add-x-debug targets. diffstat: 4 files changed, 88 insertions(+), 73 deletions(-) ChangeLog | 15 +++++ Makefile.am | 12 ++-- patches/icedtea-awt-window-size.patch | 67 ------------------------- patches/openjdk/6721088-awt_window_size.patch | 67 +++++++++++++++++++++++++ diffs (207 lines): diff -r 65ab89d428ac -r ebedc637de4d ChangeLog --- a/ChangeLog Thu Sep 23 14:40:49 2010 +0100 +++ b/ChangeLog Fri Sep 24 00:18:08 2010 +0100 @@ -1,3 +1,18 @@ 2010-09-23 Andrew John Hughes + + * Makefile.am: + (clean-local): Remove add-x and add-x-debug clean targets. + (clean-icedtea-against-icedtea): Add clean-add-x targets. + (clean-icedtea-debug-against-icedtea): Add clean-add-x-debug targets. + +2010-09-23 Andrew John Hughes + + * patches/icedtea-awt-window-size.patch: + Moved to... + * Makefile.am: Fix path of above patch. + * patches/openjdk/6721088-awt_window_size.patch, + ...here to reflect upstreaming. + 2010-09-23 Andrew John Hughes * Makefile.am: diff -r 65ab89d428ac -r ebedc637de4d Makefile.am --- a/Makefile.am Thu Sep 23 14:40:49 2010 +0100 +++ b/Makefile.am Fri Sep 24 00:18:08 2010 +0100 @@ -247,7 +247,7 @@ ICEDTEA_PATCHES = \ patches/icedtea-sparc-ptracefix.patch \ patches/icedtea-sparc-trapsfix.patch \ patches/icedtea-demo-swingapplet.patch \ - patches/icedtea-awt-window-size.patch \ + patches/openjdk/6721088-awt_window_size.patch \ patches/icedtea-jtreg-6592792.patch \ patches/icedtea-s390-noinline.patch \ patches/icedtea-jtreg-dnd.patch \ @@ -555,9 +555,7 @@ clean-local: clean-jtreg clean-jtreg-rep clean-icedtea-against-ecj clean-extract-ecj clean-generated clean-replace-hotspot \ clean-rewriter clean-rewrite-rhino clean-extra clean-rt clean-bootstrap-directory \ clean-bootstrap-directory-ecj clean-bootstrap-directory-symlink \ - clean-bootstrap-directory-symlink-ecj clean-add-systemtap clean-add-systemtap-debug \ - clean-add-pulseaudio clean-add-pulseaudio-debug clean-add-nss clean-add-nss-debug \ - clean-add-tzdata-support clean-add-tzdata-support-debug + clean-bootstrap-directory-symlink-ecj if [ -e bootstrap ]; then \ rmdir bootstrap ; \ fi @@ -1312,7 +1310,8 @@ stamps/icedtea-against-icedtea.stamp: st mkdir -p stamps touch stamps/icedtea-against-icedtea.stamp -clean-icedtea-against-icedtea: clean-add-zero clean-add-cacao clean-add-plugin clean-add-netx +clean-icedtea-against-icedtea: clean-add-zero clean-add-cacao clean-add-plugin clean-add-netx \ + clean-add-systemtap clean-add-pulseaudio clean-add-nss clean-add-tzdata-support rm -f stamps/icedtea-against-icedtea.stamp stamps/icedtea-debug-against-icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ @@ -1323,7 +1322,8 @@ stamps/icedtea-debug-against-icedtea.sta touch stamps/icedtea-debug-against-icedtea.stamp clean-icedtea-debug-against-icedtea: clean-add-zero-debug clean-add-cacao-debug clean-add-plugin-debug \ - clean-add-netx-debug + clean-add-netx-debug clean-add-systemtap-debug clean-add-pulseaudio-debug clean-add-nss-debug \ + clean-add-tzdata-support-debug rm -f stamps/icedtea-debug-against-icedtea.stamp stamps/add-plugin.stamp: stamps/plugin.stamp stamps/icedtea.stamp diff -r 65ab89d428ac -r ebedc637de4d patches/icedtea-awt-window-size.patch --- a/patches/icedtea-awt-window-size.patch Thu Sep 23 14:40:49 2010 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,67 +0,0 @@ ---- openjdk/jdk/src/solaris/classes/sun/awt/X11/XDecoratedPeer.java.orig 2009-01-08 16:53:54.000000000 -0500 -+++ openjdk/jdk/src/solaris/classes/sun/awt/X11/XDecoratedPeer.java 2009-01-08 16:54:08.000000000 -0500 -@@ -478,7 +478,10 @@ - // do nothing but accept it. - Rectangle reqBounds = newDimensions.getBounds(); - Rectangle newBounds = constrainBounds(reqBounds.x, reqBounds.y, reqBounds.width, reqBounds.height); -- newDimensions = new WindowDimensions(newBounds, newDimensions.getInsets(), newDimensions.isClientSizeSet()); -+ Insets insets = newDimensions.getInsets(); -+ Rectangle clientBounds = new Rectangle(newBounds.x, newBounds.y, newBounds.width - insets.left - insets.right, -+ newBounds.height - insets.top - insets.bottom); -+ newDimensions = new WindowDimensions(newDimensions.isClientSizeSet() ? clientBounds : newBounds , insets, newDimensions.isClientSizeSet()); - } - XToolkit.awtLock(); - try { ---- /dev/null 2009-01-09 04:32:08.413012246 -0500 -+++ openjdk/jdk/test/java/awt/Frame/FrameSize/TestFrameSize.java 2009-01-09 11:30:54.000000000 -0500 -@@ -0,0 +1,50 @@ -+/* -+ @test -+ @bug 6721088 -+ @summary X11 Window sizes should be what we set them to -+ @author Omair Majid -+ @run main TestFrameSize -+ */ -+ -+import java.awt.Dimension; -+import java.awt.Frame; -+ -+/** -+ * TestFrameSize.java -+ * -+ * Summary: test that X11 Awt windows are drawn with correct sizes -+ * -+ * Test fails if size of window is wrong -+ */ -+ -+public class TestFrameSize { -+ -+ static Dimension desiredDimensions = new Dimension(200, 200); -+ static int ERROR_MARGIN = 15; -+ static Frame mainWindow; -+ -+ public static void drawGui() { -+ mainWindow = new Frame(""); -+ mainWindow.setPreferredSize(desiredDimensions); -+ mainWindow.pack(); -+ // mainWindow.setVisible(true); -+ -+ Dimension actualDimensions = mainWindow.getSize(); -+ // System.out.println(desiredDimensions); -+ // System.out.println(actualDimensions); -+ if (Math.abs(actualDimensions.height - desiredDimensions.height) > ERROR_MARGIN) { -+ throw new RuntimeException("Incorrect widow size"); -+ } -+ -+ } -+ -+ public static void main(String[] args) { -+ try { -+ drawGui(); -+ } finally { -+ if (mainWindow != null) { -+ mainWindow.dispose(); -+ } -+ } -+ } -+} diff -r 65ab89d428ac -r ebedc637de4d patches/openjdk/6721088-awt_window_size.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/openjdk/6721088-awt_window_size.patch Fri Sep 24 00:18:08 2010 +0100 @@ -0,0 +1,67 @@ +--- openjdk/jdk/src/solaris/classes/sun/awt/X11/XDecoratedPeer.java.orig 2009-01-08 16:53:54.000000000 -0500 ++++ openjdk/jdk/src/solaris/classes/sun/awt/X11/XDecoratedPeer.java 2009-01-08 16:54:08.000000000 -0500 +@@ -478,7 +478,10 @@ + // do nothing but accept it. + Rectangle reqBounds = newDimensions.getBounds(); + Rectangle newBounds = constrainBounds(reqBounds.x, reqBounds.y, reqBounds.width, reqBounds.height); +- newDimensions = new WindowDimensions(newBounds, newDimensions.getInsets(), newDimensions.isClientSizeSet()); ++ Insets insets = newDimensions.getInsets(); ++ Rectangle clientBounds = new Rectangle(newBounds.x, newBounds.y, newBounds.width - insets.left - insets.right, ++ newBounds.height - insets.top - insets.bottom); ++ newDimensions = new WindowDimensions(newDimensions.isClientSizeSet() ? clientBounds : newBounds , insets, newDimensions.isClientSizeSet()); + } + XToolkit.awtLock(); + try { +--- /dev/null 2009-01-09 04:32:08.413012246 -0500 ++++ openjdk/jdk/test/java/awt/Frame/FrameSize/TestFrameSize.java 2009-01-09 11:30:54.000000000 -0500 +@@ -0,0 +1,50 @@ ++/* ++ @test ++ @bug 6721088 ++ @summary X11 Window sizes should be what we set them to ++ @author Omair Majid ++ @run main TestFrameSize ++ */ ++ ++import java.awt.Dimension; ++import java.awt.Frame; ++ ++/** ++ * TestFrameSize.java ++ * ++ * Summary: test that X11 Awt windows are drawn with correct sizes ++ * ++ * Test fails if size of window is wrong ++ */ ++ ++public class TestFrameSize { ++ ++ static Dimension desiredDimensions = new Dimension(200, 200); ++ static int ERROR_MARGIN = 15; ++ static Frame mainWindow; ++ ++ public static void drawGui() { ++ mainWindow = new Frame(""); ++ mainWindow.setPreferredSize(desiredDimensions); ++ mainWindow.pack(); ++ // mainWindow.setVisible(true); ++ ++ Dimension actualDimensions = mainWindow.getSize(); ++ // System.out.println(desiredDimensions); ++ // System.out.println(actualDimensions); ++ if (Math.abs(actualDimensions.height - desiredDimensions.height) > ERROR_MARGIN) { ++ throw new RuntimeException("Incorrect widow size"); ++ } ++ ++ } ++ ++ public static void main(String[] args) { ++ try { ++ drawGui(); ++ } finally { ++ if (mainWindow != null) { ++ mainWindow.dispose(); ++ } ++ } ++ } ++} From andrew at icedtea.classpath.org Fri Sep 24 07:25:59 2010 From: andrew at icedtea.classpath.org (andrew at icedtea.classpath.org) Date: Fri, 24 Sep 2010 14:25:59 +0000 Subject: /hg/icedtea6: 2 new changesets Message-ID: changeset b5f9559a47bf in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=b5f9559a47bf author: Andrew John Hughes date: Fri Sep 24 00:19:50 2010 +0100 Remove old tarballs before trying to remove the drops directory. 2010-09-24 Andrew John Hughes * Makefile.am: (distclean-local): Remove any old tarballs before trying to remove the drops directory. changeset 5c0d756b4bb6 in /hg/icedtea6 details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=5c0d756b4bb6 author: Andrew John Hughes date: Fri Sep 24 15:25:51 2010 +0100 Support additional targets for the ecj build. 2010-09-24 Andrew John Hughes * Makefile.am: (.PHONY): Add new clean targets. (icedtea-against-icedtea): Don't depend on bootstrap- directory-symlink, icedtea already does. (clean-icedtea- against-icedtea): Remove superfluous space. (icedtea-debug- against-icedtea): Likewise. (icedtea-ecj): Fix formatting. (icedtea-against-ecj): Add new add-x-ecj targets. (clean- icedtea-against-ecj): Add new clean-add-x-ecj targets. (add- plugin-ecj): Add plugin support to the ecj build. (clean- plugin-ecj): Remove plugin support from the ecj build. (add- netx-ecj): Add NetX support to the ecj build. (clean-netx- ecj): Remove NetX support from the ecj build. (add- systemtap-ecj): Add SystemTap support to the ecj build. (clean-add-systemtap-ecj): Remove SystemTap support from the ecj build. (add-pulseaudio-ecj): New target to add PulseAudio support to the ecj build. (clean-add-pulseaudio-ecj): Remove PulseAudio support from the ecj build. (add-nss-ecj): New target to add NSS support to the ecj build. (clean-add-nss- ecj): Remove NSS support from the ecj build. (add-tzdata- support-ecj): New target to add alternate timezone data support to the ecj build. (clean-add-tzdata-support-ecj): Remove alternate timezone data support from the ecj build. diffstat: 2 files changed, 168 insertions(+), 20 deletions(-) ChangeLog | 30 +++++++++++ Makefile.am | 158 +++++++++++++++++++++++++++++++++++++++++++++++++++-------- diffs (246 lines): diff -r ebedc637de4d -r 5c0d756b4bb6 ChangeLog --- a/ChangeLog Fri Sep 24 00:18:08 2010 +0100 +++ b/ChangeLog Fri Sep 24 15:25:51 2010 +0100 @@ -1,3 +1,33 @@ 2010-09-24 Andrew John Hughes + + * Makefile.am: + (.PHONY): Add new clean targets. + (icedtea-against-icedtea): Don't depend on + bootstrap-directory-symlink, icedtea already does. + (clean-icedtea-against-icedtea): Remove superfluous space. + (icedtea-debug-against-icedtea): Likewise. + (icedtea-ecj): Fix formatting. + (icedtea-against-ecj): Add new add-x-ecj targets. + (clean-icedtea-against-ecj): Add new clean-add-x-ecj targets. + (add-plugin-ecj): Add plugin support to the ecj build. + (clean-plugin-ecj): Remove plugin support from the ecj build. + (add-netx-ecj): Add NetX support to the ecj build. + (clean-netx-ecj): Remove NetX support from the ecj build. + (add-systemtap-ecj): Add SystemTap support to the ecj build. + (clean-add-systemtap-ecj): Remove SystemTap support from the ecj build. + (add-pulseaudio-ecj): New target to add PulseAudio support to the ecj build. + (clean-add-pulseaudio-ecj): Remove PulseAudio support from the ecj build. + (add-nss-ecj): New target to add NSS support to the ecj build. + (clean-add-nss-ecj): Remove NSS support from the ecj build. + (add-tzdata-support-ecj): New target to add alternate timezone data support to the ecj build. + (clean-add-tzdata-support-ecj): Remove alternate timezone data support from the ecj build. + +2010-09-24 Andrew John Hughes + + * Makefile.am: + (distclean-local): Remove any old tarballs + before trying to remove the drops directory. + 2010-09-24 Andrew John Hughes * Makefile.am: diff -r ebedc637de4d -r 5c0d756b4bb6 Makefile.am --- a/Makefile.am Fri Sep 24 00:18:08 2010 +0100 +++ b/Makefile.am Fri Sep 24 15:25:51 2010 +0100 @@ -590,7 +590,9 @@ install: clean-rewriter clean-rewrite-rhino clean-add-netx clean-add-netx-debug \ clean-add-plugin clean-add-plugin-debug clean-add-systemtap clean-add-systemtap-debug \ clean-add-pulseaudio clean-add-pulseaudio-debug clean-add-nss clean-add-nss-debug \ - clean-add-tzdata-support clean-add-tzdata-support-debug + clean-add-tzdata-support clean-add-tzdata-support-debug clean-add-plugin-ecj \ + clean-add-netx-ecj clean-add-systemtap-ecj clean-add-pulseaudio-ecj clean-add-nss-ecj \ + clean-add-tzdata-support-ecj env: @echo 'unset JAVA_HOME' @@ -744,6 +746,7 @@ clean-drops: clean-download-jaxp-drop cl clean-drops: clean-download-jaxp-drop clean-download-jaf-drop \ clean-download-jaxws-drop if [ -e drops ] ; then \ + rm -f drops/*.old ; \ rmdir drops ; \ fi rm -f stamps/download-drops.stamp @@ -1303,21 +1306,20 @@ clean-icedtea-debug: rm -rf $(DEBUG_BUILD_OUTPUT_DIR) rm -f stamps/icedtea-debug.stamp -stamps/icedtea-against-icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ - stamps/icedtea.stamp stamps/add-cacao.stamp stamps/add-zero.stamp stamps/add-plugin.stamp \ - stamps/add-netx.stamp stamps/add-systemtap.stamp stamps/add-pulseaudio.stamp stamps/add-nss.stamp \ - stamps/add-tzdata-support.stamp +stamps/icedtea-against-icedtea.stamp: stamps/icedtea.stamp stamps/add-cacao.stamp stamps/add-zero.stamp \ + stamps/add-plugin.stamp stamps/add-netx.stamp stamps/add-systemtap.stamp stamps/add-pulseaudio.stamp \ + stamps/add-nss.stamp stamps/add-tzdata-support.stamp mkdir -p stamps touch stamps/icedtea-against-icedtea.stamp clean-icedtea-against-icedtea: clean-add-zero clean-add-cacao clean-add-plugin clean-add-netx \ - clean-add-systemtap clean-add-pulseaudio clean-add-nss clean-add-tzdata-support + clean-add-systemtap clean-add-pulseaudio clean-add-nss clean-add-tzdata-support rm -f stamps/icedtea-against-icedtea.stamp -stamps/icedtea-debug-against-icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \ - stamps/icedtea-debug.stamp stamps/add-cacao-debug.stamp stamps/add-zero-debug.stamp \ - stamps/add-plugin-debug.stamp stamps/add-netx-debug.stamp stamps/add-systemtap-debug.stamp \ - stamps/add-pulseaudio-debug.stamp stamps/add-nss-debug.stamp stamps/add/tzdata-support-debug.stamp +stamps/icedtea-debug-against-icedtea.stamp: stamps/icedtea-debug.stamp stamps/add-cacao-debug.stamp \ + stamps/add-zero-debug.stamp stamps/add-plugin-debug.stamp stamps/add-netx-debug.stamp \ + stamps/add-systemtap-debug.stamp stamps/add-pulseaudio-debug.stamp stamps/add-nss-debug.stamp \ + stamps/add/tzdata-support-debug.stamp mkdir -p stamps touch stamps/icedtea-debug-against-icedtea.stamp @@ -1560,7 +1562,7 @@ clean-add-tzdata-support-debug: # =================== stamps/icedtea-ecj.stamp: stamps/bootstrap-directory-symlink-ecj.stamp \ - $(OPENJDK_ECJ_TREE) stamps/cacao.stamp stamps/rewrite-rhino.stamp + $(OPENJDK_ECJ_TREE) stamps/cacao.stamp stamps/rewrite-rhino.stamp $(ARCH_PREFIX) $(MAKE) \ $(ICEDTEA_ENV_ECJ) \ -C openjdk-ecj/ \ @@ -1573,6 +1575,131 @@ clean-icedtea-ecj: clean-icedtea-ecj: rm -rf $(ECJ_BUILD_OUTPUT_DIR) rm -f stamps/icedtea-ecj.stamp + +stamps/icedtea-against-ecj.stamp: stamps/icedtea-ecj.stamp stamps/add-plugin-ecj.stamp \ + stamps/add-netx-ecj.stamp stamps/add-systemtap-ecj.stamp stamps/add-pulseaudio-ecj.stamp \ + stamps/add-nss-ecj.stamp stamps/add-tzdata-support-ecj.stamp + mkdir -p stamps + touch stamps/icedtea-against-ecj.stamp + +clean-icedtea-against-ecj: clean-add-plugin-ecj clean-add-netx-ecj clean-add-systemtap-ecj \ + clean-add-pulseaudio-ecj clean-add-nss-ecj clean-add-tzdata-support-ecj + rm -f stamps/icedtea-against-ecj.stamp + +stamps/add-plugin-ecj.stamp: stamps/plugin.stamp stamps/icedtea-ecj.stamp +if ENABLE_PLUGIN + cp -pPRf $(PLUGIN_DIR)/IcedTeaPlugin.so \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) + cp -pPRf $(PLUGIN_DIR)/IcedTeaPlugin.so \ + $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) + cp -pPRf $(abs_top_builddir)/liveconnect/lib/classes.jar \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/plugin.jar + cp -pPRf $(abs_top_builddir)/liveconnect/lib/classes.jar \ + $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/plugin.jar +endif + touch stamps/add-plugin-ecj.stamp + +clean-add-plugin-ecj: + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/IcedTeaPlugin.so + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)/IcedTeaPlugin.so + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/plugin.jar + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/plugin.jar + rm -f stamps/add-plugin-ecj.stamp + +stamps/add-netx-ecj.stamp: stamps/netx-dist.stamp extra-lib/about.jar stamps/icedtea-ecj.stamp + cp -pPRf $(abs_top_builddir)/netx.build/lib/classes.jar \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/netx.jar + cp -pPRf $(abs_top_builddir)/netx.build/lib/classes.jar \ + $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/netx.jar + cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib + cp $(NETX_RESOURCE_DIR)/about.jnlp extra-lib/about.jar \ + $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib + cp $(NETX_SRCDIR)/javaws.1 \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1 + cp $(NETX_SRCDIR)/javaws.1 \ + $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/man/man1 + touch stamps/add-netx-ecj.stamp + +clean-add-netx-ecj: + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/netx.jar + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/netx.jar + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jnlp + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/about.jar + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jnlp + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/about.jar + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/man/man1/javaws.1 + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/man/man1/javaws.1 + rm -f stamps/add-netx-ecj.stamp + +stamps/add-systemtap-ecj.stamp: stamps/icedtea-ecj.stamp +if ENABLE_SYSTEMTAP + mkdir -p $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/tapset + grep "client IGNORE" $(BUILD_JRE_ARCH_DIR)/jvm.cfg; \ + if test $$? -eq 0; then \ + sed -e '/\/client\/libjvm.so/d' \ + < $(abs_top_builddir)/tapset/hotspot.stp \ + > $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \ + sed -e '/\/client\/libjvm.so/d' \ + < $(abs_top_builddir)/tapset/hotspot_jni.stp \ + > $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \ + else \ + cp $(abs_top_builddir)/tapset/hotspot.stp \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \ + cp $(abs_top_builddir)/tapset/hotspot_jni.stp \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \ + fi + cp $(abs_top_builddir)/tapset/jstack.stp \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/tapset/jstack.stp +endif + touch stamps/add-systemtap-ecj.stamp + +clean-add-systemtap-ecj: + rm -rf $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/tapset + rm -f stamps/add-systemtap-ecj.stamp + +stamps/add-pulseaudio-ecj.stamp: stamps/icedtea-ecj.stamp $(PULSE_JAVA_TARGET) +if ENABLE_PULSE_JAVA + cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR) + cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \ + $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR) + cp -pPRf $(PULSE_JAVA_BUILDDIR)/pulse-java.jar \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext + cp -pPRf $(PULSE_JAVA_BUILDDIR)/pulse-java.jar \ + $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/ext + (cd $(PULSE_JAVA_JAVA_SRCDIR) && \ + $(ZIP) -qur $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/src.zip org ) +endif + touch stamps/add-pulseaudio-ecj.stamp + +# Note: for simplicity, we don't revert the update of src.zip +clean-add-pulseaudio-ecj: + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)/libpulse-java.so + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext/pulse-java.jar + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2re-image/lib/ext/pulse-java.jar + rm -f stamps/add-pulseaudio-ecj.stamp + +stamps/add-nss-ecj.stamp: stamps/icedtea-ecj.stamp + cp $(abs_top_builddir)/nss.cfg \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/security; + touch stamps/add-nss-ecj.stamp + +clean-add-nss-ecj: + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/security/nss.cfg + rm -f stamps/add-nss-ecj.stamp + +stamps/add-tzdata-support-ecj.stamp: stamps/icedtea.stamp +if WITH_TZDATA_DIR + cp $(abs_top_builddir)/tz.properties \ + $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib; +endif + touch stamps/add-tzdata-support-ecj.stamp + +clean-add-tzdata-support-ecj: + rm -f $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/tz.properties + rm -f stamps/add-tzdata-support-ecj.stamp # Rebuild targets @@ -1607,15 +1734,6 @@ else $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)/server @echo "Hotspot is served:" $(BUILD_OUTPUT_DIR)/j2sdk-image endif - -stamps/icedtea-against-ecj.stamp: \ - stamps/bootstrap-directory-symlink-ecj.stamp \ - stamps/icedtea-ecj.stamp - mkdir -p stamps - touch stamps/icedtea-against-ecj.stamp - -clean-icedtea-against-ecj: - rm -f stamps/icedtea-against-ecj.stamp # Plugin From bugzilla-daemon at icedtea.classpath.org Fri Sep 24 21:43:49 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 25 Sep 2010 04:43:49 +0000 Subject: [Bug 560] New: Building failed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=560 Summary: Building failed Product: IcedTea Version: 6-1.9 Platform: alpha OS/Version: Linux Status: NEW Severity: blocker Priority: P2 Component: IcedTea6 AssignedTo: unassigned at icedtea.classpath.org ReportedBy: dot618point at gmail.com ...... cd /home/zheng/icedtea6-1.9/openjdk.build-ecj && \ /usr/bin/zip -rq9 /home/zheng/icedtea6-1.9/openjdk.build-ecj/tmp/sec-bin.zip classes/javax/net classes/javax/security/cert classes/com/sun/net/ssl classes/com/sun/security/cert classes/sun/net/www/protocol/https classes/sun/security/pkcs12 classes/sun/security/ssl classes/sun/security/krb5/*.class classes/sun/security/krb5/internal/*.class classes/sun/security/krb5/internal/ccache classes/sun/security/krb5/internal/crypto classes/sun/security/krb5/internal/ktab classes/sun/security/krb5/internal/rcache classes/sun/security/krb5/internal/util classes/sun/security/jgss/spi/GSSContextSpi.class >>>Making sec-files-win @ Sun Dec 5 05:27:14 CST 2010 ... >>>Making jgss-files @ Sun Dec 5 05:27:14 CST 2010 ... >>>Finished making images @ Sun Dec 5 05:27:14 CST 2010 ... make[3]: Leaving directory `/home/zheng/icedtea6-1.9/openjdk-ecj/jdk/make' make[2]: Leaving directory `/home/zheng/icedtea6-1.9/openjdk-ecj' Control linux alpha 1.6.0_20 build_product_image build finished: 10-12-05 05:27 Control linux alpha 1.6.0_20 all_product_build build finished: 10-12-05 05:27 Control linux alpha 1.6.0_20 all build finished: 10-12-05 05:27 make[1]: Leaving directory `/home/zheng/icedtea6-1.9/openjdk-ecj' ecj-poured IcedTea is served: /home/zheng/icedtea6-1.9/openjdk.build-ecj mkdir -p stamps touch stamps/icedtea-ecj.stamp mkdir -p stamps touch stamps/icedtea-against-ecj.stamp rm -f /home/zheng/icedtea6-1.9/bootstrap/icedtea ln -s \ /home/zheng/icedtea6-1.9/openjdk.build-ecj/j2sdk-image/ /home/zheng/icedtea6-1.9/bootstrap/icedtea if ! test -d /home/zheng/icedtea6-1.9/bootstrap/icedtea/include; then \ ln -sf /home/zheng/icedtea6-1.9/openjdk.build-ecj/include /home/zheng/icedtea6-1.9/bootstrap/icedtea/include; \ fi mkdir -p stamps touch stamps/bootstrap-directory.stamp mkdir -p bootstrap rm -f /home/zheng/icedtea6-1.9/bootstrap/jdk1.6.0 ln -sf /home/zheng/icedtea6-1.9/bootstrap/icedtea /home/zheng/icedtea6-1.9/bootstrap/jdk1.6.0; \ if ! /home/zheng/icedtea6-1.9/bootstrap/jdk1.6.0/bin/java -version ; \ then \ echo "/home/zheng/icedtea6-1.9/bootstrap/jdk1.6.0/bin/java" \ "cannot be found or is corrupted." ; \ exit 1; \ fi Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object /home/zheng/icedtea6-1.9/bootstrap/jdk1.6.0/bin/java cannot be found or is corrupted. make: *** [stamps/bootstrap-directory-symlink.stamp] Error 1 root [ icedtea6-1.9 ]# -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Sep 24 21:46:19 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 25 Sep 2010 04:46:19 +0000 Subject: [Bug 560] Building failed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=560 ------- Comment #1 from dot618point at gmail.com 2010-09-25 04:46 ------- Is there any different between ~/openjdk.build-ecj/bin/java and ~/openjdk.build-ecj/j2sdk-image/bin/java ( and so on)? Command 'java' in directory '~/openjdk.build-ecj/bin/java' will not report this error. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Fri Sep 24 21:54:09 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 25 Sep 2010 04:54:09 +0000 Subject: [Bug 561] New: javac error Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=561 Summary: javac error Product: IcedTea Version: 6-1.9 Platform: alpha OS/Version: Linux Status: NEW Severity: blocker Priority: P2 Component: IcedTea6 AssignedTo: unassigned at icedtea.classpath.org ReportedBy: dot618point at gmail.com root [ bin ]# cat Hello.java public class Hello { public static void main(String[] args) { System.out.println("Hello World."); } } root [ bin ]# ./javac Hello.java An exception has occurred in the compiler (1.6.0_20). Please file a bug at the Java Developer Connection (http://java.sun.com/webapps/bugreport) after checking the Bug Parade for duplicates. Include your program and the following diagnostic in your report. Thank you. java.lang.IllegalMonitorStateException at java.util.concurrent.locks.ReentrantLock$Sync.tryRelease(ReentrantLock.java:155) at java.util.concurrent.locks.AbstractQueuedSynchronizer.release(AbstractQueuedSynchronizer.java:1262) at java.util.concurrent.locks.ReentrantLock.unlock(ReentrantLock.java:459) at com.sun.tools.javac.zip.ZipFileIndex.getZipFileIndex(ZipFileIndex.java:145) at com.sun.tools.javac.util.JavacFileManager.openArchive(JavacFileManager.java:653) at com.sun.tools.javac.util.JavacFileManager.listDirectory(JavacFileManager.java:342) at com.sun.tools.javac.util.JavacFileManager.list(JavacFileManager.java:926) at com.sun.tools.javac.jvm.ClassReader.fillIn(ClassReader.java:2092) at com.sun.tools.javac.jvm.ClassReader.complete(ClassReader.java:1795) at com.sun.tools.javac.code.Symbol.complete(Symbol.java:400) at com.sun.tools.javac.comp.Enter.visitTopLevel(Enter.java:291) at com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:454) at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:252) at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:266) at com.sun.tools.javac.comp.Enter.complete(Enter.java:474) at com.sun.tools.javac.comp.Enter.main(Enter.java:459) at com.sun.tools.javac.main.JavaCompiler.enterTrees(JavaCompiler.java:895) at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:797) at com.sun.tools.javac.main.Main.compile(Main.java:380) at com.sun.tools.javac.main.Main.compile(Main.java:306) at com.sun.tools.javac.main.Main.compile(Main.java:297) at com.sun.tools.javac.Main.compile(Main.java:82) at com.sun.tools.javac.Main.main(Main.java:67) -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Sat Sep 25 05:05:26 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sat, 25 Sep 2010 12:05:26 +0000 Subject: [Bug 560] Building failed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=560 ------- Comment #2 from doko at ubuntu.com 2010-09-25 12:05 ------- reproducible: https://buildd.debian.org/status/package.php?p=openjdk-6&suite=experimental -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Sat Sep 25 21:42:35 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Sun, 26 Sep 2010 04:42:35 +0000 Subject: [Bug 560] Building failed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=560 ------- Comment #3 from dot618point at gmail.com 2010-09-26 04:42 ------- I think the problem is in '~/icedtea6-1.9/openjdk-ecj/hotspot/src/share/vm/classfile/systemDictionary.cpp:734' 733 // Do actual loading 734 k = load_instance_class(name, class_loader, THREAD); (gdb) p k $3 = { = { = {_handle = 0x0}, }, } but I don't know why -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From dlila at icedtea.classpath.org Fri Sep 24 08:07:04 2010 From: dlila at icedtea.classpath.org (dlila at icedtea.classpath.org) Date: Fri, 24 Sep 2010 15:07:04 +0000 Subject: /hg/gfx-test: Always set the normalization hint for graphics2D o... Message-ID: changeset 39e99963d1a1 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=39e99963d1a1 author: Denis Lila date: Fri Sep 24 11:07:17 2010 -0400 Always set the normalization hint for graphics2D objects of TestImages to eliminate any differences caused by defaults in different java implementations diffstat: 1 file changed, 3 insertions(+), 1 deletion(-) src/org/gfxtest/framework/TestImage.java | 4 +++- diffs (14 lines): diff -r 8bdbaf02b8e6 -r 39e99963d1a1 src/org/gfxtest/framework/TestImage.java --- a/src/org/gfxtest/framework/TestImage.java Fri Sep 17 13:31:48 2010 +0200 +++ b/src/org/gfxtest/framework/TestImage.java Fri Sep 24 11:07:17 2010 -0400 @@ -140,7 +140,9 @@ public class TestImage public Graphics2D getGraphics() { - return (Graphics2D) this.image.getGraphics(); + Graphics2D g2d = (Graphics2D) this.image.getGraphics(); + g2d.setRenderingHint(java.awt.RenderingHints.KEY_STROKE_CONTROL, java.awt.RenderingHints.VALUE_STROKE_PURE); + return g2d; } public int getWidth() From dlila at icedtea.classpath.org Fri Sep 24 08:23:21 2010 From: dlila at icedtea.classpath.org (dlila at icedtea.classpath.org) Date: Fri, 24 Sep 2010 15:23:21 +0000 Subject: /hg/gfx-test: Added SpecialCases test. Message-ID: changeset cc2470527f60 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=cc2470527f60 author: Denis Lila date: Fri Sep 24 11:22:11 2010 -0400 Added SpecialCases test. diffstat: 2 files changed, 5 insertions(+), 3 deletions(-) Makefile | 6 ++++-- src/org/gfxtest/reporter/Reporter.java | 2 +- diffs (35 lines): diff -r 39e99963d1a1 -r cc2470527f60 Makefile --- a/Makefile Fri Sep 24 11:07:17 2010 -0400 +++ b/Makefile Fri Sep 24 11:22:11 2010 -0400 @@ -105,7 +105,8 @@ TESTSUITE_CLASSES = \ $(CLASSES)/$(TESTSUITE_DIR)/DashedPolylines.class \ $(CLASSES)/$(TESTSUITE_DIR)/DashedPolygons.class \ $(CLASSES)/$(TESTSUITE_DIR)/DashedRectangles.class \ - $(CLASSES)/$(TESTSUITE_DIR)/DashedRoundRectangles.class + $(CLASSES)/$(TESTSUITE_DIR)/DashedRoundRectangles.class \ + $(CLASSES)/$(TESTSUITE_DIR)/SpecialCases.class COMPARE_RESULTS = \ $(RESULTS)/AALines \ @@ -135,7 +136,8 @@ COMPARE_RESULTS = \ $(RESULTS)/DashedPolylines \ $(RESULTS)/DashedPolygons \ $(RESULTS)/DashedRectangles \ - $(RESULTS)/DashedRoundRectangles + $(RESULTS)/DashedRoundRectangles \ + $(RESULTS)/SpecialCases # targets for all test suites TESTSUITES = $(shell ls -1 src/org/gfxtest/testsuites | sed -n -e 's/\([A-Za-z0-9]*\)\.java/\1/p') diff -r 39e99963d1a1 -r cc2470527f60 src/org/gfxtest/reporter/Reporter.java --- a/src/org/gfxtest/reporter/Reporter.java Fri Sep 24 11:07:17 2010 -0400 +++ b/src/org/gfxtest/reporter/Reporter.java Fri Sep 24 11:22:11 2010 -0400 @@ -64,7 +64,7 @@ public class Reporter private static final String OUTPUT_FILE_NAME = "index.html"; - private static final String[] SPECTESTS = new String[] {"BlankImage"}; + private static final String[] SPECTESTS = new String[] {"BlankImage", "SpecialCases"}; private static final String[] ENTITIES = new String[] { "Lines", From dlila at icedtea.classpath.org Fri Sep 24 08:30:06 2010 From: dlila at icedtea.classpath.org (dlila at icedtea.classpath.org) Date: Fri, 24 Sep 2010 15:30:06 +0000 Subject: /hg/gfx-test: Added the SpecialCase.java file. (I'm sorry, I for... Message-ID: changeset efdbddf209db in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=efdbddf209db author: Denis Lila date: Fri Sep 24 11:30:24 2010 -0400 Added the SpecialCase.java file. (I'm sorry, I forgot to do hg add when pushing the previous changeset) diffstat: 1 file changed, 188 insertions(+) src/org/gfxtest/testsuites/SpecialCases.java | 188 ++++++++++++++++++++++++++ diffs (192 lines): diff -r cc2470527f60 -r efdbddf209db src/org/gfxtest/testsuites/SpecialCases.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/testsuites/SpecialCases.java Fri Sep 24 11:30:24 2010 -0400 @@ -0,0 +1,188 @@ +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.testsuites; + +import java.awt.*; +import java.awt.geom.Path2D.Double; +import java.awt.geom.Path2D; + +import org.gfxtest.framework.*; +import org.gfxtest.framework.annotations.*; + +import java.awt.image.BufferedImage; + +/** + * This test renders various special cases, such as curves with cusps, curves + * with identical control points, curves with width such that the offset curves + * have cusps, curves with very high curvatures, paths such as moveTo(0, 0); + * p.lineTo(100,100);p.lineTo(100,100); (we test this last one to make sure + * that the join is drawn even though the lines are at an angle of 180 degrees. + * For each path, we draw it, and we also draw its stroked version. + * + * @author Pavel Tisnovsky + * @author Denis Lila + */ + at TestType(TestTypes.RENDER_TEST) + at RenderStyle(RenderStyles.NORMAL) + at Transformation(Transformations.NONE) + at Zoom(1) +public class SpecialCases extends GfxTest +{ + private void drawPath(Path2D p, float pw, Graphics2D g, int w) { + BasicStroke s = new BasicStroke(pw, BasicStroke.CAP_SQUARE, BasicStroke.JOIN_ROUND); + g.setColor(java.awt.Color.black); + Shape shape = s.createStrokedShape(p); + g.draw(shape); + g.translate(w, 0); + Stroke orig = g.getStroke(); + g.setStroke(s); + g.draw(p); + g.setStroke(orig); + g.translate(-w, 0); + } + + public TestResult testIdenticalCtrlCub(TestImage image, Graphics2D graphics) + { + int w = image.getWidth()/2; + int h = image.getHeight(); + int s = Math.min(w, h); + Path2D p = new Path2D.Double(); + p.moveTo(0, 0); + // identical first 2 points + p.curveTo(0, 0, 0.1*s, 0.2*s, 0.2*s, 0.2*s); + // identical 2nd and 3rd points + p.curveTo(0.35*s, 0.8*s, 0.35*s, 0.8*s, 0.45*s, 0.1*s); + // identical 3rd and 4th points. + p.curveTo(0.60*s, 0.1*s, 0.60*s, 0.70*s, 0.60*s, 0.70*s); + // identical first 3 points + p.curveTo(0.6*s, 0.7*s, 0.6*s, 0.7*s, 0.5*s, 0.8*s); + // identical last 3 points + p.curveTo(0.3*s, 0.8*s, 0.3*s, 0.8*s, 0.3*s, 0.8*s); + // all points identical + p.moveTo(0.1*s, 0.8*s);p.curveTo(0.1*s, 0.8*s, 0.1*s, 0.8*s, 0.1*s, 0.8*s); + drawPath(p, 0.15f*s, graphics, w); + return TestResult.PASSED; + } + public TestResult testIdenticalCtrlQuad(TestImage image, Graphics2D graphics) + { + int w = image.getWidth()/2; + int h = image.getHeight(); + int s = Math.min(w, h); + Path2D p = new Path2D.Double(); + p.moveTo(0, 0); + // identical first 2 points + p.quadTo(0, 0, 0.1*s, 0.2*s); + // identical 2nd and 3rd points + p.quadTo(0.7*s, 0.6*s, 0.7*s, 0.6*s); + // no identical points. We just want to see what a quad looks like. + p.quadTo(1.0*s, 0.7*s, 0.1*s, 0.8*s); + // all points identical + p.moveTo(0.7*s, 0.3*s);p.quadTo(0.7*s, 0.3*s, 0.7*s, 0.3*s); + drawPath(p, 0.2f*s, graphics, w); + return TestResult.PASSED; + } + public TestResult test180Turn(TestImage im, Graphics2D g) { + int w = im.getWidth()/2; + int h = im.getHeight(); + int s = Math.min(w, h); + int numlines = 6; + double cx = 0.5*s, cy = 0.5 * s; + for (int i = 0; i < numlines; i++) { + double dx = 0.4*s * Math.cos((i * 2 * Math.PI) / numlines); + double dy = 0.4*s * Math.sin((i * 2 * Math.PI) / numlines); + Path2D p = new Path2D.Double(); + p.moveTo(cx, cy); + p.lineTo(cx + dx, cy + dy); + p.lineTo(cx, cy); + drawPath(p, (float)Math.pow(0.05*s*(i+1), 0.8), g, w); + } + return TestResult.PASSED; + } + public TestResult testClose(TestImage im, Graphics2D g) { + int w = im.getWidth()/2; + int h = im.getHeight(); + int s = Math.min(w, h); + Path2D p = new Path2D.Double(); + p.moveTo(0.1*s, 0.1*s); + p.lineTo(0.8*s, 0.4*s); + p.quadTo(0.55*s, 1.0*s, 0.6*s, 0.5*s); + p.curveTo(0.1*s, 0.3*s, 0.0*s, 0.9*s, 0.65*s, 0.9*s); + p.closePath(); + drawPath(p, 0.1f*s, g, w); + return TestResult.PASSED; + } + public TestResult testSharpTurn1(TestImage im, Graphics2D g) { + int w = im.getWidth()/2; + int h = im.getHeight(); + int s = Math.min(w, h); + Path2D p = new Path2D.Double(); + p.moveTo(0, 0); + p.curveTo(s, s, 0.4*s, 0.6*s, 0.1*s, -0.36*s); + drawPath(p, 0.25f*s, g, w); + return TestResult.PASSED; + } + public TestResult testSharpTurn2(TestImage im, Graphics2D g) { + int w = im.getWidth()/2; + int h = im.getHeight(); + int s = Math.min(w, h); + Path2D p = new Path2D.Double(); + p.moveTo(0, 0); + p.curveTo(s, s, 0.4*s, 0.6*s, 0.1*s, -0.375*s); + drawPath(p, 0.25f*s, g, w); + return TestResult.PASSED; + } + public TestResult testCusp(TestImage im, Graphics2D g) { + int w = im.getWidth()/2; + int h = im.getHeight(); + int s = Math.min(w, h); + Path2D p = new Path2D.Double(); + p.moveTo(0.1*s, 0.1*s); + p.curveTo(0.9*s, 0.9*s, 0.1*s, 0.9*s, 0.9*s, 0.1*s); + drawPath(p, 0.45f*s, g, w); + return TestResult.PASSED; + } + + public static void main(String[] args) + { + new SpecialCases().runTestSuite(args); + } +} + From bugzilla-daemon at icedtea.classpath.org Mon Sep 27 02:17:00 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Sep 2010 09:17:00 +0000 Subject: [Bug 560] Building failed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=560 ------- Comment #4 from gbenson at redhat.com 2010-09-27 09:16 ------- "java/lang/NoClassDefFoundError: java/lang/Object" often means your classpath is wrong. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 27 05:51:35 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Sep 2010 12:51:35 +0000 Subject: [Bug 560] Building failed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=560 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|blocker |normal Component|IcedTea6 |Zero -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 27 05:55:25 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Sep 2010 12:55:25 +0000 Subject: [Bug 561] javac error Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=561 gnu_andrew at member.fsf.org changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|blocker |normal Component|IcedTea6 |Zero -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From bugzilla-daemon at icedtea.classpath.org Mon Sep 27 05:58:23 2010 From: bugzilla-daemon at icedtea.classpath.org (bugzilla-daemon at icedtea.classpath.org) Date: Mon, 27 Sep 2010 12:58:23 +0000 Subject: [Bug 560] Building failed Message-ID: http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=560 ------- Comment #5 from gnu_andrew at member.fsf.org 2010-09-27 12:58 ------- doko, that doesn't look like the same failure. It fails in test_gamma. -- Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. From asu at redhat.com Mon Sep 27 12:25:09 2010 From: asu at redhat.com (Andrew Su) Date: Mon, 27 Sep 2010 15:25:09 -0400 (EDT) Subject: [RFC] [Plugin] Fixes 100% cpu load In-Reply-To: <1609662982.427491285615482463.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Message-ID: <393254505.427511285615509355.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Hello, This patch fixes the following: *Plugin goes into a deadlock waiting for another thread to initialize applet, and no more threads are available to consume messages. *Plugin handles "destroy" message when another thread trying to create the applet is kicked off processor before setting the status to PRE_INIT. Example. We have 2 MessageConsumer threads. Passes "destroy" message to both of them for applet 1 and applet 2. Thread 1: Spinlock waiting for another thread to initialize applet 1. Thread 2: Spinlock waiting for another thread to initialize applet 2. Both threads are now in deadlock. Proposed Patch: When message is destroy, don't spinlock, handle it right away. -Problem with this: handles destroy right before we start initializing the applet. -Fix to new problem: Synchronize the two blocks --Case 1:If in process of initializing, finish initializing. handle the destroy. --Case 2:If destroy already handled, don't initialize. Cheers, Andrew -------------- next part -------------- A non-text attachment was scrubbed... Name: 20100927_destroy_deadlock.patch Type: text/x-patch Size: 7959 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100927/3b08d62d/20100927_destroy_deadlock.patch From ahughes at redhat.com Tue Sep 28 10:17:04 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Tue, 28 Sep 2010 18:17:04 +0100 Subject: [RFC] [Plugin] Fixes 100% cpu load In-Reply-To: <393254505.427511285615509355.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> References: <1609662982.427491285615482463.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> <393254505.427511285615509355.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Message-ID: <20100928171704.GP23441@rivendell.middle-earth.co.uk> On 15:25 Mon 27 Sep , Andrew Su wrote: > Hello, > > This patch fixes the following: > *Plugin goes into a deadlock waiting for another thread to initialize applet, and no more threads are available to consume messages. > *Plugin handles "destroy" message when another thread trying to create the applet is kicked off processor before setting the status to PRE_INIT. > > > Example. > We have 2 MessageConsumer threads. > Passes "destroy" message to both of them for applet 1 and applet 2. > Thread 1: Spinlock waiting for another thread to initialize applet 1. > Thread 2: Spinlock waiting for another thread to initialize applet 2. > Both threads are now in deadlock. > > Proposed Patch: > When message is destroy, don't spinlock, handle it right away. > -Problem with this: handles destroy right before we start initializing the applet. > -Fix to new problem: Synchronize the two blocks > --Case 1:If in process of initializing, finish initializing. handle the destroy. > --Case 2:If destroy already handled, don't initialize. > > > Cheers, > Andrew Some points: * Why is the access to appLock protected by mainLock in the first block but the later get() is not? * On the same subject, why is appLock a Hashtable rather than a HashMap? Do you need the synchronisation this provides? If so, would it not be better to synchronise a HashMap or use one of the concurrent collections with better performance? It's unclear whether the Hashtable's internal lock is protecting its contents, whether mainLock is or some strange combination of both. * The second synchronised block is far too big. Is this really necessary? * Seems to be using 8 space indentation, making this hard to read. It would help a lot if you could explain how this solution is supposed to work, and how you intend appLock to function. To that end, this should be documented in the code too. > diff -r 5c0d756b4bb6 plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > --- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Fri Sep 24 15:25:51 2010 +0100 > +++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Mon Sep 27 14:59:43 2010 -0400 > @@ -360,6 +360,9 @@ > > private static Long requestIdentityCounter = 0L; > > + private static Hashtable appLock = new Hashtable(); > + private static int[] mainLock = {0}; > + > /** > * Null constructor to allow instantiation via newInstance() > */ > @@ -505,78 +508,92 @@ > */ > public static void handleMessage(int identifier, int reference, String message) > { > - > + synchronized(mainLock){ > + if (!appLock.containsKey(identifier)){ > + boolean[] lock = {false}; > + appLock.put(identifier, lock); > + } > + } > + > PluginDebug.debug("PAV handling: " + message); > > try { > if (message.startsWith("handle")) { > - > - // Extract the information from the message > - String[] msgParts = new String[4]; > - for (int i=0; i < 3; i++) { > - int spaceLocation = message.indexOf(' '); > - int nextSpaceLocation = message.indexOf(' ', spaceLocation+1); > - msgParts[i] = message.substring(spaceLocation + 1, nextSpaceLocation); > - message = message.substring(nextSpaceLocation + 1); > + synchronized(appLock.get(identifier)){ > + if (!status.containsKey(identifier)){ > + // Extract the information from the message > + String[] msgParts = new String[4]; > + for (int i=0; i < 3; i++) { > + int spaceLocation = message.indexOf(' '); > + int nextSpaceLocation = message.indexOf(' ', spaceLocation+1); > + msgParts[i] = message.substring(spaceLocation + 1, nextSpaceLocation); > + message = message.substring(nextSpaceLocation + 1); > + } > + > + long handle = Long.parseLong(msgParts[0]); > + String width = msgParts[1]; > + String height = msgParts[2]; > + > + int spaceLocation = message.indexOf(' ', "tag".length()+1); > + String documentBase = > + UrlUtil.decode(message.substring("tag".length() + 1, spaceLocation)); > + String tag = message.substring(spaceLocation+1); > + > + PluginDebug.debug ("Handle = " + handle + "\n" + > + "Width = " + width + "\n" + > + "Height = " + height + "\n" + > + "DocumentBase = " + documentBase + "\n" + > + "Tag = " + tag); > + > + status.put(identifier, PAV_INIT_STATUS.PRE_INIT); > + PluginAppletViewer.parse > + (identifier, handle, width, height, > + new StringReader(tag), > + new URL(documentBase)); > + > + > + int maxWait = APPLET_TIMEOUT; // wait for applet to fully load > + int wait = 0; > + while (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > + (wait < maxWait)) { > + > + try { > + Thread.sleep(50); > + wait += 50; > + } catch (InterruptedException ie) { > + // just wait > + } > + } > + > + if (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > + throw new Exception("Applet initialization timeout"); > + > + PluginAppletViewer oldFrame = applets.get(identifier); > + reFrame(oldFrame, oldFrame.identifier, oldFrame.statusMsgStream, > + handle, oldFrame.panel); > + } > + appLock.get(identifier).notifyAll(); > } > - > - long handle = Long.parseLong(msgParts[0]); > - String width = msgParts[1]; > - String height = msgParts[2]; > - > - int spaceLocation = message.indexOf(' ', "tag".length()+1); > - String documentBase = > - UrlUtil.decode(message.substring("tag".length() + 1, spaceLocation)); > - String tag = message.substring(spaceLocation+1); > - > - PluginDebug.debug ("Handle = " + handle + "\n" + > - "Width = " + width + "\n" + > - "Height = " + height + "\n" + > - "DocumentBase = " + documentBase + "\n" + > - "Tag = " + tag); > - > - status.put(identifier, PAV_INIT_STATUS.PRE_INIT); > - PluginAppletViewer.parse > - (identifier, handle, width, height, > - new StringReader(tag), > - new URL(documentBase)); > - > - > - int maxWait = APPLET_TIMEOUT; // wait for applet to fully load > - int wait = 0; > - while (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > - (wait < maxWait)) { > - > - try { > - Thread.sleep(50); > - wait += 50; > - } catch (InterruptedException ie) { > - // just wait > - } > - } > - > - if (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > - throw new Exception("Applet initialization timeout"); > - > - PluginAppletViewer oldFrame = applets.get(identifier); > - reFrame(oldFrame, oldFrame.identifier, oldFrame.statusMsgStream, > - handle, oldFrame.panel); > - > } else { > - PluginDebug.debug ("Handling message: " + message + " instance " + identifier + " " + Thread.currentThread()); > - > - // Wait till initialization finishes > - while (!applets.containsKey(identifier) && > - ( > - !status.containsKey(identifier) || > - status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > - ) > - ); > - > - // don't bother processing further for inactive applets > - if (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > - return; > - > + synchronized(appLock.get(identifier)){ > + PluginDebug.debug ("Handling message: " + message + " instance " + identifier + " " + Thread.currentThread()); > + > + // Wait till initialization finishes > + while (!applets.containsKey(identifier) && > + ( > + !status.containsKey(identifier) || > + status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > + ) && !message.startsWith("destroy") > + ){ appLock.get(identifier).wait(5*1000000000);} > + > + if (message.startsWith("destroy")) > + applets.get(identifier).handleMessage(reference, message); > + > + // don't bother processing further for inactive applets > + if (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > + return; > + } > + > applets.get(identifier).handleMessage(reference, message); > } > } catch (Exception e) { -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From asu at redhat.com Tue Sep 28 10:46:13 2010 From: asu at redhat.com (Andrew Su) Date: Tue, 28 Sep 2010 13:46:13 -0400 (EDT) Subject: [RFC] [Plugin] Fixes 100% cpu load In-Reply-To: <20100928171704.GP23441@rivendell.middle-earth.co.uk> Message-ID: <374657112.566751285695973764.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> ----- "Dr Andrew John Hughes" wrote: > From: "Dr Andrew John Hughes" > To: "Andrew Su" > Cc: distro-pkg-dev at openjdk.java.net > Sent: Tuesday, September 28, 2010 1:17:04 PM GMT -05:00 US/Canada Eastern > Subject: Re: [RFC] [Plugin] Fixes 100% cpu load > > On 15:25 Mon 27 Sep , Andrew Su wrote: > > Hello, > > > > This patch fixes the following: > > *Plugin goes into a deadlock waiting for another thread to > initialize applet, and no more threads are available to consume > messages. > > *Plugin handles "destroy" message when another thread trying to > create the applet is kicked off processor before setting the status to > PRE_INIT. > > > > > > Example. > > We have 2 MessageConsumer threads. > > Passes "destroy" message to both of them for applet 1 and applet 2. > > Thread 1: Spinlock waiting for another thread to initialize applet > 1. > > Thread 2: Spinlock waiting for another thread to initialize applet > 2. > > Both threads are now in deadlock. > > > > Proposed Patch: > > When message is destroy, don't spinlock, handle it right away. > > -Problem with this: handles destroy right before we start > initializing the applet. > > -Fix to new problem: Synchronize the two blocks > > --Case 1:If in process of initializing, finish initializing. handle > the destroy. > > --Case 2:If destroy already handled, don't initialize. > > > > > > Cheers, > > Andrew > > Some points: > > * Why is the access to appLock protected by mainLock in the first > block > but the later get() is not? I've put that under mainLock because we don't want two thread or more inside the if statements and setting one of them setting it to one value then later after locking it, change the reference inside appLock. line 1 //synchronized(mainLock){ line 2 if (!appLock.containsKey(identifier)){ line 3 boolean[] lock = {false}; line 4 appLock.put(identifier, lock); line 5 } line 6 //} Without locking it here with mainLock we come to the following issue. -Thread 1: kicked off processor at line 3 -Thread 2: processes the if block, then continues to the later synchronized block (lock acquired) -Thread 1: resumes and reassign a new lock for identifier in appLock. Now thread 1 and thread 2 are holding two different locks. Locking the above would make sure that appLock will not get reassigned a different value later for the same identifier. > * On the same subject, why is appLock a Hashtable rather than a > HashMap? It could be changed to a HashMap, I'm sure it can even be implemented as array too. > Do you need the synchronisation this provides? If so, would it not be better > to synchronise a HashMap or use one of the concurrent collections with better > performance? I'm not quite sure I'm interpreting this question correctly, but the synchronization is done on the boolean[], which is much faster than doing it on something that would need to call a constructor. > It's unclear whether the Hashtable's internal lock is protecting its contents, > whether mainLock is or some strange combination of both. Hashtable does synchronization when adding and reading. > * The second synchronised block is far too big. Is this really > necessary? I would believe so, this goes back to the problem with destroying the applet while one thread is already in process of initializing it. > * Seems to be using 8 space indentation, making this hard to read. Will fix. > > It would help a lot if you could explain how this solution is supposed > to work, > and how you intend appLock to function. To that end, this should be > documented in > the code too. Will fix. > > > diff -r 5c0d756b4bb6 > plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > > --- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Fri > Sep 24 15:25:51 2010 +0100 > > +++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Mon > Sep 27 14:59:43 2010 -0400 > > @@ -360,6 +360,9 @@ > > > > private static Long requestIdentityCounter = 0L; > > > > + private static Hashtable appLock = new > Hashtable(); > > + private static int[] mainLock = {0}; > > + > > /** > > * Null constructor to allow instantiation via newInstance() > > */ > > @@ -505,78 +508,92 @@ > > */ > > public static void handleMessage(int identifier, int > reference, String message) > > { > > - > > + synchronized(mainLock){ > > + if (!appLock.containsKey(identifier)){ > > + boolean[] lock = {false}; > > + appLock.put(identifier, lock); > > + } > > + } > > + > > PluginDebug.debug("PAV handling: " + message); > > > > try { > > if (message.startsWith("handle")) { > > - > > - // Extract the information from the message > > - String[] msgParts = new String[4]; > > - for (int i=0; i < 3; i++) { > > - int spaceLocation = message.indexOf(' '); > > - int nextSpaceLocation = message.indexOf(' ', > spaceLocation+1); > > - msgParts[i] = message.substring(spaceLocation + 1, > nextSpaceLocation); > > - message = message.substring(nextSpaceLocation + 1); > > + synchronized(appLock.get(identifier)){ > > + if (!status.containsKey(identifier)){ > > + // Extract the information from the message > > + String[] msgParts = new String[4]; > > + for (int i=0; i < 3; i++) { > > + int spaceLocation = message.indexOf(' '); > > + int nextSpaceLocation = message.indexOf(' ', > spaceLocation+1); > > + msgParts[i] = message.substring(spaceLocation + 1, > nextSpaceLocation); > > + message = message.substring(nextSpaceLocation + > 1); > > + } > > + > > + long handle = Long.parseLong(msgParts[0]); > > + String width = msgParts[1]; > > + String height = msgParts[2]; > > + > > + int spaceLocation = message.indexOf(' ', > "tag".length()+1); > > + String documentBase = > > + > UrlUtil.decode(message.substring("tag".length() + 1, spaceLocation)); > > + String tag = message.substring(spaceLocation+1); > > + > > + PluginDebug.debug ("Handle = " + handle + "\n" + > > + "Width = " + width + "\n" + > > + "Height = " + height + "\n" + > > + "DocumentBase = " + documentBase > + "\n" + > > + "Tag = " + tag); > > + > > + status.put(identifier, > PAV_INIT_STATUS.PRE_INIT); > > + PluginAppletViewer.parse > > + (identifier, handle, width, height, > > + new StringReader(tag), > > + new URL(documentBase)); > > + > > + > > + int maxWait = APPLET_TIMEOUT; // wait for applet > to fully load > > + int wait = 0; > > + while > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > > + (wait < maxWait)) { > > + > > + try { > > + Thread.sleep(50); > > + wait += 50; > > + } catch (InterruptedException ie) { > > + // just wait > > + } > > + } > > + > > + if > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > > + throw new Exception("Applet initialization > timeout"); > > + > > + PluginAppletViewer oldFrame = > applets.get(identifier); > > + reFrame(oldFrame, oldFrame.identifier, > oldFrame.statusMsgStream, > > + handle, oldFrame.panel); > > + } > > + appLock.get(identifier).notifyAll(); > > } > > - > > - long handle = Long.parseLong(msgParts[0]); > > - String width = msgParts[1]; > > - String height = msgParts[2]; > > - > > - int spaceLocation = message.indexOf(' ', > "tag".length()+1); > > - String documentBase = > > - > UrlUtil.decode(message.substring("tag".length() + 1, spaceLocation)); > > - String tag = message.substring(spaceLocation+1); > > - > > - PluginDebug.debug ("Handle = " + handle + "\n" + > > - "Width = " + width + "\n" + > > - "Height = " + height + "\n" + > > - "DocumentBase = " + documentBase + > "\n" + > > - "Tag = " + tag); > > - > > - status.put(identifier, > PAV_INIT_STATUS.PRE_INIT); > > - PluginAppletViewer.parse > > - (identifier, handle, width, height, > > - new StringReader(tag), > > - new URL(documentBase)); > > - > > - > > - int maxWait = APPLET_TIMEOUT; // wait for applet > to fully load > > - int wait = 0; > > - while > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > > - (wait < maxWait)) { > > - > > - try { > > - Thread.sleep(50); > > - wait += 50; > > - } catch (InterruptedException ie) { > > - // just wait > > - } > > - } > > - > > - if > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > > - throw new Exception("Applet initialization > timeout"); > > - > > - PluginAppletViewer oldFrame = > applets.get(identifier); > > - reFrame(oldFrame, oldFrame.identifier, > oldFrame.statusMsgStream, > > - handle, oldFrame.panel); > > - > > } else { > > - PluginDebug.debug ("Handling message: " + message > + " instance " + identifier + " " + Thread.currentThread()); > > - > > - // Wait till initialization finishes > > - while (!applets.containsKey(identifier) && > > - ( > > - !status.containsKey(identifier) || > > - > status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > > - ) > > - ); > > - > > - // don't bother processing further for inactive > applets > > - if > (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > > - return; > > - > > + synchronized(appLock.get(identifier)){ > > + PluginDebug.debug ("Handling message: " + message > + " instance " + identifier + " " + Thread.currentThread()); > > + > > + // Wait till initialization finishes > > + while (!applets.containsKey(identifier) && > > + ( > > + !status.containsKey(identifier) || > > + > status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > > + ) && !message.startsWith("destroy") > > + ){ > appLock.get(identifier).wait(5*1000000000);} > > + > > + if (message.startsWith("destroy")) > > + applets.get(identifier).handleMessage(reference, > message); > > + > > + // don't bother processing further for inactive > applets > > + if > (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > > + return; > > + } > > + > > applets.get(identifier).handleMessage(reference, > message); > > } > > } catch (Exception e) { > > > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > Support Free Java! > Contribute to GNU Classpath and the OpenJDK > http://www.gnu.org/software/classpath > http://openjdk.java.net > PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 Thanks for your comments, I hoped I cleared up some of the questions you had. Any other comments or question is welcome. Cheers, Andrew From ahughes at redhat.com Tue Sep 28 13:27:46 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Tue, 28 Sep 2010 21:27:46 +0100 Subject: [RFC] [Plugin] Fixes 100% cpu load In-Reply-To: <374657112.566751285695973764.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> References: <20100928171704.GP23441@rivendell.middle-earth.co.uk> <374657112.566751285695973764.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Message-ID: <20100928202746.GA5255@rivendell.middle-earth.co.uk> On 13:46 Tue 28 Sep , Andrew Su wrote: > > ----- "Dr Andrew John Hughes" wrote: > > > From: "Dr Andrew John Hughes" > > To: "Andrew Su" > > Cc: distro-pkg-dev at openjdk.java.net > > Sent: Tuesday, September 28, 2010 1:17:04 PM GMT -05:00 US/Canada Eastern > > Subject: Re: [RFC] [Plugin] Fixes 100% cpu load > > > > On 15:25 Mon 27 Sep , Andrew Su wrote: > > > Hello, > > > > > > This patch fixes the following: > > > *Plugin goes into a deadlock waiting for another thread to > > initialize applet, and no more threads are available to consume > > messages. > > > *Plugin handles "destroy" message when another thread trying to > > create the applet is kicked off processor before setting the status to > > PRE_INIT. > > > > > > > > > Example. > > > We have 2 MessageConsumer threads. > > > Passes "destroy" message to both of them for applet 1 and applet 2. > > > Thread 1: Spinlock waiting for another thread to initialize applet > > 1. > > > Thread 2: Spinlock waiting for another thread to initialize applet > > 2. > > > Both threads are now in deadlock. > > > > > > Proposed Patch: > > > When message is destroy, don't spinlock, handle it right away. > > > -Problem with this: handles destroy right before we start > > initializing the applet. > > > -Fix to new problem: Synchronize the two blocks > > > --Case 1:If in process of initializing, finish initializing. handle > > the destroy. > > > --Case 2:If destroy already handled, don't initialize. > > > > > > > > > Cheers, > > > Andrew > > > > Some points: > > > > * Why is the access to appLock protected by mainLock in the first > > block > > but the later get() is not? > I've put that under mainLock because we don't want two thread or more inside the if statements and setting one of them setting it to one value then later after locking it, change the reference inside appLock. > > line 1 //synchronized(mainLock){ > line 2 if (!appLock.containsKey(identifier)){ > line 3 boolean[] lock = {false}; > line 4 appLock.put(identifier, lock); > line 5 } > line 6 //} > > Without locking it here with mainLock we come to the following issue. > -Thread 1: kicked off processor at line 3 > -Thread 2: processes the if block, then continues to the later synchronized block (lock acquired) > -Thread 1: resumes and reassign a new lock for identifier in appLock. > > Now thread 1 and thread 2 are holding two different locks. > > Locking the above would make sure that appLock will not get reassigned a different value later for the same identifier. > Yeah I get that. It's taken me a bit to get my head round it, but I think I understand what you're trying to do now and I think it could be done in a simpler way. On first reading, I didn't realise that you were also creating mainLock. As it is, it seems the logic is: 1. Maintain a map containing locks for each identifier. 2. If an identifier doesn't have a lock, create one. mainLock is used to make this concurrent. 3. Once we've established we have a lock, only process a message with an identifier if a message is not being processed with the same identifier. Otherwise, block. You can make this simpler by getting rid of mainLock and using a ConcurrentHashMap: Use: private static ConcurrentMap appLock = new ConcurrentHashMap(); in place of the current appLock and mainLock initialisation. Use: appLock.putIfAbsent(identifier, new Object()); in place of: > line 1 //synchronized(mainLock){ > line 2 if (!appLock.containsKey(identifier)){ > line 3 boolean[] lock = {false}; > line 4 appLock.put(identifier, lock); > line 5 } > line 6 //} putIfAbsent is the equivalent of doing: if (!map.containsKey(key)) return map.put(key, value); else return map.get(key); atomically (we ignore the return value). > > * On the same subject, why is appLock a Hashtable rather than a > > HashMap? > It could be changed to a HashMap, I'm sure it can even be implemented as array too. > > > > Do you need the synchronisation this provides? If so, would it not be better > > to synchronise a HashMap or use one of the concurrent collections with better > > performance? > I'm not quite sure I'm interpreting this question correctly, but the synchronization is done on the boolean[], which is much faster than doing it on something that would need to call a constructor. What I meant is that Hashtable has its own synchronisation i.e. every call is: lock(); doWork(); unlock(); where the lock is on the hashtable. The same is true of other 1.0 collection classes like Vector. If you don't need concurrency, this is inefficent. If you do, it's usually better to use one of the concurrency collections added in 1.5 which have better performance. The same is true of StringBuffer/Builder, with the former being synchronised. Using a boolean[] doesn't avoid construction, as you're creating and populating an array object. If you weren't creating an object, you wouldn't have a monitor to synchronise on. In the above, I've reverted to use Object as the lock as it's a lot clearer what's going on; I was assuming you were storing content in these arrays at first rather than just using them as locks. > > > It's unclear whether the Hashtable's internal lock is protecting its contents, > > whether mainLock is or some strange combination of both. > Hashtable does synchronization when adding and reading. > > > * The second synchronised block is far too big. Is this really > > necessary? > I would believe so, this goes back to the problem with destroying the applet while one thread is already in process of initializing it. > > > * Seems to be using 8 space indentation, making this hard to read. > Will fix. > Looking at the rest of the file, it seems you're not the initial culprit :-) Could you attach a copy of the changed file? It would be easier to examine than trying to read this diff, as essentially the whole method seems to be rewritten. > > > > It would help a lot if you could explain how this solution is supposed > > to work, > > and how you intend appLock to function. To that end, this should be > > documented in > > the code too. > Will fix. > What's still unclear to me is how these identifiers work and why this problem is solved by having one thread per identifier. > > > > > > diff -r 5c0d756b4bb6 > > plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > > > --- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Fri > > Sep 24 15:25:51 2010 +0100 > > > +++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Mon > > Sep 27 14:59:43 2010 -0400 > > > @@ -360,6 +360,9 @@ > > > > > > private static Long requestIdentityCounter = 0L; > > > > > > + private static Hashtable appLock = new > > Hashtable(); > > > + private static int[] mainLock = {0}; > > > + > > > /** > > > * Null constructor to allow instantiation via newInstance() > > > */ > > > @@ -505,78 +508,92 @@ > > > */ > > > public static void handleMessage(int identifier, int > > reference, String message) > > > { > > > - > > > + synchronized(mainLock){ > > > + if (!appLock.containsKey(identifier)){ > > > + boolean[] lock = {false}; > > > + appLock.put(identifier, lock); > > > + } > > > + } > > > + > > > PluginDebug.debug("PAV handling: " + message); > > > > > > try { > > > if (message.startsWith("handle")) { > > > - > > > - // Extract the information from the message > > > - String[] msgParts = new String[4]; > > > - for (int i=0; i < 3; i++) { > > > - int spaceLocation = message.indexOf(' '); > > > - int nextSpaceLocation = message.indexOf(' ', > > spaceLocation+1); > > > - msgParts[i] = message.substring(spaceLocation + 1, > > nextSpaceLocation); > > > - message = message.substring(nextSpaceLocation + 1); > > > + synchronized(appLock.get(identifier)){ > > > + if (!status.containsKey(identifier)){ > > > + // Extract the information from the message > > > + String[] msgParts = new String[4]; > > > + for (int i=0; i < 3; i++) { > > > + int spaceLocation = message.indexOf(' '); > > > + int nextSpaceLocation = message.indexOf(' ', > > spaceLocation+1); > > > + msgParts[i] = message.substring(spaceLocation + 1, > > nextSpaceLocation); > > > + message = message.substring(nextSpaceLocation + > > 1); > > > + } > > > + > > > + long handle = Long.parseLong(msgParts[0]); > > > + String width = msgParts[1]; > > > + String height = msgParts[2]; > > > + > > > + int spaceLocation = message.indexOf(' ', > > "tag".length()+1); > > > + String documentBase = > > > + > > UrlUtil.decode(message.substring("tag".length() + 1, spaceLocation)); > > > + String tag = message.substring(spaceLocation+1); > > > + > > > + PluginDebug.debug ("Handle = " + handle + "\n" + > > > + "Width = " + width + "\n" + > > > + "Height = " + height + "\n" + > > > + "DocumentBase = " + documentBase > > + "\n" + > > > + "Tag = " + tag); > > > + > > > + status.put(identifier, > > PAV_INIT_STATUS.PRE_INIT); > > > + PluginAppletViewer.parse > > > + (identifier, handle, width, height, > > > + new StringReader(tag), > > > + new URL(documentBase)); > > > + > > > + > > > + int maxWait = APPLET_TIMEOUT; // wait for applet > > to fully load > > > + int wait = 0; > > > + while > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > > > + (wait < maxWait)) { > > > + > > > + try { > > > + Thread.sleep(50); > > > + wait += 50; > > > + } catch (InterruptedException ie) { > > > + // just wait > > > + } > > > + } > > > + > > > + if > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > > > + throw new Exception("Applet initialization > > timeout"); > > > + > > > + PluginAppletViewer oldFrame = > > applets.get(identifier); > > > + reFrame(oldFrame, oldFrame.identifier, > > oldFrame.statusMsgStream, > > > + handle, oldFrame.panel); > > > + } > > > + appLock.get(identifier).notifyAll(); > > > } > > > - > > > - long handle = Long.parseLong(msgParts[0]); > > > - String width = msgParts[1]; > > > - String height = msgParts[2]; > > > - > > > - int spaceLocation = message.indexOf(' ', > > "tag".length()+1); > > > - String documentBase = > > > - > > UrlUtil.decode(message.substring("tag".length() + 1, spaceLocation)); > > > - String tag = message.substring(spaceLocation+1); > > > - > > > - PluginDebug.debug ("Handle = " + handle + "\n" + > > > - "Width = " + width + "\n" + > > > - "Height = " + height + "\n" + > > > - "DocumentBase = " + documentBase + > > "\n" + > > > - "Tag = " + tag); > > > - > > > - status.put(identifier, > > PAV_INIT_STATUS.PRE_INIT); > > > - PluginAppletViewer.parse > > > - (identifier, handle, width, height, > > > - new StringReader(tag), > > > - new URL(documentBase)); > > > - > > > - > > > - int maxWait = APPLET_TIMEOUT; // wait for applet > > to fully load > > > - int wait = 0; > > > - while > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > > > - (wait < maxWait)) { > > > - > > > - try { > > > - Thread.sleep(50); > > > - wait += 50; > > > - } catch (InterruptedException ie) { > > > - // just wait > > > - } > > > - } > > > - > > > - if > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > > > - throw new Exception("Applet initialization > > timeout"); > > > - > > > - PluginAppletViewer oldFrame = > > applets.get(identifier); > > > - reFrame(oldFrame, oldFrame.identifier, > > oldFrame.statusMsgStream, > > > - handle, oldFrame.panel); > > > - > > > } else { > > > - PluginDebug.debug ("Handling message: " + message > > + " instance " + identifier + " " + Thread.currentThread()); > > > - > > > - // Wait till initialization finishes > > > - while (!applets.containsKey(identifier) && > > > - ( > > > - !status.containsKey(identifier) || > > > - > > status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > > > - ) > > > - ); > > > - > > > - // don't bother processing further for inactive > > applets > > > - if > > (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > > > - return; > > > - > > > + synchronized(appLock.get(identifier)){ > > > + PluginDebug.debug ("Handling message: " + message > > + " instance " + identifier + " " + Thread.currentThread()); > > > + > > > + // Wait till initialization finishes > > > + while (!applets.containsKey(identifier) && > > > + ( > > > + !status.containsKey(identifier) || > > > + > > status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > > > + ) && !message.startsWith("destroy") > > > + ){ > > appLock.get(identifier).wait(5*1000000000);} > > > + > > > + if (message.startsWith("destroy")) > > > + applets.get(identifier).handleMessage(reference, > > message); > > > + > > > + // don't bother processing further for inactive > > applets > > > + if > > (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > > > + return; > > > + } > > > + > > > applets.get(identifier).handleMessage(reference, > > message); > > > } > > > } catch (Exception e) { > > > > > > -- > > Andrew :) > > > > Free Java Software Engineer > > Red Hat, Inc. (http://www.redhat.com) > > > > Support Free Java! > > Contribute to GNU Classpath and the OpenJDK > > http://www.gnu.org/software/classpath > > http://openjdk.java.net > > PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > > Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 > > > Thanks for your comments, I hoped I cleared up some of the questions you had. > Any other comments or question is welcome. > > Cheers, > Andrew > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From asu at redhat.com Tue Sep 28 13:28:49 2010 From: asu at redhat.com (Andrew Su) Date: Tue, 28 Sep 2010 16:28:49 -0400 (EDT) Subject: [RFC] [Plugin] Fixes 100% cpu load In-Reply-To: <1589030856.599991285705573803.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Message-ID: <1830112714.600311285705729372.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Updated the patch: Now uses HashMap instead of Hashtable. -Synchronization that Hashtable gives is not required. -Maybe use of WeakHashMap would be better. Comments? --Reason: The Map would be increasing in size and taking up memory each time a new applet is loaded. -- It would clear the key value pair for the map when it's no longer being referenced by any threads. -- This is also true for the HashMap applets and HashMap status? -Fixed tabs to spaces, where 4 space per tab. First synchronization block: -No change to this, required to ensure that we will only have one unique lock per identifier. --If we changed to WeakHashMap, these locks will be destroyed when they are no longer needed. Second synchronization block: -No change either. -It is needed to be synchronized to prevent the handling of destroy while in the middle of initializing. --This also means we could possibly remove the while loop which waits for applet to finish initializing. No longer need to worry about applet's status changing while initializing. Third synchronization block: -No change either. -Using synchronization here will let us put the thread to sleep if we get a message other than destroy and the applet is not initialized. Sleep time of 5 seconds. -The while loop in here now checks the extra condition if it's destroy message we're getting. --If so we will process this then end there. --Otherwise, proceed as normal. -Moved the handling of other messages back into this block --Reason by example: ---Applet initialized. ---Thread gets kicked off before call to handling "GetJavaObject". ---Handles destroy message. ---Resumes handling "GetJavaObject" -> loop forever. Questions? Comments? Concerns? --Andrew ----- "Andrew Su" wrote: > From: "Andrew Su" > To: "Dr Andrew John Hughes" > Cc: distro-pkg-dev at openjdk.java.net > Sent: Tuesday, September 28, 2010 1:46:13 PM GMT -05:00 US/Canada Eastern > Subject: Re: [RFC] [Plugin] Fixes 100% cpu load > > ----- "Dr Andrew John Hughes" wrote: > > > From: "Dr Andrew John Hughes" > > To: "Andrew Su" > > Cc: distro-pkg-dev at openjdk.java.net > > Sent: Tuesday, September 28, 2010 1:17:04 PM GMT -05:00 US/Canada > Eastern > > Subject: Re: [RFC] [Plugin] Fixes 100% cpu load > > > > On 15:25 Mon 27 Sep , Andrew Su wrote: > > > Hello, > > > > > > This patch fixes the following: > > > *Plugin goes into a deadlock waiting for another thread to > > initialize applet, and no more threads are available to consume > > messages. > > > *Plugin handles "destroy" message when another thread trying to > > create the applet is kicked off processor before setting the status > to > > PRE_INIT. > > > > > > > > > Example. > > > We have 2 MessageConsumer threads. > > > Passes "destroy" message to both of them for applet 1 and applet > 2. > > > Thread 1: Spinlock waiting for another thread to initialize > applet > > 1. > > > Thread 2: Spinlock waiting for another thread to initialize > applet > > 2. > > > Both threads are now in deadlock. > > > > > > Proposed Patch: > > > When message is destroy, don't spinlock, handle it right away. > > > -Problem with this: handles destroy right before we start > > initializing the applet. > > > -Fix to new problem: Synchronize the two blocks > > > --Case 1:If in process of initializing, finish initializing. > handle > > the destroy. > > > --Case 2:If destroy already handled, don't initialize. > > > > > > > > > Cheers, > > > Andrew > > > > Some points: > > > > * Why is the access to appLock protected by mainLock in the first > > block > > but the later get() is not? > I've put that under mainLock because we don't want two thread or more > inside the if statements and setting one of them setting it to one > value then later after locking it, change the reference inside > appLock. > > line 1 //synchronized(mainLock){ > line 2 if (!appLock.containsKey(identifier)){ > line 3 boolean[] lock = {false}; > line 4 appLock.put(identifier, lock); > line 5 } > line 6 //} > > Without locking it here with mainLock we come to the following issue. > -Thread 1: kicked off processor at line 3 > -Thread 2: processes the if block, then continues to the later > synchronized block (lock acquired) > -Thread 1: resumes and reassign a new lock for identifier in appLock. > > Now thread 1 and thread 2 are holding two different locks. > > Locking the above would make sure that appLock will not get reassigned > a different value later for the same identifier. > > > * On the same subject, why is appLock a Hashtable rather than a > > HashMap? > It could be changed to a HashMap, I'm sure it can even be implemented > as array too. > > > > Do you need the synchronisation this provides? If so, would it not > be better > > to synchronise a HashMap or use one of the concurrent collections > with better > > performance? > I'm not quite sure I'm interpreting this question correctly, but the > synchronization is done on the boolean[], which is much faster than > doing it on something that would need to call a constructor. > > > It's unclear whether the Hashtable's internal lock is protecting its > contents, > > whether mainLock is or some strange combination of both. > Hashtable does synchronization when adding and reading. > > > * The second synchronised block is far too big. Is this really > > necessary? > I would believe so, this goes back to the problem with destroying the > applet while one thread is already in process of initializing it. > > > * Seems to be using 8 space indentation, making this hard to read. > Will fix. > > > > > It would help a lot if you could explain how this solution is > supposed > > to work, > > and how you intend appLock to function. To that end, this should > be > > documented in > > the code too. > Will fix. > > > > > > > diff -r 5c0d756b4bb6 > > plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > > > --- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > Fri > > Sep 24 15:25:51 2010 +0100 > > > +++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > Mon > > Sep 27 14:59:43 2010 -0400 > > > @@ -360,6 +360,9 @@ > > > > > > private static Long requestIdentityCounter = 0L; > > > > > > + private static Hashtable appLock = new > > Hashtable(); > > > + private static int[] mainLock = {0}; > > > + > > > /** > > > * Null constructor to allow instantiation via > newInstance() > > > */ > > > @@ -505,78 +508,92 @@ > > > */ > > > public static void handleMessage(int identifier, int > > reference, String message) > > > { > > > - > > > + synchronized(mainLock){ > > > + if (!appLock.containsKey(identifier)){ > > > + boolean[] lock = {false}; > > > + appLock.put(identifier, lock); > > > + } > > > + } > > > + > > > PluginDebug.debug("PAV handling: " + message); > > > > > > try { > > > if (message.startsWith("handle")) { > > > - > > > - // Extract the information from the message > > > - String[] msgParts = new String[4]; > > > - for (int i=0; i < 3; i++) { > > > - int spaceLocation = message.indexOf(' '); > > > - int nextSpaceLocation = message.indexOf(' ', > > spaceLocation+1); > > > - msgParts[i] = message.substring(spaceLocation + > 1, > > nextSpaceLocation); > > > - message = message.substring(nextSpaceLocation + > 1); > > > + synchronized(appLock.get(identifier)){ > > > + if (!status.containsKey(identifier)){ > > > + // Extract the information from the message > > > + String[] msgParts = new String[4]; > > > + for (int i=0; i < 3; i++) { > > > + int spaceLocation = message.indexOf(' '); > > > + int nextSpaceLocation = message.indexOf(' ', > > spaceLocation+1); > > > + msgParts[i] = message.substring(spaceLocation + > 1, > > nextSpaceLocation); > > > + message = message.substring(nextSpaceLocation + > > 1); > > > + } > > > + > > > + long handle = Long.parseLong(msgParts[0]); > > > + String width = msgParts[1]; > > > + String height = msgParts[2]; > > > + > > > + int spaceLocation = message.indexOf(' ', > > "tag".length()+1); > > > + String documentBase = > > > + > > UrlUtil.decode(message.substring("tag".length() + 1, > spaceLocation)); > > > + String tag = message.substring(spaceLocation+1); > > > > + > > > + PluginDebug.debug ("Handle = " + handle + "\n" + > > > + "Width = " + width + "\n" + > > > + "Height = " + height + "\n" + > > > + "DocumentBase = " + > documentBase > > + "\n" + > > > + "Tag = " + tag); > > > + > > > + status.put(identifier, > > PAV_INIT_STATUS.PRE_INIT); > > > + PluginAppletViewer.parse > > > + (identifier, handle, width, height, > > > + new StringReader(tag), > > > + new URL(documentBase)); > > > + > > > + > > > + int maxWait = APPLET_TIMEOUT; // wait for > applet > > to fully load > > > + int wait = 0; > > > + while > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > > > + (wait < maxWait)) { > > > + > > > + try { > > > + Thread.sleep(50); > > > + wait += 50; > > > + } catch (InterruptedException ie) { > > > + // just wait > > > + } > > > + } > > > + > > > + if > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > > > + throw new Exception("Applet > initialization > > timeout"); > > > + > > > + PluginAppletViewer oldFrame = > > applets.get(identifier); > > > + reFrame(oldFrame, oldFrame.identifier, > > oldFrame.statusMsgStream, > > > + handle, oldFrame.panel); > > > + } > > > + appLock.get(identifier).notifyAll(); > > > } > > > - > > > - long handle = Long.parseLong(msgParts[0]); > > > - String width = msgParts[1]; > > > - String height = msgParts[2]; > > > - > > > - int spaceLocation = message.indexOf(' ', > > "tag".length()+1); > > > - String documentBase = > > > - > > UrlUtil.decode(message.substring("tag".length() + 1, > spaceLocation)); > > > - String tag = message.substring(spaceLocation+1); > > > - > > > - PluginDebug.debug ("Handle = " + handle + "\n" + > > > - "Width = " + width + "\n" + > > > - "Height = " + height + "\n" + > > > - "DocumentBase = " + documentBase > + > > "\n" + > > > - "Tag = " + tag); > > > - > > > - status.put(identifier, > > PAV_INIT_STATUS.PRE_INIT); > > > - PluginAppletViewer.parse > > > - (identifier, handle, width, height, > > > - new StringReader(tag), > > > - new URL(documentBase)); > > > - > > > - > > > - int maxWait = APPLET_TIMEOUT; // wait for > applet > > to fully load > > > - int wait = 0; > > > - while > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > > > - (wait < maxWait)) { > > > - > > > - try { > > > - Thread.sleep(50); > > > - wait += 50; > > > - } catch (InterruptedException ie) { > > > - // just wait > > > - } > > > - } > > > - > > > - if > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > > > - throw new Exception("Applet initialization > > timeout"); > > > - > > > - PluginAppletViewer oldFrame = > > applets.get(identifier); > > > - reFrame(oldFrame, oldFrame.identifier, > > oldFrame.statusMsgStream, > > > - handle, oldFrame.panel); > > > - > > > } else { > > > - PluginDebug.debug ("Handling message: " + > message > > + " instance " + identifier + " " + Thread.currentThread()); > > > - > > > - // Wait till initialization finishes > > > - while (!applets.containsKey(identifier) && > > > - ( > > > - !status.containsKey(identifier) || > > > - > > status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > > > - ) > > > - ); > > > - > > > - // don't bother processing further for inactive > > applets > > > - if > > (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > > > - return; > > > - > > > + synchronized(appLock.get(identifier)){ > > > + PluginDebug.debug ("Handling message: " + > message > > + " instance " + identifier + " " + Thread.currentThread()); > > > + > > > + // Wait till initialization finishes > > > + while (!applets.containsKey(identifier) && > > > + ( > > > + !status.containsKey(identifier) || > > > + > > status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > > > + ) && !message.startsWith("destroy") > > > + ){ > > appLock.get(identifier).wait(5*1000000000);} > > > + > > > + if (message.startsWith("destroy")) > > > + > applets.get(identifier).handleMessage(reference, > > message); > > > + > > > + // don't bother processing further for > inactive > > applets > > > + if > > (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > > > + return; > > > + } > > > + > > > > applets.get(identifier).handleMessage(reference, > > message); > > > } > > > } catch (Exception e) { > > > > > > -- > > Andrew :) > > > > Free Java Software Engineer > > Red Hat, Inc. (http://www.redhat.com) > > > > Support Free Java! > > Contribute to GNU Classpath and the OpenJDK > > http://www.gnu.org/software/classpath > > http://openjdk.java.net > > PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > > Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 > > > Thanks for your comments, I hoped I cleared up some of the questions > you had. > Any other comments or question is welcome. > > Cheers, > Andrew -------------- next part -------------- A non-text attachment was scrubbed... Name: 20100928_destroy_deadlock.patch Type: text/x-patch Size: 8863 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100928/2ee76036/20100928_destroy_deadlock.patch From asu at redhat.com Tue Sep 28 14:14:02 2010 From: asu at redhat.com (Andrew Su) Date: Tue, 28 Sep 2010 17:14:02 -0400 (EDT) Subject: [RFC] [Plugin] Fixes 100% cpu load In-Reply-To: <641753939.607351285708291772.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Message-ID: <1856835854.608591285708442575.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Update: -Changed to use ConcurrentHashMap. -Used suggestion of putIfAbsent instead of locking. Cheers, --Andrew Attached: Modified version of file. Patch file. ----- "Dr Andrew John Hughes" wrote: > From: "Dr Andrew John Hughes" > To: "Andrew Su" > Cc: distro-pkg-dev at openjdk.java.net > Sent: Tuesday, September 28, 2010 4:27:46 PM GMT -05:00 US/Canada Eastern > Subject: Re: [RFC] [Plugin] Fixes 100% cpu load > > On 13:46 Tue 28 Sep , Andrew Su wrote: > > > > ----- "Dr Andrew John Hughes" wrote: > > > > > From: "Dr Andrew John Hughes" > > > To: "Andrew Su" > > > Cc: distro-pkg-dev at openjdk.java.net > > > Sent: Tuesday, September 28, 2010 1:17:04 PM GMT -05:00 US/Canada > Eastern > > > Subject: Re: [RFC] [Plugin] Fixes 100% cpu load > > > > > > On 15:25 Mon 27 Sep , Andrew Su wrote: > > > > Hello, > > > > > > > > This patch fixes the following: > > > > *Plugin goes into a deadlock waiting for another thread to > > > initialize applet, and no more threads are available to consume > > > messages. > > > > *Plugin handles "destroy" message when another thread trying to > > > create the applet is kicked off processor before setting the > status to > > > PRE_INIT. > > > > > > > > > > > > Example. > > > > We have 2 MessageConsumer threads. > > > > Passes "destroy" message to both of them for applet 1 and applet > 2. > > > > Thread 1: Spinlock waiting for another thread to initialize > applet > > > 1. > > > > Thread 2: Spinlock waiting for another thread to initialize > applet > > > 2. > > > > Both threads are now in deadlock. > > > > > > > > Proposed Patch: > > > > When message is destroy, don't spinlock, handle it right away. > > > > -Problem with this: handles destroy right before we start > > > initializing the applet. > > > > -Fix to new problem: Synchronize the two blocks > > > > --Case 1:If in process of initializing, finish initializing. > handle > > > the destroy. > > > > --Case 2:If destroy already handled, don't initialize. > > > > > > > > > > > > Cheers, > > > > Andrew > > > > > > Some points: > > > > > > * Why is the access to appLock protected by mainLock in the first > > > block > > > but the later get() is not? > > I've put that under mainLock because we don't want two thread or > more inside the if statements and setting one of them setting it to > one value then later after locking it, change the reference inside > appLock. > > > > line 1 //synchronized(mainLock){ > > line 2 if (!appLock.containsKey(identifier)){ > > line 3 boolean[] lock = {false}; > > line 4 appLock.put(identifier, lock); > > line 5 } > > line 6 //} > > > > Without locking it here with mainLock we come to the following > issue. > > -Thread 1: kicked off processor at line 3 > > -Thread 2: processes the if block, then continues to the later > synchronized block (lock acquired) > > -Thread 1: resumes and reassign a new lock for identifier in > appLock. > > > > Now thread 1 and thread 2 are holding two different locks. > > > > Locking the above would make sure that appLock will not get > reassigned a different value later for the same identifier. > > > > Yeah I get that. It's taken me a bit to get my head round it, but I > think I understand what > you're trying to do now and I think it could be done in a simpler > way. > > On first reading, I didn't realise that you were also creating > mainLock. As it is, it seems > the logic is: > > 1. Maintain a map containing locks for each identifier. > 2. If an identifier doesn't have a lock, create one. mainLock is > used to make this concurrent. > 3. Once we've established we have a lock, only process a message with > an identifier if a message is > not being processed with the same identifier. Otherwise, block. > > You can make this simpler by getting rid of mainLock and using a > ConcurrentHashMap: > Use: > > private static ConcurrentMap appLock = new > ConcurrentHashMap(); > > in place of the current appLock and mainLock initialisation. > Use: > > appLock.putIfAbsent(identifier, new Object()); > > in place of: > > > line 1 //synchronized(mainLock){ > > line 2 if (!appLock.containsKey(identifier)){ > > line 3 boolean[] lock = {false}; > > line 4 appLock.put(identifier, lock); > > line 5 } > > line 6 //} > > putIfAbsent is the equivalent of doing: > > if (!map.containsKey(key)) > return map.put(key, value); > else > return map.get(key); > > atomically (we ignore the return value). > > > > * On the same subject, why is appLock a Hashtable rather than a > > > HashMap? > > It could be changed to a HashMap, I'm sure it can even be > implemented as array too. > > > > > > > Do you need the synchronisation this provides? If so, would it > not be better > > > to synchronise a HashMap or use one of the concurrent collections > with better > > > performance? > > I'm not quite sure I'm interpreting this question correctly, but the > synchronization is done on the boolean[], which is much faster than > doing it on something that would need to call a constructor. > > What I meant is that Hashtable has its own synchronisation i.e. every > call is: > > lock(); > doWork(); > unlock(); > > where the lock is on the hashtable. The same is true of other 1.0 > collection classes like Vector. > If you don't need concurrency, this is inefficent. If you do, it's > usually better to use one of the concurrency collections > added in 1.5 which have better performance. The same is true of > StringBuffer/Builder, with the former being synchronised. > > Using a boolean[] doesn't avoid construction, as you're creating and > populating an array object. If you weren't creating > an object, you wouldn't have a monitor to synchronise on. In the > above, I've reverted to use Object as the lock as it's a > lot clearer what's going on; I was assuming you were storing content > in these arrays at first rather than just using them > as locks. > > > > > > It's unclear whether the Hashtable's internal lock is protecting > its contents, > > > whether mainLock is or some strange combination of both. > > Hashtable does synchronization when adding and reading. > > > > > * The second synchronised block is far too big. Is this really > > > necessary? > > I would believe so, this goes back to the problem with destroying > the applet while one thread is already in process of initializing it. > > > > > * Seems to be using 8 space indentation, making this hard to > read. > > Will fix. > > > > Looking at the rest of the file, it seems you're not the initial > culprit :-) > > Could you attach a copy of the changed file? It would be easier to > examine than trying to read this diff, > as essentially the whole method seems to be rewritten. > > > > > > > It would help a lot if you could explain how this solution is > supposed > > > to work, > > > and how you intend appLock to function. To that end, this should > be > > > documented in > > > the code too. > > Will fix. > > > > What's still unclear to me is how these identifiers work and why this > problem is solved by having one thread per identifier. > > > > > > > > > > diff -r 5c0d756b4bb6 > > > plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > > > > --- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > Fri > > > Sep 24 15:25:51 2010 +0100 > > > > +++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > Mon > > > Sep 27 14:59:43 2010 -0400 > > > > @@ -360,6 +360,9 @@ > > > > > > > > private static Long requestIdentityCounter = 0L; > > > > > > > > + private static Hashtable appLock = new > > > Hashtable(); > > > > + private static int[] mainLock = {0}; > > > > + > > > > /** > > > > * Null constructor to allow instantiation via > newInstance() > > > > */ > > > > @@ -505,78 +508,92 @@ > > > > */ > > > > public static void handleMessage(int identifier, int > > > reference, String message) > > > > { > > > > - > > > > + synchronized(mainLock){ > > > > + if (!appLock.containsKey(identifier)){ > > > > + boolean[] lock = {false}; > > > > + appLock.put(identifier, lock); > > > > + } > > > > + } > > > > + > > > > PluginDebug.debug("PAV handling: " + message); > > > > > > > > try { > > > > if (message.startsWith("handle")) { > > > > - > > > > - // Extract the information from the message > > > > - String[] msgParts = new String[4]; > > > > - for (int i=0; i < 3; i++) { > > > > - int spaceLocation = message.indexOf(' '); > > > > - int nextSpaceLocation = message.indexOf(' ', > > > spaceLocation+1); > > > > - msgParts[i] = message.substring(spaceLocation + > 1, > > > nextSpaceLocation); > > > > - message = message.substring(nextSpaceLocation + > 1); > > > > + synchronized(appLock.get(identifier)){ > > > > + if (!status.containsKey(identifier)){ > > > > + // Extract the information from the message > > > > + String[] msgParts = new String[4]; > > > > + for (int i=0; i < 3; i++) { > > > > + int spaceLocation = message.indexOf(' '); > > > > + int nextSpaceLocation = message.indexOf(' ', > > > spaceLocation+1); > > > > + msgParts[i] = message.substring(spaceLocation > + 1, > > > nextSpaceLocation); > > > > + message = message.substring(nextSpaceLocation > + > > > 1); > > > > + } > > > > + > > > > + long handle = Long.parseLong(msgParts[0]); > > > > + String width = msgParts[1]; > > > > + String height = msgParts[2]; > > > > + > > > > + int spaceLocation = message.indexOf(' ', > > > "tag".length()+1); > > > > + String documentBase = > > > > + > > > UrlUtil.decode(message.substring("tag".length() + 1, > spaceLocation)); > > > > + String tag = > message.substring(spaceLocation+1); > > > > + > > > > + PluginDebug.debug ("Handle = " + handle + "\n" > + > > > > + "Width = " + width + "\n" + > > > > + "Height = " + height + "\n" > + > > > > + "DocumentBase = " + > documentBase > > > + "\n" + > > > > + "Tag = " + tag); > > > > + > > > > + status.put(identifier, > > > PAV_INIT_STATUS.PRE_INIT); > > > > + PluginAppletViewer.parse > > > > + (identifier, handle, width, height, > > > > + new StringReader(tag), > > > > + new URL(documentBase)); > > > > + > > > > + > > > > + int maxWait = APPLET_TIMEOUT; // wait for > applet > > > to fully load > > > > + int wait = 0; > > > > + while > > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > > > > + (wait < maxWait)) { > > > > + > > > > + try { > > > > + Thread.sleep(50); > > > > + wait += 50; > > > > + } catch (InterruptedException ie) { > > > > + // just wait > > > > + } > > > > + } > > > > + > > > > + if > > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > > > > + throw new Exception("Applet > initialization > > > timeout"); > > > > + > > > > + PluginAppletViewer oldFrame = > > > applets.get(identifier); > > > > + reFrame(oldFrame, oldFrame.identifier, > > > oldFrame.statusMsgStream, > > > > + handle, oldFrame.panel); > > > > + } > > > > + appLock.get(identifier).notifyAll(); > > > > } > > > > - > > > > - long handle = Long.parseLong(msgParts[0]); > > > > - String width = msgParts[1]; > > > > - String height = msgParts[2]; > > > > - > > > > - int spaceLocation = message.indexOf(' ', > > > "tag".length()+1); > > > > - String documentBase = > > > > - > > > UrlUtil.decode(message.substring("tag".length() + 1, > spaceLocation)); > > > > - String tag = message.substring(spaceLocation+1); > > > > > - > > > > - PluginDebug.debug ("Handle = " + handle + "\n" + > > > > - "Width = " + width + "\n" + > > > > - "Height = " + height + "\n" + > > > > - "DocumentBase = " + > documentBase + > > > "\n" + > > > > - "Tag = " + tag); > > > > - > > > > - status.put(identifier, > > > PAV_INIT_STATUS.PRE_INIT); > > > > - PluginAppletViewer.parse > > > > - (identifier, handle, width, height, > > > > - new StringReader(tag), > > > > - new URL(documentBase)); > > > > - > > > > - > > > > - int maxWait = APPLET_TIMEOUT; // wait for > applet > > > to fully load > > > > - int wait = 0; > > > > - while > > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > > > > - (wait < maxWait)) { > > > > - > > > > - try { > > > > - Thread.sleep(50); > > > > - wait += 50; > > > > - } catch (InterruptedException ie) { > > > > - // just wait > > > > - } > > > > - } > > > > - > > > > - if > > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > > > > - throw new Exception("Applet > initialization > > > timeout"); > > > > - > > > > - PluginAppletViewer oldFrame = > > > applets.get(identifier); > > > > - reFrame(oldFrame, oldFrame.identifier, > > > oldFrame.statusMsgStream, > > > > - handle, oldFrame.panel); > > > > - > > > > } else { > > > > - PluginDebug.debug ("Handling message: " + > message > > > + " instance " + identifier + " " + Thread.currentThread()); > > > > - > > > > - // Wait till initialization finishes > > > > - while (!applets.containsKey(identifier) && > > > > - ( > > > > - !status.containsKey(identifier) || > > > > - > > > status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > > > > - ) > > > > - ); > > > > - > > > > - // don't bother processing further for > inactive > > > applets > > > > - if > > > (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > > > > - return; > > > > - > > > > + synchronized(appLock.get(identifier)){ > > > > + PluginDebug.debug ("Handling message: " + > message > > > + " instance " + identifier + " " + Thread.currentThread()); > > > > + > > > > + // Wait till initialization finishes > > > > + while (!applets.containsKey(identifier) && > > > > + ( > > > > + !status.containsKey(identifier) || > > > > > + > > > status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > > > > + ) && !message.startsWith("destroy") > > > > + ){ > > > appLock.get(identifier).wait(5*1000000000);} > > > > + > > > > + if (message.startsWith("destroy")) > > > > + > applets.get(identifier).handleMessage(reference, > > > message); > > > > + > > > > + // don't bother processing further for > inactive > > > applets > > > > + if > > > (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > > > > + return; > > > > + } > > > > + > > > > > applets.get(identifier).handleMessage(reference, > > > message); > > > > } > > > > } catch (Exception e) { > > > > > > > > > -- > > > Andrew :) > > > > > > Free Java Software Engineer > > > Red Hat, Inc. (http://www.redhat.com) > > > > > > Support Free Java! > > > Contribute to GNU Classpath and the OpenJDK > > > http://www.gnu.org/software/classpath > > > http://openjdk.java.net > > > PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > > > Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 > > > > > > Thanks for your comments, I hoped I cleared up some of the questions > you had. > > Any other comments or question is welcome. > > > > Cheers, > > Andrew > > > > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > Support Free Java! > Contribute to GNU Classpath and the OpenJDK > http://www.gnu.org/software/classpath > http://openjdk.java.net > PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 -------------- next part -------------- A non-text attachment was scrubbed... Name: PluginAppletViewer.java Type: text/x-java Size: 80196 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100928/5bdb0d9b/PluginAppletViewer.java -------------- next part -------------- A non-text attachment was scrubbed... Name: 20100928_destroy_deadlock.patch Type: text/x-patch Size: 8921 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100928/5bdb0d9b/20100928_destroy_deadlock.patch From ptisnovs at icedtea.classpath.org Wed Sep 29 02:06:09 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 29 Sep 2010 09:06:09 +0000 Subject: /hg/gfx-test: Fixed two warnings in class GfxTest. Message-ID: changeset 16d437ccd5a4 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=16d437ccd5a4 author: Pavel Tisnovsky date: Wed Sep 29 11:06:37 2010 +0200 Fixed two warnings in class GfxTest. diffstat: 2 files changed, 4 insertions(+), 1 deletion(-) Makefile | 2 ++ src/org/gfxtest/framework/GfxTest.java | 3 ++- diffs (32 lines): diff -r efdbddf209db -r 16d437ccd5a4 Makefile --- a/Makefile Fri Sep 24 11:30:24 2010 -0400 +++ b/Makefile Wed Sep 29 11:06:37 2010 +0200 @@ -51,6 +51,8 @@ RUN_OPTIONS=-w=640 -h=480 -t=rgb RUN_OPTIONS=-w=640 -h=480 -t=rgb TESTED_JAVA=/usr/java/default/bin/java REFERENCE_JAVA=/usr/java/default/bin/java +# TESTED_JAVA=/usr/lib/jvm/java-openjdk/bin/java +# REFERENCE_JAVA=/usr/lib/jvm/java-sun/bin/java JAVAC=javac FRAMEWORK_CLASSES = \ diff -r efdbddf209db -r 16d437ccd5a4 src/org/gfxtest/framework/GfxTest.java --- a/src/org/gfxtest/framework/GfxTest.java Fri Sep 24 11:30:24 2010 -0400 +++ b/src/org/gfxtest/framework/GfxTest.java Wed Sep 29 11:06:37 2010 +0200 @@ -352,6 +352,7 @@ public abstract class GfxTest this.currentTestNumber++; } + @SuppressWarnings("boxing") private void performOneTest(GfxTestConfiguration configuration, int testNumber, EntityRenderingStyle entityRenderingStyle) { String testName = String.format("test%03d", testNumber); //$NON-NLS-1$ @@ -513,7 +514,7 @@ public abstract class GfxTest public int getArcStep() { - return arcStep; + return this.arcStep; } public void setArcStep(int arcStep) From ptisnovs at icedtea.classpath.org Wed Sep 29 02:43:17 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 29 Sep 2010 09:43:17 +0000 Subject: /hg/gfx-test: Decrease number of images generated by tests Fille... Message-ID: changeset 22665f5502d9 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=22665f5502d9 author: Pavel Tisnovsky date: Wed Sep 29 11:43:48 2010 +0200 Decrease number of images generated by tests FilledRoundRectangles and NormalRoundRectangles. diffstat: 2 files changed, 2 insertions(+) src/org/gfxtest/testsuites/FilledRoundRectangles.java | 1 + src/org/gfxtest/testsuites/NormalRoundRectangles.java | 1 + diffs (22 lines): diff -r 16d437ccd5a4 -r 22665f5502d9 src/org/gfxtest/testsuites/FilledRoundRectangles.java --- a/src/org/gfxtest/testsuites/FilledRoundRectangles.java Wed Sep 29 11:06:37 2010 +0200 +++ b/src/org/gfxtest/testsuites/FilledRoundRectangles.java Wed Sep 29 11:43:48 2010 +0200 @@ -81,6 +81,7 @@ public class FilledRoundRectangles exten @Override protected void runOtherTests(GfxTestConfiguration configuration) { + this.setArcStep(20); drawEntityWithVariousStyles(configuration, true, true, true, false, false, 0, 40, 0, 40); } diff -r 16d437ccd5a4 -r 22665f5502d9 src/org/gfxtest/testsuites/NormalRoundRectangles.java --- a/src/org/gfxtest/testsuites/NormalRoundRectangles.java Wed Sep 29 11:06:37 2010 +0200 +++ b/src/org/gfxtest/testsuites/NormalRoundRectangles.java Wed Sep 29 11:43:48 2010 +0200 @@ -82,6 +82,7 @@ public class NormalRoundRectangles exten @Override protected void runOtherTests(GfxTestConfiguration configuration) { + this.setArcStep(20); drawEntityWithVariousStyles(configuration, true, true, true, false, false, 0, 40, 0, 40); } From ptisnovs at icedtea.classpath.org Wed Sep 29 06:16:12 2010 From: ptisnovs at icedtea.classpath.org (ptisnovs at icedtea.classpath.org) Date: Wed, 29 Sep 2010 13:16:12 +0000 Subject: /hg/gfx-test: Removed lupic.jar from this project, open-source i... Message-ID: changeset 1ddd66f68390 in /hg/gfx-test details: http://icedtea.classpath.org/hg/gfx-test?cmd=changeset;node=1ddd66f68390 author: Pavel Tisnovsky date: Wed Sep 29 15:10:29 2010 +0200 Removed lupic.jar from this project, open-source implementation is used instead of it. diffstat: 13 files changed, 1477 insertions(+), 9 deletions(-) Makefile | 17 src/org/gfxtest/ImageDiffer/ComparisonResult.java | 148 +++++ src/org/gfxtest/ImageDiffer/Configuration.java | 266 +++++++++ src/org/gfxtest/ImageDiffer/ImageComparator.java | 121 ++++ src/org/gfxtest/ImageDiffer/ImageUtils.java | 136 +++++ src/org/gfxtest/ImageDiffer/Main.java | 268 ++++++++++ src/org/gfxtest/ImageDiffer/ResultWriters/HtmlStructureWriter.java | 133 ++++ src/org/gfxtest/ImageDiffer/ResultWriters/HtmlWriter.java | 159 +++++ src/org/gfxtest/ImageDiffer/ResultWriters/ResultWriter.java | 91 +++ src/org/gfxtest/ImageDiffer/ResultWriters/XmlWriter.java | 122 ++++ src/org/gfxtest/framework/Log.java | 17 template_different_images.html | 4 template_same_images.html | 4 diffs (truncated from 1592 to 500 lines): diff -r 22665f5502d9 -r 1ddd66f68390 Lupic.jar Binary file Lupic.jar has changed diff -r 22665f5502d9 -r 1ddd66f68390 Makefile --- a/Makefile Wed Sep 29 11:43:48 2010 +0200 +++ b/Makefile Wed Sep 29 15:10:29 2010 +0200 @@ -46,6 +46,7 @@ FRAMEWORK_DIR=org/gfxtest/framework FRAMEWORK_DIR=org/gfxtest/framework TESTSUITE_DIR=org/gfxtest/testsuites REPORTER_DIR=org/gfxtest/reporter +IMAGE_DIFFER_DIR=org/gfxtest/ImageDiffer TEST_PACKAGE=org.gfxtest.testsuites RUN_OPTIONS=-w=640 -h=480 -t=rgb @@ -77,7 +78,16 @@ FRAMEWORK_CLASSES = \ $(CLASSES)/$(FRAMEWORK_DIR)/GfxTestConfiguration.class \ $(CLASSES)/$(FRAMEWORK_DIR)/TestImage.class \ $(CLASSES)/$(FRAMEWORK_DIR)/GfxTest.class \ - $(CLASSES)/$(FRAMEWORK_DIR)/Log.class + $(CLASSES)/$(FRAMEWORK_DIR)/Log.class \ + $(CLASSES)/$(IMAGE_DIFFER_DIR)/ComparisonResult.class \ + $(CLASSES)/$(IMAGE_DIFFER_DIR)/Configuration.class \ + $(CLASSES)/$(IMAGE_DIFFER_DIR)/ImageComparator.class \ + $(CLASSES)/$(IMAGE_DIFFER_DIR)/ImageUtils.class \ + $(CLASSES)/$(IMAGE_DIFFER_DIR)/Main.class \ + $(CLASSES)/$(IMAGE_DIFFER_DIR)/ResultWriters/HtmlStructureWriter.class \ + $(CLASSES)/$(IMAGE_DIFFER_DIR)/ResultWriters/ResultWriter.class \ + $(CLASSES)/$(IMAGE_DIFFER_DIR)/ResultWriters/HtmlWriter.class \ + $(CLASSES)/$(IMAGE_DIFFER_DIR)/ResultWriters/XmlWriter.class TESTSUITE_CLASSES = \ $(CLASSES)/$(TESTSUITE_DIR)/AALines.class \ @@ -178,6 +188,9 @@ test_suites: $(TESTSUITE_CLASSES) $(CLASSES)/$(REPORTER_DIR)/%.class: $(SOURCEPATH)/$(REPORTER_DIR)/%.java $(JAVAC) -d $(CLASSES) -sourcepath src/ $< +$(CLASSES)/$(IMAGE_DIFFER_DIR)/%.class: $(SOURCEPATH)/$(IMAGE_DIFFER_DIR)/%.java + $(JAVAC) -d $(CLASSES) -sourcepath src/ $< + gfxtest.jar: $(FRAMEWORK_CLASSES) $(TESTSUITE_CLASSES) jar cvf gfxtest.jar -C $(CLASSES) . @@ -205,7 +218,7 @@ compareresults: $(COMPARE_RESULTS) # $* - NormalLines $(RESULTS)/%: $(OUTPUT)/% mkdir -p $@ - java -jar Lupic.jar -s1=$(SAMPLES)/$* -s2=$< -m=masks -b=bitmap-masks -o=$@ --html --html-results --xml-results --diff-images --struct-diff-images + java -cp gfxtest.jar org.gfxtest.ImageDiffer.Main -s1=$(SAMPLES)/$* -s2=$< -o=$@ --html --html-results --xml-results --diff-images --struct-diff-images report: compareresults gfxtest.jar java -cp gfxtest.jar org.gfxtest.reporter.Reporter -i=$(RESULTS) -o=$(RESULTS) diff -r 22665f5502d9 -r 1ddd66f68390 src/org/gfxtest/ImageDiffer/ComparisonResult.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/ImageDiffer/ComparisonResult.java Wed Sep 29 15:10:29 2010 +0200 @@ -0,0 +1,148 @@ +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.ImageDiffer; + +import java.awt.Point; +import java.awt.image.BufferedImage; + +public class ComparisonResult +{ + private boolean equalsImages; + private BufferedImage diffImage; + private Point rectangleMin; + private Point rectangleMax; + private int areaWidth; + private int areaHeight; + private int totalPixels; + private int differentPixels; + private int smallDifferences; + private int equalPixels; + private String testName; + + public ComparisonResult(String testName, boolean equalsImages, BufferedImage diffImage, Point rectangleMin, Point rectangleMax, + int areaWidth, int areaHeight, int totalPixels, int differentPixels, int smallDifferences, int equalPixels) + { + super(); + this.testName = testName; + this.equalsImages = equalsImages; + this.diffImage = diffImage; + this.rectangleMin = rectangleMin; + this.rectangleMax = rectangleMax; + this.areaWidth = areaWidth; + this.areaHeight = areaHeight; + this.totalPixels = totalPixels; + this.differentPixels = differentPixels; + this.smallDifferences = smallDifferences; + this.equalPixels = equalPixels; + } + + public boolean isEqualsImages() + { + return this.equalsImages; + } + + public BufferedImage getDiffImage() + { + return this.diffImage; + } + + public Point getRectangleMin() + { + return this.rectangleMin; + } + + public Point getRectangleMax() + { + return this.rectangleMax; + } + + public int getAreaWidth() + { + return this.areaWidth; + } + + public int getAreaHeight() + { + return this.areaHeight; + } + + public int getTotalPixels() + { + return this.totalPixels; + } + + public int getDifferentPixels() + { + return this.differentPixels; + } + + public int getSmallDifferences() + { + return this.smallDifferences; + } + + public int getEqualPixels() + { + return this.equalPixels; + } + + public String getTestName() + { + return this.testName; + } + + public String getComparisonStatus() + { + return this.isEqualsImages() ? "same" : "different"; + } + + public String getAreaAsString() + { + return String.format("%d×%d", Integer.valueOf(this.getAreaWidth()), Integer.valueOf(this.getAreaHeight())); + } + + public String getRectangleAsString() + { + return String.format("[%d, %d] - [%d, %d]", Integer.valueOf(this.getRectangleMin().x), + Integer.valueOf(this.getRectangleMin().y), Integer.valueOf(this.getRectangleMax().x), + Integer.valueOf(this.getRectangleMax().y)); + } +} diff -r 22665f5502d9 -r 1ddd66f68390 src/org/gfxtest/ImageDiffer/Configuration.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/ImageDiffer/Configuration.java Wed Sep 29 15:10:29 2010 +0200 @@ -0,0 +1,266 @@ +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. +*/ + +package org.gfxtest.ImageDiffer; + +import java.awt.Color; +import java.io.File; +import java.util.HashMap; +import java.util.Map; + +import org.gfxtest.framework.Log; + +public class Configuration +{ + private boolean convertDiffImageToGrayscale = true; + + private int pixelValueThreshold = 10; + private int differentPixelsThreshold = 10; + + private Color diffColorPixelValueUnderThreshold = new Color(0, 0, 255); + private Color diffColorPerceptiblePixelDifference = new Color(255, 0, 0); + private Color boundaryColor = new Color(0, 128, 255); + + private int boundarySize = 5; + + private File firstSourceDirectory = null; + private File secondSourceDirectory = null; + private File outputDirectory = null; + + private boolean createHtmlFiles = false; + private boolean createHtmlResult = false; + private boolean createXmlResult = false; + private boolean writeDiffImages = false; + private boolean writeStructDiffImages = false; + + private Log log = null; + + public Configuration(String args[]) + { + this.log = new Log(this.getClass().getName(), true); + this.log.logConfig("command line parameters: %d", Integer.valueOf(args.length)); + readCommandLineParameters(args); + printParameters(); + } + + private void printParameters() + { + this.log.logConfig("first source directory: %s", getAbsolutePath(this.firstSourceDirectory)); + this.log.logConfig("second source directory: %s", getAbsolutePath(this.secondSourceDirectory)); + this.log.logConfig("output directory: %s", getAbsolutePath(this.outputDirectory)); + this.log.logConfig("HTML files creation: %s", enabledFlag(this.isHtmlFilesCreationEnabled())); + this.log.logConfig("HTML result creation: %s", enabledFlag(this.isHtmlResultCreationEnabled())); + this.log.logConfig("XML result creation: %s", enabledFlag(this.isXmlResultCreationEnabled())); + this.log.logConfig("Diff images creation: %s", enabledFlag(this.isDiffImagesCreationEnabled())); + this.log.logConfig("Struct. diff images: %s", enabledFlag(this.isStructDiffImagesCreationEnabled())); + } + + private String enabledFlag(boolean flag) + { + return flag ? "enabled" : "disabled"; + } + + private String getAbsolutePath(File directory) + { + return directory == null ? "not set" : directory.getAbsolutePath(); + } + + private void readCommandLineParameters(String args[]) + { + Map shortOptions = resolveAllOptions(args, "-"); + Map longOptions = resolveAllOptions(args, "--"); + this.firstSourceDirectory = getPath(shortOptions, longOptions, "s1", "source1"); + this.secondSourceDirectory = getPath(shortOptions, longOptions, "s2", "source2"); + this.outputDirectory = getPath(shortOptions, longOptions, "o", "output"); + this.createHtmlFiles = getOption(shortOptions, longOptions, "t", "html"); + this.createHtmlResult = getOption(shortOptions, longOptions, "r", "html-results"); + this.createXmlResult = getOption(shortOptions, longOptions, "x", "xml-results"); + this.writeDiffImages = getOption(shortOptions, longOptions, "d", "diff-images"); + this.writeStructDiffImages = getOption(shortOptions, longOptions, "s", "struct-diff-images"); + } + + private boolean getOption(Map shortOptions, Map longOptions, String shortOptionName, String longOptionName) + { + return shortOptions.containsKey(shortOptionName) || longOptions.containsKey(longOptionName); + } + + private File getPath(Map shortOptions, Map longOptions, String shortOptionName, String longOptionName) + { + String fileName = shortOptions.get(shortOptionName); + if (fileName != null) + { + return new File(fileName); + } + fileName = longOptions.get(longOptionName); + if (fileName != null) + { + return new File(fileName); + } + return null; + } + + private Map resolveAllOptions(String[] args, String prefix) + { + Map options = new HashMap(); + for (String arg : args) + { + String[] splittedArg = arg.split("="); + if (splittedArg.length >= 1 && splittedArg[0].startsWith(prefix)) + { + this.log.logConfig("found option %s", arg); + String optionName = splittedArg[0].substring(prefix.length()); + String optionValue = splittedArg.length == 2 ? splittedArg[1] : "true"; + options.put(optionName, optionValue); + } + } + return options; + } + + public boolean isConvertDiffImageToGrayscale() + { + return this.convertDiffImageToGrayscale; + } + + public void setConvertDiffImageToGrayscale(boolean convertDiffImageToGrayscale) + { + this.convertDiffImageToGrayscale = convertDiffImageToGrayscale; + } + + public int getPixelValueThreshold() + { + return this.pixelValueThreshold; + } + + public void setPixelValueThreshold(int pixelValueThreshold) + { + this.pixelValueThreshold = pixelValueThreshold; + } + + public int getDifferentPixelsThreshold() + { + return this.differentPixelsThreshold; + } + + public void setDifferentPixelsThreshold(int differentPixelsThreshold) + { + this.differentPixelsThreshold = differentPixelsThreshold; + } + + public Color getDiffColorPixelValueUnderThreshold() + { + return this.diffColorPixelValueUnderThreshold; + } + + public void setDiffColorPixelValueUnderThreshold(Color diffColorPixelValueUnderThreshold) + { + this.diffColorPixelValueUnderThreshold = diffColorPixelValueUnderThreshold; + } + + public Color getDiffColorPerceptiblePixelDifference() + { + return this.diffColorPerceptiblePixelDifference; + } + + public void setDiffColorPerceptiblePixelDifference(Color diffColorPerceptiblePixelDifference) + { + this.diffColorPerceptiblePixelDifference = diffColorPerceptiblePixelDifference; + } + + public int getBoundarySize() + { + return this.boundarySize; + } + + public void setBoundarySize(int boundarySize) + { + this.boundarySize = boundarySize; + } + + public Color getBoundaryColor() + { + return this.boundaryColor; + } + + public void setBoundaryColor(Color boundaryColor) + { + this.boundaryColor = boundaryColor; + } + + public File getFirstSourceDirectory() + { + return this.firstSourceDirectory; + } + + public File getSecondSourceDirectory() + { + return this.secondSourceDirectory; + } + + public File getOutputDirectory() + { + return this.outputDirectory; + } + + public boolean isHtmlFilesCreationEnabled() + { + return this.createHtmlFiles; + } + + public boolean isHtmlResultCreationEnabled() + { + return this.createHtmlResult; + } + + public boolean isXmlResultCreationEnabled() + { + return this.createXmlResult; + } + + public boolean isDiffImagesCreationEnabled() + { + return this.writeDiffImages; + } + + public boolean isStructDiffImagesCreationEnabled() + { + return this.writeStructDiffImages; + } + +} diff -r 22665f5502d9 -r 1ddd66f68390 src/org/gfxtest/ImageDiffer/ImageComparator.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/org/gfxtest/ImageDiffer/ImageComparator.java Wed Sep 29 15:10:29 2010 +0200 @@ -0,0 +1,121 @@ +/* + Java gfx-test framework + + Copyright (C) 2010 Red Hat + +This file is part of IcedTea. + +IcedTea is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +IcedTea is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with IcedTea; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and From omajid at redhat.com Wed Sep 29 11:47:15 2010 From: omajid at redhat.com (Omair Majid) Date: Wed, 29 Sep 2010 14:47:15 -0400 Subject: [rfc] netx: display file name in warning dialog Message-ID: <4CA389B3.9020003@redhat.com> Hi, The attached patch adds the filename to the file access warning dialogs used by netx. Any comments? Cheers, Omair -------------- next part -------------- A non-text attachment was scrubbed... Name: icedtea6-jnlp-filename-in-accesswarningpane.patch Type: text/x-patch Size: 6347 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/distro-pkg-dev/attachments/20100929/6e33fd7f/icedtea6-jnlp-filename-in-accesswarningpane.patch From ahughes at redhat.com Wed Sep 29 12:04:40 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Wed, 29 Sep 2010 20:04:40 +0100 Subject: [rfc] netx: display file name in warning dialog In-Reply-To: <4CA389B3.9020003@redhat.com> References: <4CA389B3.9020003@redhat.com> Message-ID: <20100929190440.GG13228@rivendell.middle-earth.co.uk> On 14:47 Wed 29 Sep , Omair Majid wrote: > Hi, > > The attached patch adds the filename to the file access warning dialogs > used by netx. > > Any comments? > > Cheers, > Omair > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/resources/Messages.properties > --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Mon Sep 20 00:18:57 2010 +0100 > +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Wed Sep 29 14:45:26 2010 -0400 > @@ -6,6 +6,7 @@ > ButOk=OK > ButCancel=\ Cancel\ > ButBrowse=Browse... > +AFileOnTheMachine=a file on the machine > > # LS - Severity > LSMinor=Minor > @@ -150,8 +151,8 @@ > CChooseCacheDir=Cache directory > > # Security > -SFileReadAccess=The application has requested read access to a file on the machine. Do you want to allow this action? > -SFileWriteAccess=The application has requested write access to a file on the machine. Do you want to allow this action? > +SFileReadAccess=The application has requested read access to {0}. Do you want to allow this action? > +SFileWriteAccess=The application has requested write access to {0}. Do you want to allow this action? > SDesktopShortcut=The application has requested permission to create a desktop launcher. Do you want to allow this action? > SSigUnverified=The application's digital signature cannot be verified. Do you want to run the application? > SSigVerified=The application's digital signature has been verified. Do you want to run the application? > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/security/AccessWarningPane.java > --- a/netx/net/sourceforge/jnlp/security/AccessWarningPane.java Mon Sep 20 00:18:57 2010 +0100 > +++ b/netx/net/sourceforge/jnlp/security/AccessWarningPane.java Wed Sep 29 14:45:26 2010 -0400 > @@ -56,6 +56,7 @@ > import javax.swing.SwingConstants; > > import net.sourceforge.jnlp.JNLPFile; > +import net.sourceforge.jnlp.util.FileUtils; > > /** > * Provides a panel to show inside a SecurityWarningDialog. These dialogs are > @@ -114,10 +115,18 @@ > String topLabelText = ""; > switch (type) { > case READ_FILE: > - topLabelText = R("SFileReadAccess"); > + if (extras != null && extras.length > 0 && extras[0] instanceof String) { > + topLabelText = R("SFileReadAccess", FileUtils.displayablePath((String)extras[0])); > + } else { > + topLabelText = R("SFileReadAccess", R("AFileOnTheMachine")); > + } > break; > case WRITE_FILE: > - topLabelText = R("SFileWriteAccess"); > + if (extras != null && extras.length > 0 && extras[0] instanceof String) { > + topLabelText = R("SFileWriteAccess", FileUtils.displayablePath((String)extras[0])); > + } else { > + topLabelText = R("SFileWriteAccess", R("AFileOnTheMachine")); > + } > break; > case CREATE_DESTKOP_SHORTCUT: > topLabelText = R("SDesktopShortcut"); > @@ -145,7 +154,7 @@ > JPanel topPanel = new JPanel(new BorderLayout()); > topPanel.setBackground(Color.WHITE); > topPanel.add(topLabel, BorderLayout.CENTER); > - topPanel.setPreferredSize(new Dimension(400,60)); > + topPanel.setPreferredSize(new Dimension(450,100)); > topPanel.setBorder(BorderFactory.createEmptyBorder(10,10,10,10)); > > //application info > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/services/XExtendedService.java > --- a/netx/net/sourceforge/jnlp/services/XExtendedService.java Mon Sep 20 00:18:57 2010 +0100 > +++ b/netx/net/sourceforge/jnlp/services/XExtendedService.java Wed Sep 29 14:45:26 2010 -0400 > @@ -34,7 +34,9 @@ > > public FileContents openFile(File file) throws IOException { > > - if (ServiceUtil.checkAccess(SecurityWarningDialog.AccessType.READ_FILE)) { > + /* FIXME: this opens a file with read/write mode, not just read or write */ > + if (ServiceUtil.checkAccess(SecurityWarningDialog.AccessType.READ_FILE, > + new Object[]{ file.getAbsolutePath() })) { > return (FileContents) ServiceUtil.createPrivilegedProxy(FileContents.class, > new XFileContents(file)); > } else { > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/util/FileUtils.java > --- a/netx/net/sourceforge/jnlp/util/FileUtils.java Mon Sep 20 00:18:57 2010 +0100 > +++ b/netx/net/sourceforge/jnlp/util/FileUtils.java Wed Sep 29 14:45:26 2010 -0400 > @@ -68,4 +68,49 @@ > return filename; > } > > + /** > + * Returns a String that is suitable for using in GUI elements for > + * displaying (long) paths to users. > + * > + * @param path a path that should be shortened > + * @return a shortened path suitable for displaying to the user > + */ > + public static String displayablePath(String path) { > + final int DEFAULT_LENGTH = 40; > + return displayablePath(path, DEFAULT_LENGTH); > + } > + > + /** > + * Return a String that is suitable for using in GUI elements for displaying > + * paths to users. If the path is longer than visibleChars, it is truncated > + * in a display-friendly way > + * > + * @param path a path that should be shorted > + * @param visibleChars the maximum number of characters that path should fit > + * into. Also the length of the returned string > + * @return a shortened path that contains limited number of chars > + */ > + public static String displayablePath(String path, int visibleChars) { > + /* > + * a very simple method prefix + "..." + suffix where prefix = beginning > + * part of path and suffix = end path of path > + */ > + > + if (path == null || path.length() <= visibleChars) { > + return path; > + } > + > + /* > + * if we have too few chars, then just return as much as we can of the > + * filename > + */ > + if (visibleChars < 5) { > + return path.substring(path.length() - visibleChars); > + } > + String prefix = path.substring(0, (visibleChars - 3) / 2); > + String suffix = path.substring(path.length() - (visibleChars - 3) / 2); > + > + return prefix + "..." + suffix; > + } > + > } I think it would be cleaner to store the result of (visibleChars - 3) / 2 rather than computing it twice. I also don't see how the change to XExtendedService is relevant; could you explain? Otherwise, looks good. -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) Support Free Java! Contribute to GNU Classpath and the OpenJDK http://www.gnu.org/software/classpath http://openjdk.java.net PGP Key: 94EFD9D8 (http://subkeys.pgp.net) Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From dbhole at redhat.com Wed Sep 29 12:07:00 2010 From: dbhole at redhat.com (Deepak Bhole) Date: Wed, 29 Sep 2010 15:07:00 -0400 Subject: [rfc] netx: display file name in warning dialog In-Reply-To: <4CA389B3.9020003@redhat.com> References: <4CA389B3.9020003@redhat.com> Message-ID: <20100929190700.GC15863@redhat.com> * Omair Majid [2010-09-29 14:47]: > Hi, > > The attached patch adds the filename to the file access warning > dialogs used by netx. > > Any comments? > Looks good to me. Okay for HEAD and backport to 1.7/1.8/1.9 as showing filename is a good enough feature, worth a backport. Cheers, Deepak > Cheers, > Omair > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/resources/Messages.properties > --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Mon Sep 20 00:18:57 2010 +0100 > +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Wed Sep 29 14:45:26 2010 -0400 > @@ -6,6 +6,7 @@ > ButOk=OK > ButCancel=\ Cancel\ > ButBrowse=Browse... > +AFileOnTheMachine=a file on the machine > > # LS - Severity > LSMinor=Minor > @@ -150,8 +151,8 @@ > CChooseCacheDir=Cache directory > > # Security > -SFileReadAccess=The application has requested read access to a file on the machine. Do you want to allow this action? > -SFileWriteAccess=The application has requested write access to a file on the machine. Do you want to allow this action? > +SFileReadAccess=The application has requested read access to {0}. Do you want to allow this action? > +SFileWriteAccess=The application has requested write access to {0}. Do you want to allow this action? > SDesktopShortcut=The application has requested permission to create a desktop launcher. Do you want to allow this action? > SSigUnverified=The application's digital signature cannot be verified. Do you want to run the application? > SSigVerified=The application's digital signature has been verified. Do you want to run the application? > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/security/AccessWarningPane.java > --- a/netx/net/sourceforge/jnlp/security/AccessWarningPane.java Mon Sep 20 00:18:57 2010 +0100 > +++ b/netx/net/sourceforge/jnlp/security/AccessWarningPane.java Wed Sep 29 14:45:26 2010 -0400 > @@ -56,6 +56,7 @@ > import javax.swing.SwingConstants; > > import net.sourceforge.jnlp.JNLPFile; > +import net.sourceforge.jnlp.util.FileUtils; > > /** > * Provides a panel to show inside a SecurityWarningDialog. These dialogs are > @@ -114,10 +115,18 @@ > String topLabelText = ""; > switch (type) { > case READ_FILE: > - topLabelText = R("SFileReadAccess"); > + if (extras != null && extras.length > 0 && extras[0] instanceof String) { > + topLabelText = R("SFileReadAccess", FileUtils.displayablePath((String)extras[0])); > + } else { > + topLabelText = R("SFileReadAccess", R("AFileOnTheMachine")); > + } > break; > case WRITE_FILE: > - topLabelText = R("SFileWriteAccess"); > + if (extras != null && extras.length > 0 && extras[0] instanceof String) { > + topLabelText = R("SFileWriteAccess", FileUtils.displayablePath((String)extras[0])); > + } else { > + topLabelText = R("SFileWriteAccess", R("AFileOnTheMachine")); > + } > break; > case CREATE_DESTKOP_SHORTCUT: > topLabelText = R("SDesktopShortcut"); > @@ -145,7 +154,7 @@ > JPanel topPanel = new JPanel(new BorderLayout()); > topPanel.setBackground(Color.WHITE); > topPanel.add(topLabel, BorderLayout.CENTER); > - topPanel.setPreferredSize(new Dimension(400,60)); > + topPanel.setPreferredSize(new Dimension(450,100)); > topPanel.setBorder(BorderFactory.createEmptyBorder(10,10,10,10)); > > //application info > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/services/XExtendedService.java > --- a/netx/net/sourceforge/jnlp/services/XExtendedService.java Mon Sep 20 00:18:57 2010 +0100 > +++ b/netx/net/sourceforge/jnlp/services/XExtendedService.java Wed Sep 29 14:45:26 2010 -0400 > @@ -34,7 +34,9 @@ > > public FileContents openFile(File file) throws IOException { > > - if (ServiceUtil.checkAccess(SecurityWarningDialog.AccessType.READ_FILE)) { > + /* FIXME: this opens a file with read/write mode, not just read or write */ > + if (ServiceUtil.checkAccess(SecurityWarningDialog.AccessType.READ_FILE, > + new Object[]{ file.getAbsolutePath() })) { > return (FileContents) ServiceUtil.createPrivilegedProxy(FileContents.class, > new XFileContents(file)); > } else { > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/util/FileUtils.java > --- a/netx/net/sourceforge/jnlp/util/FileUtils.java Mon Sep 20 00:18:57 2010 +0100 > +++ b/netx/net/sourceforge/jnlp/util/FileUtils.java Wed Sep 29 14:45:26 2010 -0400 > @@ -68,4 +68,49 @@ > return filename; > } > > + /** > + * Returns a String that is suitable for using in GUI elements for > + * displaying (long) paths to users. > + * > + * @param path a path that should be shortened > + * @return a shortened path suitable for displaying to the user > + */ > + public static String displayablePath(String path) { > + final int DEFAULT_LENGTH = 40; > + return displayablePath(path, DEFAULT_LENGTH); > + } > + > + /** > + * Return a String that is suitable for using in GUI elements for displaying > + * paths to users. If the path is longer than visibleChars, it is truncated > + * in a display-friendly way > + * > + * @param path a path that should be shorted > + * @param visibleChars the maximum number of characters that path should fit > + * into. Also the length of the returned string > + * @return a shortened path that contains limited number of chars > + */ > + public static String displayablePath(String path, int visibleChars) { > + /* > + * a very simple method prefix + "..." + suffix where prefix = beginning > + * part of path and suffix = end path of path > + */ > + > + if (path == null || path.length() <= visibleChars) { > + return path; > + } > + > + /* > + * if we have too few chars, then just return as much as we can of the > + * filename > + */ > + if (visibleChars < 5) { > + return path.substring(path.length() - visibleChars); > + } > + String prefix = path.substring(0, (visibleChars - 3) / 2); > + String suffix = path.substring(path.length() - (visibleChars - 3) / 2); > + > + return prefix + "..." + suffix; > + } > + > } From dbhole at redhat.com Wed Sep 29 12:11:08 2010 From: dbhole at redhat.com (Deepak Bhole) Date: Wed, 29 Sep 2010 15:11:08 -0400 Subject: [rfc] netx: display file name in warning dialog In-Reply-To: <20100929190700.GC15863@redhat.com> References: <4CA389B3.9020003@redhat.com> <20100929190700.GC15863@redhat.com> Message-ID: <20100929191107.GE15863@redhat.com> * Deepak Bhole [2010-09-29 15:07]: > * Omair Majid [2010-09-29 14:47]: > > Hi, > > > > The attached patch adds the filename to the file access warning > > dialogs used by netx. > > > > Any comments? > > > > Looks good to me. Okay for HEAD and backport to 1.7/1.8/1.9 as showing > filename is a good enough feature, worth a backport. > Just saw Andrew's note. +1 on the storing the "(visibleChars - 3) / 2" result and using that. As for changes to XExtendedService, I assume they are needed to store the filepath in the extras array. Can you please confirm? Cheers, Deepak > Cheers, > Deepak > > > Cheers, > > Omair > > > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/resources/Messages.properties > > --- a/netx/net/sourceforge/jnlp/resources/Messages.properties Mon Sep 20 00:18:57 2010 +0100 > > +++ b/netx/net/sourceforge/jnlp/resources/Messages.properties Wed Sep 29 14:45:26 2010 -0400 > > @@ -6,6 +6,7 @@ > > ButOk=OK > > ButCancel=\ Cancel\ > > ButBrowse=Browse... > > +AFileOnTheMachine=a file on the machine > > > > # LS - Severity > > LSMinor=Minor > > @@ -150,8 +151,8 @@ > > CChooseCacheDir=Cache directory > > > > # Security > > -SFileReadAccess=The application has requested read access to a file on the machine. Do you want to allow this action? > > -SFileWriteAccess=The application has requested write access to a file on the machine. Do you want to allow this action? > > +SFileReadAccess=The application has requested read access to {0}. Do you want to allow this action? > > +SFileWriteAccess=The application has requested write access to {0}. Do you want to allow this action? > > SDesktopShortcut=The application has requested permission to create a desktop launcher. Do you want to allow this action? > > SSigUnverified=The application's digital signature cannot be verified. Do you want to run the application? > > SSigVerified=The application's digital signature has been verified. Do you want to run the application? > > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/security/AccessWarningPane.java > > --- a/netx/net/sourceforge/jnlp/security/AccessWarningPane.java Mon Sep 20 00:18:57 2010 +0100 > > +++ b/netx/net/sourceforge/jnlp/security/AccessWarningPane.java Wed Sep 29 14:45:26 2010 -0400 > > @@ -56,6 +56,7 @@ > > import javax.swing.SwingConstants; > > > > import net.sourceforge.jnlp.JNLPFile; > > +import net.sourceforge.jnlp.util.FileUtils; > > > > /** > > * Provides a panel to show inside a SecurityWarningDialog. These dialogs are > > @@ -114,10 +115,18 @@ > > String topLabelText = ""; > > switch (type) { > > case READ_FILE: > > - topLabelText = R("SFileReadAccess"); > > + if (extras != null && extras.length > 0 && extras[0] instanceof String) { > > + topLabelText = R("SFileReadAccess", FileUtils.displayablePath((String)extras[0])); > > + } else { > > + topLabelText = R("SFileReadAccess", R("AFileOnTheMachine")); > > + } > > break; > > case WRITE_FILE: > > - topLabelText = R("SFileWriteAccess"); > > + if (extras != null && extras.length > 0 && extras[0] instanceof String) { > > + topLabelText = R("SFileWriteAccess", FileUtils.displayablePath((String)extras[0])); > > + } else { > > + topLabelText = R("SFileWriteAccess", R("AFileOnTheMachine")); > > + } > > break; > > case CREATE_DESTKOP_SHORTCUT: > > topLabelText = R("SDesktopShortcut"); > > @@ -145,7 +154,7 @@ > > JPanel topPanel = new JPanel(new BorderLayout()); > > topPanel.setBackground(Color.WHITE); > > topPanel.add(topLabel, BorderLayout.CENTER); > > - topPanel.setPreferredSize(new Dimension(400,60)); > > + topPanel.setPreferredSize(new Dimension(450,100)); > > topPanel.setBorder(BorderFactory.createEmptyBorder(10,10,10,10)); > > > > //application info > > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/services/XExtendedService.java > > --- a/netx/net/sourceforge/jnlp/services/XExtendedService.java Mon Sep 20 00:18:57 2010 +0100 > > +++ b/netx/net/sourceforge/jnlp/services/XExtendedService.java Wed Sep 29 14:45:26 2010 -0400 > > @@ -34,7 +34,9 @@ > > > > public FileContents openFile(File file) throws IOException { > > > > - if (ServiceUtil.checkAccess(SecurityWarningDialog.AccessType.READ_FILE)) { > > + /* FIXME: this opens a file with read/write mode, not just read or write */ > > + if (ServiceUtil.checkAccess(SecurityWarningDialog.AccessType.READ_FILE, > > + new Object[]{ file.getAbsolutePath() })) { > > return (FileContents) ServiceUtil.createPrivilegedProxy(FileContents.class, > > new XFileContents(file)); > > } else { > > diff -r e470c7b5f2dc netx/net/sourceforge/jnlp/util/FileUtils.java > > --- a/netx/net/sourceforge/jnlp/util/FileUtils.java Mon Sep 20 00:18:57 2010 +0100 > > +++ b/netx/net/sourceforge/jnlp/util/FileUtils.java Wed Sep 29 14:45:26 2010 -0400 > > @@ -68,4 +68,49 @@ > > return filename; > > } > > > > + /** > > + * Returns a String that is suitable for using in GUI elements for > > + * displaying (long) paths to users. > > + * > > + * @param path a path that should be shortened > > + * @return a shortened path suitable for displaying to the user > > + */ > > + public static String displayablePath(String path) { > > + final int DEFAULT_LENGTH = 40; > > + return displayablePath(path, DEFAULT_LENGTH); > > + } > > + > > + /** > > + * Return a String that is suitable for using in GUI elements for displaying > > + * paths to users. If the path is longer than visibleChars, it is truncated > > + * in a display-friendly way > > + * > > + * @param path a path that should be shorted > > + * @param visibleChars the maximum number of characters that path should fit > > + * into. Also the length of the returned string > > + * @return a shortened path that contains limited number of chars > > + */ > > + public static String displayablePath(String path, int visibleChars) { > > + /* > > + * a very simple method prefix + "..." + suffix where prefix = beginning > > + * part of path and suffix = end path of path > > + */ > > + > > + if (path == null || path.length() <= visibleChars) { > > + return path; > > + } > > + > > + /* > > + * if we have too few chars, then just return as much as we can of the > > + * filename > > + */ > > + if (visibleChars < 5) { > > + return path.substring(path.length() - visibleChars); > > + } > > + String prefix = path.substring(0, (visibleChars - 3) / 2); > > + String suffix = path.substring(path.length() - (visibleChars - 3) / 2); > > + > > + return prefix + "..." + suffix; > > + } > > + > > } > From dbhole at redhat.com Wed Sep 29 12:17:28 2010 From: dbhole at redhat.com (Deepak Bhole) Date: Wed, 29 Sep 2010 15:17:28 -0400 Subject: [1.7, 1.8, 1.9 BACKPORT]: /hg/icedtea6: S6638712: Inference with wildcard types In-Reply-To: <20100920143218.GF16943@rivendell.middle-earth.co.uk> References: <20100920143218.GF16943@rivendell.middle-earth.co.uk> Message-ID: <20100929191728.GF15863@redhat.com> * Dr Andrew John Hughes [2010-09-20 10:32]: > Ok for 1.7, 1.8 and 1.9? > Looks okay to me for backport as well. It fixes an important issue that multiple people have encountered. Cheers, Deepak > ----- Forwarded message from andrew at icedtea.classpath.org ----- > > Date: Thu, 16 Sep 2010 23:12:05 +0000 > From: andrew at icedtea.classpath.org > To: distro-pkg-dev at openjdk.java.net > Subject: /hg/icedtea6: S6638712: Inference with wildcard types causes sel... > > changeset 63024b10e2ef in /hg/icedtea6 > details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=63024b10e2ef > author: Andrew John Hughes > date: Thu Sep 16 23:36:39 2010 +0100 > > S6638712: Inference with wildcard types causes selection of > inapplicable method S6650759: Inference of formal type parameter > (unused in formal parameters) is not performed > > 2010-09-09 Andrew John Hughes > > * Makefile.am: Add new patches. > * NEWS: Document new patches. Fix key. > * patches/openjdk/6638712-wildcard_types.patch, > * patches/openjdk/6650759-missing_inference.patch: Fix failure > in javac compilation. > > > diffstat: > > 5 files changed, 1582 insertions(+), 3 deletions(-) > ChangeLog | 10 > Makefile.am | 4 > NEWS | 4 > patches/openjdk/6638712-wildcard_types.patch | 669 +++++++++++++++++ > patches/openjdk/6650759-missing_inference.patch | 898 +++++++++++++++++++++++ > > diffs (truncated from 1626 to 500 lines): > > diff -r a1ccc755c8f7 -r 63024b10e2ef ChangeLog > --- a/ChangeLog Thu Sep 16 14:53:19 2010 -0400 > +++ b/ChangeLog Thu Sep 16 23:36:39 2010 +0100 > @@ -1,4 +1,12 @@ 2010-09-16 Deepak Bhole -2010-09-16 Deepak Bhole > +2010-09-09 Andrew John Hughes > + > + * Makefile.am: Add new patches. > + * NEWS: Document new patches. Fix key. > + * patches/openjdk/6638712-wildcard_types.patch, > + * patches/openjdk/6650759-missing_inference.patch: > + Fix failure in javac compilation. > + > +2010-09-16 Deepak Bhole > > * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > (handleMessage): Output initialization info only in debug mode. > diff -r a1ccc755c8f7 -r 63024b10e2ef Makefile.am > --- a/Makefile.am Thu Sep 16 14:53:19 2010 -0400 > +++ b/Makefile.am Thu Sep 16 23:36:39 2010 +0100 > @@ -295,7 +295,9 @@ ICEDTEA_PATCHES = \ > patches/icedtea-too-many-args.patch \ > patches/icedtea-jtreg-OpenGLContextInit.patch \ > patches/openjdk/6969395-net_bugs.patch \ > - patches/openjdk/6510892-httpserver_test.patch > + patches/openjdk/6510892-httpserver_test.patch \ > + patches/openjdk/6638712-wildcard_types.patch \ > + patches/openjdk/6650759-missing_inference.patch > > if WITH_RHINO > ICEDTEA_PATCHES += \ > diff -r a1ccc755c8f7 -r 63024b10e2ef NEWS > --- a/NEWS Thu Sep 16 14:53:19 2010 -0400 > +++ b/NEWS Thu Sep 16 23:36:39 2010 +0100 > @@ -1,6 +1,6 @@ Key: > Key: > > -SX - http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6969395 > +SX - http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=X > PRX - http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=X > RHX - https://bugzilla.redhat.com/show_bug.cgi?id=X > DX - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=X > @@ -14,6 +14,8 @@ New in release 1.10 (2010-XX-XX): > - S4356282, RH525870: RFE: T2K should be used to rasterize CID/CFF fonts > - S6954424: Support OpenType/CFF fonts in JDK 7 > - S6438179: XToolkit.isTraySupported() result has nothing to do with the system tray > + - S6638712: Inference with wildcard types causes selection of inapplicable method > + - S6650759: Inference of formal type parameter (unused in formal parameters) is not performed > * Netx > - A new man page for javaws. > * Plugin > diff -r a1ccc755c8f7 -r 63024b10e2ef patches/openjdk/6638712-wildcard_types.patch > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/patches/openjdk/6638712-wildcard_types.patch Thu Sep 16 23:36:39 2010 +0100 > @@ -0,0 +1,669 @@ > +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java > +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Type.java 2010-06-21 22:16:20.000000000 +0100 > ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Type.java 2010-09-09 19:54:58.054019539 +0100 > +@@ -1061,6 +1061,21 @@ > + return qtype.isErroneous(); > + } > + > ++ /** > ++ * Replaces this ForAll's typevars with a set of concrete Java types > ++ * and returns the instantiated generic type. Subclasses might override > ++ * in order to check that the list of types is a valid instantiation > ++ * of the ForAll's typevars. > ++ * > ++ * @param actuals list of actual types > ++ * @param types types instance > ++ * @return qtype where all occurrences of tvars are replaced > ++ * by types in actuals > ++ */ > ++ public Type inst(List actuals, Types types) { > ++ return types.subst(qtype, tvars, actuals); > ++ } > ++ > + public Type map(Mapping f) { > + return f.apply(qtype); > + } > +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java > +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/code/Types.java 2010-06-21 22:16:20.000000000 +0100 > ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/code/Types.java 2010-09-09 19:54:58.054019539 +0100 > +@@ -331,6 +331,14 @@ > + if (s.tag >= firstPartialTag) > + return isSuperType(s, t); > + > ++ if (s.isCompound()) { > ++ for (Type s2 : interfaces(s).prepend(supertype(s))) { > ++ if (!isSubtype(t, s2, capture)) > ++ return false; > ++ } > ++ return true; > ++ } > ++ > + Type lower = lowerBound(s); > + if (s != lower) > + return isSubtype(capture ? capture(t) : t, lower, false); > +@@ -2766,6 +2774,14 @@ > + /** > + * Capture conversion as specified by JLS 3rd Ed. > + */ > ++ > ++ public List capture(List ts) { > ++ List buf = List.nil(); > ++ for (Type t : ts) { > ++ buf = buf.prepend(capture(t)); > ++ } > ++ return buf.reverse(); > ++ } > + public Type capture(Type t) { > + if (t.tag != CLASS) > + return t; > +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java > +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java 2010-06-21 22:16:20.000000000 +0100 > ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Check.java 2010-09-09 19:54:58.054019539 +0100 > +@@ -383,6 +383,10 @@ > + JCDiagnostic.fragment("incompatible.types" + (d!=null ? ".1" : ""), d), > + t, pt); > + } > ++ } catch (Infer.InvalidInstanceException ex) { > ++ JCDiagnostic d = ex.getDiagnostic(); > ++ log.error(pos, "invalid.inferred.types", t.tvars, d); > ++ return syms.errType; > + } > + } > + } > +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java > +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java 2010-06-21 22:16:20.000000000 +0100 > ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Infer.java 2010-09-09 20:00:32.891268438 +0100 > +@@ -29,6 +29,7 @@ > + import com.sun.tools.javac.util.List; > + import com.sun.tools.javac.code.*; > + import com.sun.tools.javac.code.Type.*; > ++import com.sun.tools.javac.code.Symbol.*; > + > + import static com.sun.tools.javac.code.Flags.*; > + import static com.sun.tools.javac.code.Kinds.*; > +@@ -50,6 +51,7 @@ > + > + Symtab syms; > + Types types; > ++ Resolve rs; > + > + public static Infer instance(Context context) { > + Infer instance = context.get(inferKey); > +@@ -62,43 +64,51 @@ > + context.put(inferKey, this); > + syms = Symtab.instance(context); > + types = Types.instance(context); > ++ rs = Resolve.instance(context); > + } > + > +- public static class NoInstanceException extends RuntimeException { > ++ public static class InferenceException extends RuntimeException { > + private static final long serialVersionUID = 0; > + > +- boolean isAmbiguous; // exist several incomparable best instances? > +- > + JCDiagnostic diagnostic; > + > +- NoInstanceException(boolean isAmbiguous) { > ++ InferenceException() { > + this.diagnostic = null; > +- this.isAmbiguous = isAmbiguous; > +- } > +- NoInstanceException setMessage(String key) { > +- this.diagnostic = JCDiagnostic.fragment(key); > +- return this; > +- } > +- NoInstanceException setMessage(String key, Object arg1) { > +- this.diagnostic = JCDiagnostic.fragment(key, arg1); > +- return this; > +- } > +- NoInstanceException setMessage(String key, Object arg1, Object arg2) { > +- this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2); > +- return this; > + } > +- NoInstanceException setMessage(String key, Object arg1, Object arg2, Object arg3) { > +- this.diagnostic = JCDiagnostic.fragment(key, arg1, arg2, arg3); > ++ InferenceException setMessage(String key, Object... args) { > ++ this.diagnostic = JCDiagnostic.fragment(key, args); > + return this; > + } > ++ > + public JCDiagnostic getDiagnostic() { > + return diagnostic; > + } > + } > ++ > ++ public static class NoInstanceException extends InferenceException { > ++ private static final long serialVersionUID = 1; > ++ > ++ boolean isAmbiguous; // exist several incomparable best instances? > ++ > ++ NoInstanceException(boolean isAmbiguous) { > ++ super(); > ++ this.isAmbiguous = isAmbiguous; > ++ } > ++ } > ++ > ++ public static class InvalidInstanceException extends InferenceException { > ++ private static final long serialVersionUID = 2; > ++ > ++ InvalidInstanceException() { > ++ super(); > ++ } > ++ } > ++ > + private final NoInstanceException ambiguousNoInstanceException = > + new NoInstanceException(true); > + private final NoInstanceException unambiguousNoInstanceException = > + new NoInstanceException(false); > ++ private final InvalidInstanceException invalidInstanceException = new InvalidInstanceException(); > + > + /*************************************************************************** > + * Auxiliary type values and classes > +@@ -247,7 +257,7 @@ > + */ > + public Type instantiateExpr(ForAll that, > + Type to, > +- Warner warn) throws NoInstanceException { > ++ Warner warn) throws InferenceException { > + List undetvars = Type.map(that.tvars, fromTypeVarFun); > + for (List l = undetvars; l.nonEmpty(); l = l.tail) { > + UndetVar v = (UndetVar) l.head; > +@@ -273,8 +283,7 @@ > + List targs = Type.map(undetvars, getInstFun); > + targs = types.subst(targs, that.tvars, targs); > + checkWithinBounds(that.tvars, targs, warn); > +- > +- return getInstFun.apply(qtype1); > ++ return that.inst(targs, types); > + } > + > + /** Instantiate method type `mt' by finding instantiations of > +@@ -282,36 +291,42 @@ > + */ > + public Type instantiateMethod(List tvars, > + MethodType mt, > +- List argtypes, > +- boolean allowBoxing, > +- boolean useVarargs, > +- Warner warn) throws NoInstanceException { > ++ final List argtypes, > ++ final boolean allowBoxing, > ++ final boolean useVarargs, > ++ final Warner warn) throws InferenceException { > + //-System.err.println("instantiateMethod(" + tvars + ", " + mt + ", " + argtypes + ")"); //DEBUG > + List undetvars = Type.map(tvars, fromTypeVarFun); > + List formals = mt.argtypes; > +- > ++ //need to capture exactly once - otherwise subsequent > ++ //applicability checks might fail > ++ final List capturedArgs = types.capture(argtypes); > ++ List actuals = capturedArgs; > ++ List actualsNoCapture = argtypes; > + // instantiate all polymorphic argument types and > + // set up lower bounds constraints for undetvars > + Type varargsFormal = useVarargs ? formals.last() : null; > +- while (argtypes.nonEmpty() && formals.head != varargsFormal) { > +- Type ft = formals.head; > +- Type at = argtypes.head.baseType(); > +- if (at.tag == FORALL) > +- at = instantiateArg((ForAll) at, ft, tvars, warn); > +- Type sft = types.subst(ft, tvars, undetvars); > ++ while (actuals.nonEmpty() && formals.head != varargsFormal) { > ++ Type formal = formals.head; > ++ Type actual = actuals.head.baseType(); > ++ Type actualNoCapture = actualsNoCapture.head.baseType(); > ++ if (actual.tag == FORALL) > ++ actual = instantiateArg((ForAll)actual, formal, tvars, warn); > ++ Type undetFormal = types.subst(formal, tvars, undetvars); > + boolean works = allowBoxing > +- ? types.isConvertible(at, sft, warn) > +- : types.isSubtypeUnchecked(at, sft, warn); > ++ ? types.isConvertible(actual, undetFormal, warn) > ++ : types.isSubtypeUnchecked(actual, undetFormal, warn); > + if (!works) { > + throw unambiguousNoInstanceException > + .setMessage("no.conforming.assignment.exists", > +- tvars, at, ft); > ++ tvars, actualNoCapture, formal); > + } > + formals = formals.tail; > +- argtypes = argtypes.tail; > ++ actuals = actuals.tail; > ++ actualsNoCapture = actualsNoCapture.tail; > + } > + if (formals.head != varargsFormal || // not enough args > +- !useVarargs && argtypes.nonEmpty()) { // too many args > ++ !useVarargs && actuals.nonEmpty()) { // too many args > + // argument lists differ in length > + throw unambiguousNoInstanceException > + .setMessage("arg.length.mismatch"); > +@@ -319,20 +334,21 @@ > + > + // for varargs arguments as well > + if (useVarargs) { > +- Type elt = types.elemtype(varargsFormal); > +- Type sft = types.subst(elt, tvars, undetvars); > +- while (argtypes.nonEmpty()) { > +- Type ft = sft; > +- Type at = argtypes.head.baseType(); > +- if (at.tag == FORALL) > +- at = instantiateArg((ForAll) at, ft, tvars, warn); > +- boolean works = types.isConvertible(at, sft, warn); > ++ Type elemType = types.elemtype(varargsFormal); > ++ Type elemUndet = types.subst(elemType, tvars, undetvars); > ++ while (actuals.nonEmpty()) { > ++ Type actual = actuals.head.baseType(); > ++ Type actualNoCapture = actualsNoCapture.head.baseType(); > ++ if (actual.tag == FORALL) > ++ actual = instantiateArg((ForAll)actual, elemType, tvars, warn); > ++ boolean works = types.isConvertible(actual, elemUndet, warn); > + if (!works) { > + throw unambiguousNoInstanceException > + .setMessage("no.conforming.assignment.exists", > +- tvars, at, ft); > ++ tvars, actualNoCapture, elemType); > + } > +- argtypes = argtypes.tail; > ++ actuals = actuals.tail; > ++ actualsNoCapture = actualsNoCapture.tail; > + } > + } > + > +@@ -363,16 +379,38 @@ > + } > + checkWithinBounds(tvars, undettypes.toList(), warn); > + > ++ mt = (MethodType)types.subst(mt, tvars, insttypes.toList()); > ++ > + if (!restvars.isEmpty()) { > + // if there are uninstantiated variables, > + // quantify result type with them > +- mt = new MethodType(mt.argtypes, > +- new ForAll(restvars.toList(), mt.restype), > +- mt.thrown, syms.methodClass); > ++ final List inferredTypes = insttypes.toList(); > ++ final List all_tvars = tvars; //this is the wrong tvars > ++ final MethodType mt2 = new MethodType(mt.argtypes, null, mt.thrown, syms.methodClass); > ++ mt2.restype = new ForAll(restvars.toList(), mt.restype) { > ++ @Override > ++ public Type inst(List inferred, Types types) throws NoInstanceException { > ++ List formals = types.subst(mt2.argtypes, tvars, inferred); > ++ if (!rs.argumentsAcceptable(capturedArgs, formals, > ++ allowBoxing, useVarargs, warn)) { > ++ // inferred method is not applicable > ++ throw invalidInstanceException.setMessage("inferred.do.not.conform.to.params", formals, argtypes); > ++ } > ++ // check that inferred bounds conform to their bounds > ++ checkWithinBounds(all_tvars, > ++ types.subst(inferredTypes, tvars, inferred), warn); > ++ return super.inst(inferred, types); > ++ }}; > ++ return mt2; > ++ } > ++ else if (!rs.argumentsAcceptable(capturedArgs, mt.getParameterTypes(), allowBoxing, useVarargs, warn)) { > ++ // inferred method is not applicable > ++ throw invalidInstanceException.setMessage("inferred.do.not.conform.to.params", mt.getParameterTypes(), argtypes); > ++ } > ++ else { > ++ // return instantiated version of method type > ++ return mt; > + } > +- > +- // return instantiated version of method type > +- return types.subst(mt, tvars, insttypes.toList()); > + } > + //where > + > +@@ -384,7 +422,7 @@ > + private Type instantiateArg(ForAll that, > + Type to, > + List tvars, > +- Warner warn) throws NoInstanceException { > ++ Warner warn) throws InferenceException { > + List targs; > + try { > + return instantiateExpr(that, to, warn); > +@@ -401,16 +439,16 @@ > + private void checkWithinBounds(List tvars, > + List arguments, > + Warner warn) > +- throws NoInstanceException { > ++ throws InvalidInstanceException { > + for (List tvs = tvars, args = arguments; > + tvs.nonEmpty(); > + tvs = tvs.tail, args = args.tail) { > + if (args.head instanceof UndetVar) continue; > + List bounds = types.subst(types.getBounds((TypeVar)tvs.head), tvars, arguments); > + if (!types.isSubtypeUnchecked(args.head, bounds, warn)) > +- throw unambiguousNoInstanceException > ++ throw invalidInstanceException > + .setMessage("inferred.do.not.conform.to.bounds", > +- arguments, tvars); > ++ args.head, bounds); > + } > + } > + } > +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java > +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java 2010-06-21 22:16:20.000000000 +0100 > ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/comp/Resolve.java 2010-09-09 19:54:58.058019555 +0100 > +@@ -279,7 +279,7 @@ > + boolean allowBoxing, > + boolean useVarargs, > + Warner warn) > +- throws Infer.NoInstanceException { > ++ throws Infer.InferenceException { > + if (useVarargs && (m.flags() & VARARGS) == 0) return null; > + Type mt = types.memberType(site, m); > + > +@@ -350,7 +350,7 @@ > + try { > + return rawInstantiate(env, site, m, argtypes, typeargtypes, > + allowBoxing, useVarargs, warn); > +- } catch (Infer.NoInstanceException ex) { > ++ } catch (Infer.InferenceException ex) { > + return null; > + } > + } > +@@ -562,7 +562,7 @@ > + default: return bestSoFar; > + } > + } > +- } catch (Infer.NoInstanceException ex) { > ++ } catch (Infer.InferenceException ex) { > + switch (bestSoFar.kind) { > + case ABSENT_MTH: > + return wrongMethod.setWrongSym(sym, ex.getDiagnostic()); > +diff -Nru openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties openjdk/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties > +--- openjdk.orig/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties 2010-06-21 22:16:21.000000000 +0100 > ++++ openjdk/langtools/src/share/classes/com/sun/tools/javac/resources/compiler.properties 2010-09-09 19:54:58.058019555 +0100 > +@@ -454,6 +454,8 @@ > + type parameters of {0} cannot be determined > + compiler.err.undetermined.type.1=\ > + type parameters of {0} cannot be determined; {1} > ++compiler.err.invalid.inferred.types=\ > ++ invalid inferred types for {0}; {1} > + compiler.err.unreachable.stmt=\ > + unreachable statement > + compiler.err.initializer.must.be.able.to.complete.normally=\ > +@@ -960,7 +962,13 @@ > + compiler.misc.arg.length.mismatch=\ > + cannot instantiate from arguments because actual and formal argument lists differ in length > + compiler.misc.inferred.do.not.conform.to.bounds=\ > +- inferred type argument(s) {0} do not conform to bounds of type variable(s) {1} > ++ inferred type does not conform to declared bound(s)\n\ > ++ inferred: {0}\n\ > ++ bound(s): {1} > ++compiler.misc.inferred.do.not.conform.to.params=\ > ++ actual arguments do not conforms to inferred formal arguments\n\ > ++ required: {0}\n\ > ++ found: {1} > + > + ##### > + > +diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6302954/T6476073.java openjdk/langtools/test/tools/javac/generics/inference/6302954/T6476073.java > +--- openjdk.orig/langtools/test/tools/javac/generics/inference/6302954/T6476073.java 2010-06-21 22:16:25.000000000 +0100 > ++++ openjdk/langtools/test/tools/javac/generics/inference/6302954/T6476073.java 2010-09-09 19:54:58.058019555 +0100 > +@@ -25,6 +25,7 @@ > + * @test > + * @bug 6476073 > + * @summary Capture using super wildcard of type variables doesn't work > ++ * @ignore awaiting for 6650759 (see bug report for a detailed evaluation) > + * @compile T6476073.java > + */ > + > +diff -Nru openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java > +--- openjdk.orig/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java 1970-01-01 01:00:00.000000000 +0100 > ++++ openjdk/langtools/test/tools/javac/generics/inference/6638712/T6638712a.java 2010-09-09 19:54:58.062019572 +0100 > +@@ -0,0 +1,41 @@ > ++/* > ++ * Copyright 2009 Sun Microsystems, Inc. All Rights Reserved. > ++ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > ++ * > ++ * This code is free software; you can redistribute it and/or modify it > ++ * under the terms of the GNU General Public License version 2 only, as > ++ * published by the Free Software Foundation. > ++ * > ++ * This code is distributed in the hope that it will be useful, but WITHOUT > ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > ++ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > ++ * version 2 for more details (a copy is included in the LICENSE file that > ++ * accompanied this code). > ++ * > ++ * You should have received a copy of the GNU General Public License version > ++ * 2 along with this work; if not, write to the Free Software Foundation, > ++ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > ++ * > ++ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, > ++ * CA 95054 USA or visit www.sun.com if you need additional information or > ++ * have any questions. > ++ */ > ++ > ++/* > ++ * @test > ++ * @bug 6638712 > ++ * @author mcimadamore > > ----- End forwarded message ----- > > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > Support Free Java! > Contribute to GNU Classpath and the OpenJDK > http://www.gnu.org/software/classpath > http://openjdk.java.net > PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 From ahughes at redhat.com Wed Sep 29 12:30:21 2010 From: ahughes at redhat.com (Dr Andrew John Hughes) Date: Wed, 29 Sep 2010 20:30:21 +0100 Subject: [RFC] [Plugin] Fixes 100% cpu load In-Reply-To: <1856835854.608591285708442575.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> References: <641753939.607351285708291772.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> <1856835854.608591285708442575.JavaMail.root@zmail01.collab.prod.int.phx2.redhat.com> Message-ID: <20100929193021.GH13228@rivendell.middle-earth.co.uk> On 17:14 Tue 28 Sep , Andrew Su wrote: > Update: > -Changed to use ConcurrentHashMap. > -Used suggestion of putIfAbsent instead of locking. > Thanks. The map changes make things a lot clearer. I wanted the full file so I could see where the synchronisation blocks were. As you have one on around the whole of the if contents and another on the else contents, you could merge these and just put the whole if block inside one synchronised block. i.e. synchronized (x) { if (y) { } else { } } rather than if (y) { synchronized (x) {} } else { synchronized (x) {} } I presume it doesn't matter if another message comes while dealing with an exception? How many threads are running? Is there one per identifier? It's a minor thing but if there is a small number of threads, they could all get blocked up if they happen to all end up with messages for the same identifier while there are messages waiting with another identifier. On that note, do we have any current documentation on the architecture of the plugin? > Cheers, > --Andrew > > Attached: > Modified version of file. > Patch file. > > > ----- "Dr Andrew John Hughes" wrote: > > > From: "Dr Andrew John Hughes" > > To: "Andrew Su" > > Cc: distro-pkg-dev at openjdk.java.net > > Sent: Tuesday, September 28, 2010 4:27:46 PM GMT -05:00 US/Canada Eastern > > Subject: Re: [RFC] [Plugin] Fixes 100% cpu load > > > > On 13:46 Tue 28 Sep , Andrew Su wrote: > > > > > > ----- "Dr Andrew John Hughes" wrote: > > > > > > > From: "Dr Andrew John Hughes" > > > > To: "Andrew Su" > > > > Cc: distro-pkg-dev at openjdk.java.net > > > > Sent: Tuesday, September 28, 2010 1:17:04 PM GMT -05:00 US/Canada > > Eastern > > > > Subject: Re: [RFC] [Plugin] Fixes 100% cpu load > > > > > > > > On 15:25 Mon 27 Sep , Andrew Su wrote: > > > > > Hello, > > > > > > > > > > This patch fixes the following: > > > > > *Plugin goes into a deadlock waiting for another thread to > > > > initialize applet, and no more threads are available to consume > > > > messages. > > > > > *Plugin handles "destroy" message when another thread trying to > > > > create the applet is kicked off processor before setting the > > status to > > > > PRE_INIT. > > > > > > > > > > > > > > > Example. > > > > > We have 2 MessageConsumer threads. > > > > > Passes "destroy" message to both of them for applet 1 and applet > > 2. > > > > > Thread 1: Spinlock waiting for another thread to initialize > > applet > > > > 1. > > > > > Thread 2: Spinlock waiting for another thread to initialize > > applet > > > > 2. > > > > > Both threads are now in deadlock. > > > > > > > > > > Proposed Patch: > > > > > When message is destroy, don't spinlock, handle it right away. > > > > > -Problem with this: handles destroy right before we start > > > > initializing the applet. > > > > > -Fix to new problem: Synchronize the two blocks > > > > > --Case 1:If in process of initializing, finish initializing. > > handle > > > > the destroy. > > > > > --Case 2:If destroy already handled, don't initialize. > > > > > > > > > > > > > > > Cheers, > > > > > Andrew > > > > > > > > Some points: > > > > > > > > * Why is the access to appLock protected by mainLock in the first > > > > block > > > > but the later get() is not? > > > I've put that under mainLock because we don't want two thread or > > more inside the if statements and setting one of them setting it to > > one value then later after locking it, change the reference inside > > appLock. > > > > > > line 1 //synchronized(mainLock){ > > > line 2 if (!appLock.containsKey(identifier)){ > > > line 3 boolean[] lock = {false}; > > > line 4 appLock.put(identifier, lock); > > > line 5 } > > > line 6 //} > > > > > > Without locking it here with mainLock we come to the following > > issue. > > > -Thread 1: kicked off processor at line 3 > > > -Thread 2: processes the if block, then continues to the later > > synchronized block (lock acquired) > > > -Thread 1: resumes and reassign a new lock for identifier in > > appLock. > > > > > > Now thread 1 and thread 2 are holding two different locks. > > > > > > Locking the above would make sure that appLock will not get > > reassigned a different value later for the same identifier. > > > > > > > Yeah I get that. It's taken me a bit to get my head round it, but I > > think I understand what > > you're trying to do now and I think it could be done in a simpler > > way. > > > > On first reading, I didn't realise that you were also creating > > mainLock. As it is, it seems > > the logic is: > > > > 1. Maintain a map containing locks for each identifier. > > 2. If an identifier doesn't have a lock, create one. mainLock is > > used to make this concurrent. > > 3. Once we've established we have a lock, only process a message with > > an identifier if a message is > > not being processed with the same identifier. Otherwise, block. > > > > You can make this simpler by getting rid of mainLock and using a > > ConcurrentHashMap: > > Use: > > > > private static ConcurrentMap appLock = new > > ConcurrentHashMap(); > > > > in place of the current appLock and mainLock initialisation. > > Use: > > > > appLock.putIfAbsent(identifier, new Object()); > > > > in place of: > > > > > line 1 //synchronized(mainLock){ > > > line 2 if (!appLock.containsKey(identifier)){ > > > line 3 boolean[] lock = {false}; > > > line 4 appLock.put(identifier, lock); > > > line 5 } > > > line 6 //} > > > > putIfAbsent is the equivalent of doing: > > > > if (!map.containsKey(key)) > > return map.put(key, value); > > else > > return map.get(key); > > > > atomically (we ignore the return value). > > > > > > * On the same subject, why is appLock a Hashtable rather than a > > > > HashMap? > > > It could be changed to a HashMap, I'm sure it can even be > > implemented as array too. > > > > > > > > > > Do you need the synchronisation this provides? If so, would it > > not be better > > > > to synchronise a HashMap or use one of the concurrent collections > > with better > > > > performance? > > > I'm not quite sure I'm interpreting this question correctly, but the > > synchronization is done on the boolean[], which is much faster than > > doing it on something that would need to call a constructor. > > > > What I meant is that Hashtable has its own synchronisation i.e. every > > call is: > > > > lock(); > > doWork(); > > unlock(); > > > > where the lock is on the hashtable. The same is true of other 1.0 > > collection classes like Vector. > > If you don't need concurrency, this is inefficent. If you do, it's > > usually better to use one of the concurrency collections > > added in 1.5 which have better performance. The same is true of > > StringBuffer/Builder, with the former being synchronised. > > > > Using a boolean[] doesn't avoid construction, as you're creating and > > populating an array object. If you weren't creating > > an object, you wouldn't have a monitor to synchronise on. In the > > above, I've reverted to use Object as the lock as it's a > > lot clearer what's going on; I was assuming you were storing content > > in these arrays at first rather than just using them > > as locks. > > > > > > > > > It's unclear whether the Hashtable's internal lock is protecting > > its contents, > > > > whether mainLock is or some strange combination of both. > > > Hashtable does synchronization when adding and reading. > > > > > > > * The second synchronised block is far too big. Is this really > > > > necessary? > > > I would believe so, this goes back to the problem with destroying > > the applet while one thread is already in process of initializing it. > > > > > > > * Seems to be using 8 space indentation, making this hard to > > read. > > > Will fix. > > > > > > > Looking at the rest of the file, it seems you're not the initial > > culprit :-) > > > > Could you attach a copy of the changed file? It would be easier to > > examine than trying to read this diff, > > as essentially the whole method seems to be rewritten. > > > > > > > > > > It would help a lot if you could explain how this solution is > > supposed > > > > to work, > > > > and how you intend appLock to function. To that end, this should > > be > > > > documented in > > > > the code too. > > > Will fix. > > > > > > > What's still unclear to me is how these identifiers work and why this > > problem is solved by having one thread per identifier. > > > > > > > > > > > > > > diff -r 5c0d756b4bb6 > > > > plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > > > > > --- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > > Fri > > > > Sep 24 15:25:51 2010 +0100 > > > > > +++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java > > Mon > > > > Sep 27 14:59:43 2010 -0400 > > > > > @@ -360,6 +360,9 @@ > > > > > > > > > > private static Long requestIdentityCounter = 0L; > > > > > > > > > > + private static Hashtable appLock = new > > > > Hashtable(); > > > > > + private static int[] mainLock = {0}; > > > > > + > > > > > /** > > > > > * Null constructor to allow instantiation via > > newInstance() > > > > > */ > > > > > @@ -505,78 +508,92 @@ > > > > > */ > > > > > public static void handleMessage(int identifier, int > > > > reference, String message) > > > > > { > > > > > - > > > > > + synchronized(mainLock){ > > > > > + if (!appLock.containsKey(identifier)){ > > > > > + boolean[] lock = {false}; > > > > > + appLock.put(identifier, lock); > > > > > + } > > > > > + } > > > > > + > > > > > PluginDebug.debug("PAV handling: " + message); > > > > > > > > > > try { > > > > > if (message.startsWith("handle")) { > > > > > - > > > > > - // Extract the information from the message > > > > > - String[] msgParts = new String[4]; > > > > > - for (int i=0; i < 3; i++) { > > > > > - int spaceLocation = message.indexOf(' '); > > > > > - int nextSpaceLocation = message.indexOf(' ', > > > > spaceLocation+1); > > > > > - msgParts[i] = message.substring(spaceLocation + > > 1, > > > > nextSpaceLocation); > > > > > - message = message.substring(nextSpaceLocation + > > 1); > > > > > + synchronized(appLock.get(identifier)){ > > > > > + if (!status.containsKey(identifier)){ > > > > > + // Extract the information from the message > > > > > + String[] msgParts = new String[4]; > > > > > + for (int i=0; i < 3; i++) { > > > > > + int spaceLocation = message.indexOf(' '); > > > > > + int nextSpaceLocation = message.indexOf(' ', > > > > spaceLocation+1); > > > > > + msgParts[i] = message.substring(spaceLocation > > + 1, > > > > nextSpaceLocation); > > > > > + message = message.substring(nextSpaceLocation > > + > > > > 1); > > > > > + } > > > > > + > > > > > + long handle = Long.parseLong(msgParts[0]); > > > > > + String width = msgParts[1]; > > > > > + String height = msgParts[2]; > > > > > + > > > > > + int spaceLocation = message.indexOf(' ', > > > > "tag".length()+1); > > > > > + String documentBase = > > > > > + > > > > UrlUtil.decode(message.substring("tag".length() + 1, > > spaceLocation)); > > > > > + String tag = > > message.substring(spaceLocation+1); > > > > > + > > > > > + PluginDebug.debug ("Handle = " + handle + "\n" > > + > > > > > + "Width = " + width + "\n" + > > > > > + "Height = " + height + "\n" > > + > > > > > + "DocumentBase = " + > > documentBase > > > > + "\n" + > > > > > + "Tag = " + tag); > > > > > + > > > > > + status.put(identifier, > > > > PAV_INIT_STATUS.PRE_INIT); > > > > > + PluginAppletViewer.parse > > > > > + (identifier, handle, width, height, > > > > > + new StringReader(tag), > > > > > + new URL(documentBase)); > > > > > + > > > > > + > > > > > + int maxWait = APPLET_TIMEOUT; // wait for > > applet > > > > to fully load > > > > > + int wait = 0; > > > > > + while > > > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > > > > > + (wait < maxWait)) { > > > > > + > > > > > + try { > > > > > + Thread.sleep(50); > > > > > + wait += 50; > > > > > + } catch (InterruptedException ie) { > > > > > + // just wait > > > > > + } > > > > > + } > > > > > + > > > > > + if > > > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > > > > > + throw new Exception("Applet > > initialization > > > > timeout"); > > > > > + > > > > > + PluginAppletViewer oldFrame = > > > > applets.get(identifier); > > > > > + reFrame(oldFrame, oldFrame.identifier, > > > > oldFrame.statusMsgStream, > > > > > + handle, oldFrame.panel); > > > > > + } > > > > > + appLock.get(identifier).notifyAll(); > > > > > } > > > > > - > > > > > - long handle = Long.parseLong(msgParts[0]); > > > > > - String width = msgParts[1]; > > > > > - String height = msgParts[2]; > > > > > - > > > > > - int spaceLocation = message.indexOf(' ', > > > > "tag".length()+1); > > > > > - String documentBase = > > > > > - > > > > UrlUtil.decode(message.substring("tag".length() + 1, > > spaceLocation)); > > > > > - String tag = message.substring(spaceLocation+1); > > > > > > > - > > > > > - PluginDebug.debug ("Handle = " + handle + "\n" + > > > > > - "Width = " + width + "\n" + > > > > > - "Height = " + height + "\n" + > > > > > - "DocumentBase = " + > > documentBase + > > > > "\n" + > > > > > - "Tag = " + tag); > > > > > - > > > > > - status.put(identifier, > > > > PAV_INIT_STATUS.PRE_INIT); > > > > > - PluginAppletViewer.parse > > > > > - (identifier, handle, width, height, > > > > > - new StringReader(tag), > > > > > - new URL(documentBase)); > > > > > - > > > > > - > > > > > - int maxWait = APPLET_TIMEOUT; // wait for > > applet > > > > to fully load > > > > > - int wait = 0; > > > > > - while > > > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > > > > > - (wait < maxWait)) { > > > > > - > > > > > - try { > > > > > - Thread.sleep(50); > > > > > - wait += 50; > > > > > - } catch (InterruptedException ie) { > > > > > - // just wait > > > > > - } > > > > > - } > > > > > - > > > > > - if > > > > (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > > > > > - throw new Exception("Applet > > initialization > > > > timeout"); > > > > > - > > > > > - PluginAppletViewer oldFrame = > > > > applets.get(identifier); > > > > > - reFrame(oldFrame, oldFrame.identifier, > > > > oldFrame.statusMsgStream, > > > > > - handle, oldFrame.panel); > > > > > - > > > > > } else { > > > > > - PluginDebug.debug ("Handling message: " + > > message > > > > + " instance " + identifier + " " + Thread.currentThread()); > > > > > - > > > > > - // Wait till initialization finishes > > > > > - while (!applets.containsKey(identifier) && > > > > > - ( > > > > > - !status.containsKey(identifier) || > > > > > - > > > > status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > > > > > - ) > > > > > - ); > > > > > - > > > > > - // don't bother processing further for > > inactive > > > > applets > > > > > - if > > > > (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > > > > > - return; > > > > > - > > > > > + synchronized(appLock.get(identifier)){ > > > > > + PluginDebug.debug ("Handling message: " + > > message > > > > + " instance " + identifier + " " + Thread.currentThread()); > > > > > + > > > > > + // Wait till initialization finishes > > > > > + while (!applets.containsKey(identifier) && > > > > > + ( > > > > > + !status.containsKey(identifier) || > > > > > > > + > > > > status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > > > > > + ) && !message.startsWith("destroy") > > > > > + ){ > > > > appLock.get(identifier).wait(5*1000000000);} > > > > > + > > > > > + if (message.startsWith("destroy")) > > > > > + > > applets.get(identifier).handleMessage(reference, > > > > message); > > > > > + > > > > > + // don't bother processing further for > > inactive > > > > applets > > > > > + if > > > > (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > > > > > + return; > > > > > + } > > > > > + > > > > > > > applets.get(identifier).handleMessage(reference, > > > > message); > > > > > } > > > > > } catch (Exception e) { > > > > > > > > > > > > -- > > > > Andrew :) > > > > > > > > Free Java Software Engineer > > > > Red Hat, Inc. (http://www.redhat.com) > > > > > > > > Support Free Java! > > > > Contribute to GNU Classpath and the OpenJDK > > > > http://www.gnu.org/software/classpath > > > > http://openjdk.java.net > > > > PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > > > > Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 > > > > > > > > > Thanks for your comments, I hoped I cleared up some of the questions > > you had. > > > Any other comments or question is welcome. > > > > > > Cheers, > > > Andrew > > > > > > > -- > > Andrew :) > > > > Free Java Software Engineer > > Red Hat, Inc. (http://www.redhat.com) > > > > Support Free Java! > > Contribute to GNU Classpath and the OpenJDK > > http://www.gnu.org/software/classpath > > http://openjdk.java.net > > PGP Key: 94EFD9D8 (http://subkeys.pgp.net) > > Fingerprint = F8EF F1EA 401E 2E60 15FA 7927 142C 2591 94EF D9D8 > /* PluginAppletViewer -- Handles embedding of the applet panel > Copyright (C) 2008 Red Hat > > This file is part of IcedTea. > > IcedTea is free software; you can redistribute it and/or modify > it under the terms of the GNU General Public License as published by > the Free Software Foundation; either version 2, or (at your option) > any later version. > > IcedTea is distributed in the hope that it will be useful, but > WITHOUT ANY WARRANTY; without even the implied warranty of > MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > General Public License for more details. > > You should have received a copy of the GNU General Public License > along with IcedTea; see the file COPYING. If not, write to the > Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA > 02110-1301 USA. > > Linking this library statically or dynamically with other modules is > making a combined work based on this library. Thus, the terms and > conditions of the GNU General Public License cover the whole > combination. > > As a special exception, the copyright holders of this library give you > permission to link this library with independent modules to produce an > executable, regardless of the license terms of these independent > modules, and to copy and distribute the resulting executable under > terms of your choice, provided that you also meet, for each linked > independent module, the terms and conditions of the license of that > module. An independent module is a module which is not derived from > or based on this library. If you modify this library, you may extend > this exception to your version of the library, but you are not > obligated to do so. If you do not wish to do so, delete this > exception statement from your version. */ > > /* > * Copyright 1995-2004 Sun Microsystems, Inc. All Rights Reserved. > * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. > * > * This code is free software; you can redistribute it and/or modify it > * under the terms of the GNU General Public License version 2 only, as > * published by the Free Software Foundation. Sun designates this > * particular file as subject to the "Classpath" exception as provided > * by Sun in the LICENSE file that accompanied this code. > * > * This code is distributed in the hope that it will be useful, but WITHOUT > * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License > * version 2 for more details (a copy is included in the LICENSE file that > * accompanied this code). > * > * You should have received a copy of the GNU General Public License version > * 2 along with this work; if not, write to the Free Software Foundation, > * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. > * > * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, > * CA 95054 USA or visit www.sun.com if you need additional information or > * have any questions. > */ > > package sun.applet; > > import java.applet.Applet; > import java.applet.AppletContext; > import java.applet.AudioClip; > import java.awt.Dimension; > import java.awt.Frame; > import java.awt.Graphics; > import java.awt.Image; > import java.awt.Insets; > import java.awt.Label; > import java.awt.Toolkit; > import java.awt.event.WindowAdapter; > import java.awt.event.WindowEvent; > import java.awt.event.WindowListener; > import java.awt.print.PageFormat; > import java.awt.print.Printable; > import java.io.BufferedReader; > import java.io.IOException; > import java.io.InputStream; > import java.io.InputStreamReader; > import java.io.PrintStream; > import java.io.Reader; > import java.io.StringReader; > import java.io.UnsupportedEncodingException; > import java.lang.reflect.InvocationTargetException; > import java.net.MalformedURLException; > import java.net.SocketPermission; > import java.net.URI; > import java.net.URL; > import java.security.AccessController; > import java.security.AllPermission; > import java.security.PrivilegedAction; > import java.util.Enumeration; > import java.util.HashMap; > import java.util.Hashtable; > import java.util.Iterator; > import java.util.Map; > import java.util.Vector; > import java.util.concurrent.ConcurrentHashMap; > > import javax.swing.SwingUtilities; > > import net.sourceforge.jnlp.NetxPanel; > import net.sourceforge.jnlp.runtime.JNLPClassLoader; > import sun.awt.AppContext; > import sun.awt.SunToolkit; > import sun.awt.X11.XEmbeddedFrame; > import sun.misc.Ref; > > import com.sun.jndi.toolkit.url.UrlUtil; > > /** > * Lets us construct one using unix-style one shot behaviors > */ > > class PluginAppletPanelFactory > { > > public AppletPanel createPanel(PluginStreamHandler streamhandler, > int identifier, > long handle, int x, int y, > final URL doc, final Hashtable atts) { > > AppletViewerPanel panel = (AppletViewerPanel) AccessController.doPrivileged(new PrivilegedAction() { > public Object run() { > try { > AppletPanel panel = new NetxPanel(doc, atts, false); > AppletViewerPanel.debug("Using NetX panel"); > PluginDebug.debug(atts.toString()); > return panel; > } catch (Exception ex) { > AppletViewerPanel.debug("Unable to start NetX applet - defaulting to Sun applet", ex); > return new AppletViewerPanel(doc, atts); > } > } > }); > > > > // put inside initial 0 handle frame > PluginAppletViewer.reFrame(null, identifier, System.out, 0, panel); > > panel.init(); > > // Start the applet > initEventQueue(panel); > > // Applet initialized. Find out it's classloader and add it to the list > String portComponent = doc.getPort() != -1 ? ":" + doc.getPort() : ""; > String codeBase = doc.getProtocol() + "://" + doc.getHost() + portComponent; > > if (atts.get("codebase") != null) { > try { > URL appletSrcURL = new URL(codeBase + (String) atts.get("codebase")); > codeBase = appletSrcURL.getProtocol() + "://" + appletSrcURL.getHost(); > } catch (MalformedURLException mfue) { > // do nothing > } > } > > > // Wait for the panel to initialize > // (happens in a separate thread) > Applet a; > > // Wait for panel to come alive > int maxWait = PluginAppletViewer.APPLET_TIMEOUT; // wait for panel to come alive > int wait = 0; > while ((panel == null) || (!((NetxPanel) panel).isAlive() && wait < maxWait)) { > try { > Thread.sleep(50); > wait += 50; > } catch (InterruptedException ie) { > // just wait > } > } > > // Wait for the panel to initialize > // (happens in a separate thread) > while (panel.getApplet() == null && > ((NetxPanel) panel).isAlive()) { > try { > Thread.sleep(50); > PluginDebug.debug("Waiting for applet to initialize..."); > } catch (InterruptedException ie) { > // just wait > } > } > > a = panel.getApplet(); > > // Still null? > if (panel.getApplet() == null) { > streamhandler.write("instance " + identifier + " reference " + -1 + " fatalError " + "Initialization failed"); > return null; > } > > PluginDebug.debug("Applet " + a.getClass() + " initialized"); > streamhandler.write("instance " + identifier + " reference 0 initialized"); > > AppletSecurityContextManager.getSecurityContext(0).associateSrc(((NetxPanel) panel).getAppletClassLoader(), doc); > AppletSecurityContextManager.getSecurityContext(0).associateInstance(identifier, ((NetxPanel) panel).getAppletClassLoader()); > > return panel; > } > > public boolean isStandalone() > { > return false; > } > > /** > * Send the initial set of events to the appletviewer event queue. > * On start-up the current behaviour is to load the applet and call > * Applet.init() and Applet.start(). > */ > private void initEventQueue(AppletPanel panel) { > // appletviewer.send.event is an undocumented and unsupported system > // property which is used exclusively for testing purposes. > PrivilegedAction pa = new PrivilegedAction() { > public Object run() { > return System.getProperty("appletviewer.send.event"); > } > }; > String eventList = (String) AccessController.doPrivileged(pa); > > if (eventList == null) { > // Add the standard events onto the event queue. > panel.sendEvent(AppletPanel.APPLET_LOAD); > panel.sendEvent(AppletPanel.APPLET_INIT); > panel.sendEvent(AppletPanel.APPLET_START); > } else { > // We're testing AppletViewer. Force the specified set of events > // onto the event queue, wait for the events to be processed, and > // exit. > > // The list of events that will be executed is provided as a > // ","-separated list. No error-checking will be done on the list. > String [] events = splitSeparator(",", eventList); > > for (int i = 0; i < events.length; i++) { > PluginDebug.debug("Adding event to queue: " + events[i]); > if (events[i].equals("dispose")) > panel.sendEvent(AppletPanel.APPLET_DISPOSE); > else if (events[i].equals("load")) > panel.sendEvent(AppletPanel.APPLET_LOAD); > else if (events[i].equals("init")) > panel.sendEvent(AppletPanel.APPLET_INIT); > else if (events[i].equals("start")) > panel.sendEvent(AppletPanel.APPLET_START); > else if (events[i].equals("stop")) > panel.sendEvent(AppletPanel.APPLET_STOP); > else if (events[i].equals("destroy")) > panel.sendEvent(AppletPanel.APPLET_DESTROY); > else if (events[i].equals("quit")) > panel.sendEvent(AppletPanel.APPLET_QUIT); > else if (events[i].equals("error")) > panel.sendEvent(AppletPanel.APPLET_ERROR); > else > // non-fatal error if we get an unrecognized event > PluginDebug.debug("Unrecognized event name: " + events[i]); > } > > while (!panel.emptyEventQueue()) ; > } > } > > > /** > * Split a string based on the presence of a specified separator. Returns > * an array of arbitrary length. The end of each element in the array is > * indicated by the separator of the end of the string. If there is a > * separator immediately before the end of the string, the final element > * will be empty. None of the strings will contain the separator. Useful > * when separating strings such as "foo/bar/bas" using separator "/". > * > * @param sep The separator. > * @param s The string to split. > * @return An array of strings. Each string in the array is determined > * by the location of the provided sep in the original string, > * s. Whitespace not stripped. > */ > private String [] splitSeparator(String sep, String s) { > Vector v = new Vector(); > int tokenStart = 0; > int tokenEnd = 0; > > while ((tokenEnd = s.indexOf(sep, tokenStart)) != -1) { > v.addElement(s.substring(tokenStart, tokenEnd)); > tokenStart = tokenEnd+1; > } > // Add the final element. > v.addElement(s.substring(tokenStart)); > > String [] retVal = new String[v.size()]; > v.copyInto(retVal); > return retVal; > } > } > > class PluginParseRequest > { > long handle; > String tag; > String documentbase; > } > > /* > */ > // FIXME: declare JSProxy implementation > public class PluginAppletViewer extends XEmbeddedFrame > implements AppletContext, Printable { > /** > * Some constants... > */ > private static String defaultSaveFile = "Applet.ser"; > > private static enum PAV_INIT_STATUS {PRE_INIT, IN_INIT, INIT_COMPLETE, INACTIVE}; > > /** > * The panel in which the applet is being displayed. > */ > AppletViewerPanel panel; > > /** > * The status line. > */ > Label label; > > /** > * output status messages to this stream > */ > > PrintStream statusMsgStream; > > int identifier; > > private static HashMap requests = > new HashMap(); > > // Instance identifier -> PluginAppletViewer object. > private static HashMap applets = > new HashMap(); > > private static PluginStreamHandler streamhandler; > > private static PluginCallRequestFactory requestFactory; > > private static HashMap status = > new HashMap(); > > > private long handle = 0; > private WindowListener windowEventListener = null; > private AppletEventListener appletEventListener = null; > > public static final int APPLET_TIMEOUT = 180000; > > private static Long requestIdentityCounter = 0L; > > private static ConcurrentHashMap appLock = new ConcurrentHashMap(); > > /** > * Null constructor to allow instantiation via newInstance() > */ > public PluginAppletViewer() { > } > > public static void reFrame(PluginAppletViewer oldFrame, > int identifier, PrintStream statusMsgStream, > long handle, AppletViewerPanel panel) { > > PluginDebug.debug("Reframing " + panel); > > // SecurityManager MUST be set, and only privileged code may call reFrame() > System.getSecurityManager().checkPermission(new AllPermission()); > > // Same handle => nothing to do > if (oldFrame != null && handle == oldFrame.handle) > return; > > PluginAppletViewer newFrame = new PluginAppletViewer(handle, identifier, statusMsgStream, panel); > > if (oldFrame != null) { > applets.remove(oldFrame.identifier); > oldFrame.removeWindowListener(oldFrame.windowEventListener); > panel.removeAppletListener(oldFrame.appletEventListener); > oldFrame.remove(panel); > oldFrame.dispose(); > } > > newFrame.add("Center", panel); > newFrame.pack(); > > newFrame.appletEventListener = new AppletEventListener(newFrame, newFrame); > panel.addAppletListener(newFrame.appletEventListener); > > applets.put(identifier, newFrame); > > // dispose oldframe if necessary > if (oldFrame != null) { > oldFrame.dispose(); > } > > PluginDebug.debug(panel + " reframed"); > } > > /** > * Create new plugin appletviewer frame > */ > private PluginAppletViewer(long handle, final int identifier, > PrintStream statusMsgStream, > AppletViewerPanel appletPanel) { > > super(handle, true); > this.statusMsgStream = statusMsgStream; > this.identifier = identifier; > this.panel = appletPanel; > > if (!appletPanels.contains(panel)) > appletPanels.addElement(panel); > > windowEventListener = new WindowAdapter() { > > public void windowClosing(WindowEvent evt) { > appletClose(); > } > > public void windowIconified(WindowEvent evt) { > appletStop(); > } > > public void windowDeiconified(WindowEvent evt) { > appletStart(); > } > }; > > addWindowListener(windowEventListener); > > } > > private static class AppletEventListener implements AppletListener > { > final Frame frame; > final PluginAppletViewer appletViewer; > > public AppletEventListener(Frame frame, PluginAppletViewer appletViewer) > { > this.frame = frame; > this.appletViewer = appletViewer; > } > > public void appletStateChanged(AppletEvent evt) > { > AppletPanel src = (AppletPanel)evt.getSource(); > > switch (evt.getID()) { > case AppletPanel.APPLET_RESIZE: { > if(src != null) { > appletViewer.resize(appletViewer.preferredSize()); > appletViewer.validate(); > } > break; > } > case AppletPanel.APPLET_LOADING_COMPLETED: { > Applet a = src.getApplet(); // sun.applet.AppletPanel > > // Fixed #4754451: Applet can have methods running on main > // thread event queue. > // > // The cause of this bug is that the frame of the applet > // is created in main thread group. Thus, when certain > // AWT/Swing events are generated, the events will be > // dispatched through the wrong event dispatch thread. > // > // To fix this, we rearrange the AppContext with the frame, > // so the proper event queue will be looked up. > // > // Swing also maintains a Frame list for the AppContext, > // so we will have to rearrange it as well. > // > if (a != null) > AppletPanel.changeFrameAppContext(frame, SunToolkit.targetToAppContext(a)); > else > AppletPanel.changeFrameAppContext(frame, AppContext.getAppContext()); > > status.put(appletViewer.identifier, PAV_INIT_STATUS.INIT_COMPLETE); > > break; > } > } > } > } > > public static void setStreamhandler(PluginStreamHandler sh) { > streamhandler = sh; > } > > public static void setPluginCallRequestFactory(PluginCallRequestFactory rf) { > requestFactory = rf; > } > > /** > * Handle an incoming message from the plugin. > */ > public static void handleMessage(int identifier, int reference, String message) > { > > // Ensures that only ONE lock exist per identifier > appLock.putIfAbsent(identifier, new Object()); > > PluginDebug.debug("PAV handling: " + message); > > try { > if (message.startsWith("handle")) { > synchronized(appLock.get(identifier)){ > // Continue only if this was not already processed. > // This includes destroyed or already initialized. > if (!status.containsKey(identifier)){ > // Extract the information from the message > String[] msgParts = new String[4]; > for (int i=0; i < 3; i++) { > int spaceLocation = message.indexOf(' '); > int nextSpaceLocation = message.indexOf(' ', spaceLocation+1); > msgParts[i] = message.substring(spaceLocation + 1, nextSpaceLocation); > message = message.substring(nextSpaceLocation + 1); > } > > long handle = Long.parseLong(msgParts[0]); > String width = msgParts[1]; > String height = msgParts[2]; > > int spaceLocation = message.indexOf(' ', "tag".length()+1); > String documentBase = > UrlUtil.decode(message.substring("tag".length() + 1, spaceLocation)); > String tag = message.substring(spaceLocation+1); > > PluginDebug.debug ("Handle = " + handle + "\n" + > "Width = " + width + "\n" + > "Height = " + height + "\n" + > "DocumentBase = " + documentBase + "\n" + > "Tag = " + tag); > > status.put(identifier, PAV_INIT_STATUS.PRE_INIT); > PluginAppletViewer.parse > (identifier, handle, width, height, > new StringReader(tag), > new URL(documentBase)); > > > int maxWait = APPLET_TIMEOUT; // wait for applet to fully load > int wait = 0; > while (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && > (wait < maxWait)) { > > try { > Thread.sleep(50); > wait += 50; > } catch (InterruptedException ie) { > // just wait > } > } > > if (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE)) > throw new Exception("Applet initialization timeout"); > > PluginAppletViewer oldFrame = applets.get(identifier); > reFrame(oldFrame, oldFrame.identifier, oldFrame.statusMsgStream, > handle, oldFrame.panel); > } > appLock.get(identifier).notifyAll(); // Wake up all threads that are waiting for this lock. > } > } else { > synchronized(appLock.get(identifier)){ > PluginDebug.debug ("Handling message: " + message + " instance " + identifier + " " + Thread.currentThread()); > > // Wait till initialization finishes unless > // message is to destroy the applet. > while (!applets.containsKey(identifier) && > ( > !status.containsKey(identifier) || > status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT) > ) && !message.startsWith("destroy") > ){ appLock.get(identifier).wait(5*1000000000);} // > > if (message.startsWith("destroy")) > applets.get(identifier).handleMessage(reference, message); > > // don't bother processing further for inactive applets > if (status.get(identifier).equals(PAV_INIT_STATUS.INACTIVE)) > return; > > applets.get(identifier).handleMessage(reference, message); > } > > } > } catch (Exception e) { > > e.printStackTrace(); > > // If an exception happened during pre-init, we need to update status > if (status.get(identifier).equals(PAV_INIT_STATUS.PRE_INIT)) > status.put(identifier, PAV_INIT_STATUS.INACTIVE); > > throw new RuntimeException("Failed to handle message: " + > message + " for instance " + identifier, e); > } > } > > public void handleMessage(int reference, String message) > { > if (message.startsWith("width")) { > > // Wait for panel to come alive > int maxWait = APPLET_TIMEOUT; // wait for panel to come alive > int wait = 0; > while (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && wait < maxWait) { > > try { > Thread.sleep(50); > wait += 50; > } catch (InterruptedException ie) { > // just wait > } > } > > > // 0 => width, 1=> width_value, 2 => height, 3=> height_value > String[] dimMsg = message.split(" "); > > final int height = (int) (Integer.parseInt(dimMsg[3])); > final int width = (int) (Integer.parseInt(dimMsg[1])); > > if (panel instanceof NetxPanel) > ((NetxPanel) panel).updateSizeInAtts(height, width); > > try { > SwingUtilities.invokeAndWait(new Runnable() { > public void run() { > > setSize(width, height); > > // There is a rather odd drawing bug whereby resizing > // the panel makes no difference on initial call > // because the panel thinks that it is already the > // right size. Validation has no effect there either. > // So we work around by setting size to 1, validating, > // and then setting to the right size and validating > // again. This is not very efficient, and there is > // probably a better way -- but resizing happens > // quite infrequently, so for now this is how we do it > > panel.setSize(1,1); > panel.validate(); > > panel.setSize(width, height); > panel.validate(); > > panel.applet.resize(width, height); > panel.applet.validate(); > } > }); > } catch (InterruptedException e) { > // do nothing > e.printStackTrace(); > } catch (InvocationTargetException e) { > // do nothing > e.printStackTrace(); > } > > } else if (message.startsWith("destroy")) { > dispose(); > status.put(identifier, PAV_INIT_STATUS.INACTIVE); > } else if (message.startsWith("GetJavaObject")) { > > // FIXME: how do we determine what security context this > // object should belong to? > Object o; > > // Wait for panel to come alive > int maxWait = APPLET_TIMEOUT; // wait for panel to come alive > int wait = 0; > while ((panel == null) || (!((NetxPanel) panel).isAlive() && wait < maxWait)) { > try { > Thread.sleep(50); > wait += 50; > } catch (InterruptedException ie) { > // just wait > } > } > > // Wait for the panel to initialize > // (happens in a separate thread) > while (panel.getApplet() == null && > ((NetxPanel) panel).isAlive()) { > try { > Thread.sleep(50); > PluginDebug.debug("Waiting for applet to initialize..."); > } catch (InterruptedException ie) { > // just wait > } > } > > PluginDebug.debug(panel + " -- " + panel.getApplet() + " -- " + ((NetxPanel) panel).isAlive()); > > // Still null? > if (panel.getApplet() == null) { > this.streamhandler.write("instance " + identifier + " reference " + -1 + " fatalError " + "Initialization failed"); > return; > } > > o = panel.getApplet(); > PluginDebug.debug ("Looking for object " + o + " panel is " + panel); > AppletSecurityContextManager.getSecurityContext(0).store(o); > PluginDebug.debug ("WRITING 1: " + "context 0 reference " + reference + " GetJavaObject " > + AppletSecurityContextManager.getSecurityContext(0).getIdentifier(o)); > streamhandler.write("context 0 reference " + reference + " GetJavaObject " > + AppletSecurityContextManager.getSecurityContext(0).getIdentifier(o)); > PluginDebug.debug ("WRITING 1 DONE"); > } > } > > // FIXME: Kind of hackish way to ensure synchronized re-drawing > private synchronized void forceredraw() { > doLayout(); > } > > /* > * Methods for java.applet.AppletContext > */ > > private static Map audioClips = new HashMap(); > > /** > * Get an audio clip. > */ > public AudioClip getAudioClip(URL url) { > checkConnect(url); > synchronized (audioClips) { > AudioClip clip = (AudioClip)audioClips.get(url); > if (clip == null) { > audioClips.put(url, clip = new AppletAudioClip(url)); > } > return clip; > } > } > > private static Map imageRefs = new HashMap(); > > /** > * Get an image. > */ > public Image getImage(URL url) { > return getCachedImage(url); > } > > private Image getCachedImage(URL url) { > // System.getSecurityManager().checkConnection(url.getHost(), url.getPort()); > return (Image)getCachedImageRef(url).get(); > } > > /** > * Get an image ref. > */ > private synchronized Ref getCachedImageRef(URL url) { > PluginDebug.debug("getCachedImageRef() searching for " + url); > > try { > > String originalURL = url.toString(); > String codeBase = panel.getCodeBase().toString(); > > if (originalURL.startsWith(codeBase)) { > > PluginDebug.debug("getCachedImageRef() got URL = " + url); > PluginDebug.debug("getCachedImageRef() plugin codebase = " + codeBase); > > // try to fetch it locally > if (panel instanceof NetxPanel) { > > URL localURL = null; > > String resourceName = originalURL.substring(codeBase.length()); > JNLPClassLoader loader = (JNLPClassLoader) ((NetxPanel) panel).getAppletClassLoader(); > > if (loader.resourceAvailableLocally(resourceName)) > localURL = loader.getResource(resourceName); > > url = localURL != null ? localURL : url; > } > } > > PluginDebug.debug("getCachedImageRef() getting img from URL = " + url); > > synchronized (imageRefs) { > AppletImageRef ref = (AppletImageRef)imageRefs.get(url); > if (ref == null) { > ref = new AppletImageRef(url); > imageRefs.put(url, ref); > } > return ref; > } > } catch (Exception e) { > System.err.println("Error occurred when trying to fetch image:"); > e.printStackTrace(); > return null; > } > } > > /** > * Flush the image cache. > */ > static void flushImageCache() { > imageRefs.clear(); > } > > static Vector appletPanels = new Vector(); > > /** > * Get an applet by name. > */ > public Applet getApplet(String name) { > name = name.toLowerCase(); > SocketPermission panelSp = > new SocketPermission(panel.getCodeBase().getHost(), "connect"); > for (Enumeration e = appletPanels.elements() ; e.hasMoreElements() ;) { > AppletPanel p = (AppletPanel)e.nextElement(); > String param = p.getParameter("name"); > if (param != null) { > param = param.toLowerCase(); > } > if (name.equals(param) && > p.getDocumentBase().equals(panel.getDocumentBase())) { > > SocketPermission sp = > new SocketPermission(p.getCodeBase().getHost(), "connect"); > > if (panelSp.implies(sp)) { > return p.applet; > } > } > } > return null; > } > > /** > * Return an enumeration of all the accessible > * applets on this page. > */ > public Enumeration getApplets() { > Vector v = new Vector(); > SocketPermission panelSp = > new SocketPermission(panel.getCodeBase().getHost(), "connect"); > > for (Enumeration e = appletPanels.elements() ; e.hasMoreElements() ;) { > AppletPanel p = (AppletPanel)e.nextElement(); > if (p.getDocumentBase().equals(panel.getDocumentBase())) { > > SocketPermission sp = > new SocketPermission(p.getCodeBase().getHost(), "connect"); > if (panelSp.implies(sp)) { > v.addElement(p.applet); > } > } > } > return v.elements(); > } > > /** > * Ignore. > */ > public void showDocument(URL url) { > PluginDebug.debug("Showing document..."); > showDocument(url, "_self"); > } > > /** > * Ignore. > */ > public void showDocument(URL url, String target) { > try { > // FIXME: change to postCallRequest > write("url " + UrlUtil.encode(url.toString(), "UTF-8") + " " + target); > } catch (IOException exception) { > // Deliberately ignore IOException. showDocument may be > // called from threads other than the main thread after > // streamhandler.pluginOutputStream has been closed. > } > } > > /** > * Show status. > */ > public void showStatus(String status) { > try { > // FIXME: change to postCallRequest > // For statuses, we cannot have a newline > status = status.replace("\n", " "); > write("status " + status); > } catch (IOException exception) { > // Deliberately ignore IOException. showStatus may be > // called from threads other than the main thread after > // streamhandler.pluginOutputStream has been closed. > } > } > > /** > * Returns an incremental number (unique identifier) for a message. > * If identifier hits Long.MAX_VALUE it loops back starting at 0. > * > * @return A unique Long identifier for the request > */ > private static Long getRequestIdentifier() { > synchronized (requestIdentityCounter) { > > if (requestIdentityCounter == Long.MAX_VALUE) > requestIdentityCounter = 0L; > > return requestIdentityCounter++; > } > } > > public long getWindow() { > PluginDebug.debug ("STARTING getWindow"); > Long reference = getRequestIdentifier(); > > PluginCallRequest request = requestFactory.getPluginCallRequest("window", > "instance " + identifier + " reference " + > + reference + " " + "GetWindow", reference); > > PluginDebug.debug ("STARTING postCallRequest"); > streamhandler.postCallRequest(request); > PluginDebug.debug ("STARTING postCallRequest done"); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait request 1"); > synchronized(request) { > PluginDebug.debug ("wait request 2"); > while ((Long) request.getObject() == 0) > request.wait(); > PluginDebug.debug ("wait request 3"); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for call request.", > e); > } > > PluginDebug.debug ("STARTING getWindow DONE"); > return (Long) request.getObject(); > } > > // FIXME: make private, access via reflection. > public static Object getMember(long internal, String name) > { > AppletSecurityContextManager.getSecurityContext(0).store(name); > int nameID = AppletSecurityContextManager.getSecurityContext(0).getIdentifier(name); > Long reference = getRequestIdentifier(); > > // Prefix with dummy instance for convenience. > PluginCallRequest request = requestFactory.getPluginCallRequest("member", > "instance " + 0 + " reference " + reference + " GetMember " + > internal + " " + nameID, reference); > > streamhandler.postCallRequest(request); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait getMEM request 1"); > synchronized(request) { > PluginDebug.debug ("wait getMEM request 2"); > while (request.isDone() == false) > request.wait(); > PluginDebug.debug ("wait getMEM request 3 GOT: " + request.getObject().getClass()); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for call request.", > e); > } > PluginDebug.debug (" getMember DONE"); > return request.getObject(); > } > > public static void setMember(long internal, String name, Object value) { > System.err.println("Setting to class " + value.getClass() + ":" + value.getClass().isPrimitive()); > AppletSecurityContextManager.getSecurityContext(0).store(name); > int nameID = AppletSecurityContextManager.getSecurityContext(0).getIdentifier(name); > Long reference = getRequestIdentifier(); > > // work on a copy of value, as we don't want to be manipulating > // complex objects > String valueToSetTo; > if (value instanceof java.lang.Byte || > value instanceof java.lang.Character || > value instanceof java.lang.Short || > value instanceof java.lang.Integer || > value instanceof java.lang.Long || > value instanceof java.lang.Float || > value instanceof java.lang.Double || > value instanceof java.lang.Boolean) { > > valueToSetTo = "literalreturn " + value.toString(); > > // Character -> Str results in str value.. we need int value as > // per specs. > if (value instanceof java.lang.Character) { > valueToSetTo = "literalreturn " + (int) ((java.lang.Character) value).charValue(); > } else if (value instanceof Float || > value instanceof Double) { > valueToSetTo = "literalreturn " + String.format("%308.308e", value); > } > > } else { > AppletSecurityContextManager.getSecurityContext(0).store(value); > valueToSetTo = Integer.toString(AppletSecurityContextManager.getSecurityContext(0).getIdentifier(value)); > } > > // Prefix with dummy instance for convenience. > PluginCallRequest request = requestFactory.getPluginCallRequest("void", > "instance " + 0 + " reference " + reference + " SetMember " + > internal + " " + nameID + " " + valueToSetTo, reference); > > streamhandler.postCallRequest(request); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait setMem request: " + request.getMessage()); > PluginDebug.debug ("wait setMem request 1"); > synchronized(request) { > PluginDebug.debug ("wait setMem request 2"); > while (request.isDone() == false) > request.wait(); > PluginDebug.debug ("wait setMem request 3"); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for call request.", > e); > } > PluginDebug.debug (" setMember DONE"); > } > > // FIXME: handle long index as well. > public static void setSlot(long internal, int index, Object value) { > AppletSecurityContextManager.getSecurityContext(0).store(value); > Long reference = getRequestIdentifier(); > > // work on a copy of value, as we don't want to be manipulating > // complex objects > String valueToSetTo; > if (value instanceof java.lang.Byte || > value instanceof java.lang.Character || > value instanceof java.lang.Short || > value instanceof java.lang.Integer || > value instanceof java.lang.Long || > value instanceof java.lang.Float || > value instanceof java.lang.Double || > value instanceof java.lang.Boolean) { > > valueToSetTo = "literalreturn " + value.toString(); > > // Character -> Str results in str value.. we need int value as > // per specs. > if (value instanceof java.lang.Character) { > valueToSetTo = "literalreturn " + (int) ((java.lang.Character) value).charValue(); > } else if (value instanceof Float || > value instanceof Double) { > valueToSetTo = "literalreturn " + String.format("%308.308e", value); > } > > } else { > AppletSecurityContextManager.getSecurityContext(0).store(value); > valueToSetTo = Integer.toString(AppletSecurityContextManager.getSecurityContext(0).getIdentifier(value)); > } > > // Prefix with dummy instance for convenience. > PluginCallRequest request = requestFactory.getPluginCallRequest("void", > "instance " + 0 + " reference " + reference + " SetSlot " + > internal + " " + index + " " + valueToSetTo, reference); > > streamhandler.postCallRequest(request); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait setSlot request 1"); > synchronized(request) { > PluginDebug.debug ("wait setSlot request 2"); > while (request.isDone() == false) > request.wait(); > PluginDebug.debug ("wait setSlot request 3"); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for call request.", > e); > } > PluginDebug.debug (" setSlot DONE"); > } > > public static Object getSlot(long internal, int index) > { > Long reference = getRequestIdentifier(); > > // Prefix with dummy instance for convenience. > PluginCallRequest request = requestFactory.getPluginCallRequest("member", > "instance " + 0 + " reference " + reference + " GetSlot " + > internal + " " + index, reference); > streamhandler.postCallRequest(request); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait getSlot request 1"); > synchronized(request) { > PluginDebug.debug ("wait getSlot request 2"); > while (request.isDone() == false) > request.wait(); > PluginDebug.debug ("wait getSlot request 3"); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for call request.", > e); > } > PluginDebug.debug (" getSlot DONE"); > return request.getObject(); > } > > public static Object eval(long internal, String s) > { > AppletSecurityContextManager.getSecurityContext(0).store(s); > int stringID = AppletSecurityContextManager.getSecurityContext(0).getIdentifier(s); > Long reference = getRequestIdentifier(); > > // Prefix with dummy instance for convenience. > // FIXME: rename GetMemberPluginCallRequest ObjectPluginCallRequest. > PluginCallRequest request = requestFactory.getPluginCallRequest("member", > "instance " + 0 + " reference " + reference + " Eval " + > internal + " " + stringID, reference); > streamhandler.postCallRequest(request); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait eval request 1"); > synchronized(request) { > PluginDebug.debug ("wait eval request 2"); > while (request.isDone() == false) > request.wait(); > PluginDebug.debug ("wait eval request 3"); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for call request.", > e); > } > PluginDebug.debug (" getSlot DONE"); > return request.getObject(); > } > > public static void removeMember (long internal, String name) { > AppletSecurityContextManager.getSecurityContext(0).store(name); > int nameID = AppletSecurityContextManager.getSecurityContext(0).getIdentifier(name); > Long reference = getRequestIdentifier(); > > // Prefix with dummy instance for convenience. > PluginCallRequest request = requestFactory.getPluginCallRequest("void", > "instance " + 0 + " reference " + reference + " RemoveMember " + > internal + " " + nameID, reference); > > streamhandler.postCallRequest(request); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait removeMember request 1"); > synchronized(request) { > PluginDebug.debug ("wait removeMember request 2"); > while (request.isDone() == false) > request.wait(); > PluginDebug.debug ("wait removeMember request 3"); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for call request.", > e); > } > PluginDebug.debug (" RemoveMember DONE"); > } > > public static Object call(long internal, String name, Object args[]) > { > // FIXME: when is this removed from the object store? > // FIXME: reference should return the ID. > // FIXME: convenience method for this long line. > AppletSecurityContextManager.getSecurityContext(0).store(name); > int nameID = AppletSecurityContextManager.getSecurityContext(0).getIdentifier(name); > Long reference = getRequestIdentifier(); > > String argIDs = ""; > for (Object arg : args) > { > AppletSecurityContextManager.getSecurityContext(0).store(arg); > argIDs += AppletSecurityContextManager.getSecurityContext(0).getIdentifier(arg) + " "; > } > argIDs = argIDs.trim(); > > // Prefix with dummy instance for convenience. > PluginCallRequest request = requestFactory.getPluginCallRequest("member", > "instance " + 0 + " reference " + reference + " Call " + > internal + " " + nameID + " " + argIDs, reference); > > streamhandler.postCallRequest(request); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait call request 1"); > synchronized(request) { > PluginDebug.debug ("wait call request 2"); > while (request.isDone() == false) > request.wait(); > PluginDebug.debug ("wait call request 3"); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for call request.", > e); > } > PluginDebug.debug (" Call DONE"); > return request.getObject(); > } > > public static Object requestPluginCookieInfo(URI uri) { > > PluginCallRequest request; > Long reference = getRequestIdentifier(); > > try > { > String encodedURI = UrlUtil.encode(uri.toString(), "UTF-8"); > request = requestFactory.getPluginCallRequest("cookieinfo", > "plugin PluginCookieInfo " + "reference " + reference + > " " + encodedURI, reference); > > } catch (UnsupportedEncodingException e) > { > e.printStackTrace(); > return null; > } > > PluginMessageConsumer.registerPriorityWait(reference); > streamhandler.postCallRequest(request); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait cookieinfo request 1"); > synchronized(request) { > PluginDebug.debug ("wait cookieinfo request 2"); > while (request.isDone() == false) > request.wait(); > PluginDebug.debug ("wait cookieinfo request 3"); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for cookieinfo request.", > e); > } > PluginDebug.debug (" Cookieinfo DONE"); > return request.getObject(); > } > > public static Object requestPluginProxyInfo(URI uri) { > > String requestURI = null; > Long reference = getRequestIdentifier(); > > try { > > // there is no easy way to get SOCKS proxy info. So, we tell mozilla that we want proxy for > // an HTTP uri in case of non http/ftp protocols. If we get back a SOCKS proxy, we can > // use that, if we get back an http proxy, we fallback to DIRECT connect > > String scheme = uri.getScheme(); > String port = uri.getPort() != -1 ? ":" + uri.getPort() : ""; > if (!uri.getScheme().startsWith("http") && !uri.getScheme().equals("ftp")) > scheme = "http"; > > requestURI = UrlUtil.encode(scheme + "://" + uri.getHost() + port + "/" + uri.getPath(), "UTF-8"); > } catch (Exception e) { > PluginDebug.debug("Cannot construct URL from " + uri.toString() + " ... falling back to DIRECT proxy"); > e.printStackTrace(); > return null; > } > > PluginCallRequest request = requestFactory.getPluginCallRequest("proxyinfo", > "plugin PluginProxyInfo reference " + reference + " " + > requestURI, reference); > > PluginMessageConsumer.registerPriorityWait(reference); > streamhandler.postCallRequest(request); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait call request 1"); > synchronized(request) { > PluginDebug.debug ("wait call request 2"); > while (request.isDone() == false) > request.wait(); > PluginDebug.debug ("wait call request 3"); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for call request.", > e); > } > PluginDebug.debug (" Call DONE"); > return request.getObject(); > } > > public static void JavaScriptFinalize(long internal) > { > Long reference = getRequestIdentifier(); > > // Prefix with dummy instance for convenience. > PluginCallRequest request = requestFactory.getPluginCallRequest("void", > "instance " + 0 + " reference " + reference + " Finalize " + > internal, reference); > > streamhandler.postCallRequest(request); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait finalize request 1"); > synchronized(request) { > PluginDebug.debug ("wait finalize request 2"); > while (request.isDone() == false) > request.wait(); > PluginDebug.debug ("wait finalize request 3"); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for call request.", > e); > } > PluginDebug.debug (" finalize DONE"); > } > > public static String javascriptToString(long internal) > { > Long reference = getRequestIdentifier(); > > // Prefix with dummy instance for convenience. > PluginCallRequest request = requestFactory.getPluginCallRequest("member", > "instance " + 0 + " reference " + reference + " ToString " + > internal, reference); > > streamhandler.postCallRequest(request); > streamhandler.write(request.getMessage()); > try { > PluginDebug.debug ("wait ToString request 1"); > synchronized(request) { > PluginDebug.debug ("wait ToString request 2"); > while (request.isDone() == false) > request.wait(); > PluginDebug.debug ("wait ToString request 3"); > } > } catch (InterruptedException e) { > throw new RuntimeException("Interrupted waiting for call request.", > e); > } > PluginDebug.debug (" ToString DONE"); > return (String) request.getObject(); > } > > // FIXME: make this private and access it from JSObject using > // reflection. > private void write(String message) throws IOException { > PluginDebug.debug ("WRITING 2: " + "instance " + identifier + " " + message); > streamhandler.write("instance " + identifier + " " + message); > PluginDebug.debug ("WRITING 2 DONE"); > } > > public void setStream(String key, InputStream stream)throws IOException{ > // We do nothing. > } > > public InputStream getStream(String key){ > // We do nothing. > return null; > } > > public Iterator getStreamKeys(){ > // We do nothing. > return null; > } > > /** > * System parameters. > */ > static Hashtable systemParam = new Hashtable(); > > static { > systemParam.put("codebase", "codebase"); > systemParam.put("code", "code"); > systemParam.put("alt", "alt"); > systemParam.put("width", "width"); > systemParam.put("height", "height"); > systemParam.put("align", "align"); > systemParam.put("vspace", "vspace"); > systemParam.put("hspace", "hspace"); > } > > /** > * Print the HTML tag. > */ > public static void printTag(PrintStream out, Hashtable atts) { > out.print(" > String v = (String)atts.get("codebase"); > if (v != null) { > out.print(" codebase=\"" + v + "\""); > } > > v = (String)atts.get("code"); > if (v == null) { > v = "applet.class"; > } > out.print(" code=\"" + v + "\""); > v = (String)atts.get("width"); > if (v == null) { > v = "150"; > } > out.print(" width=" + v); > > v = (String)atts.get("height"); > if (v == null) { > v = "100"; > } > out.print(" height=" + v); > > v = (String)atts.get("name"); > if (v != null) { > out.print(" name=\"" + v + "\""); > } > out.println(">"); > > // A very slow sorting algorithm > int len = atts.size(); > String params[] = new String[len]; > len = 0; > for (Enumeration e = atts.keys() ; e.hasMoreElements() ;) { > String param = (String)e.nextElement(); > int i = 0; > for (; i < len ; i++) { > if (params[i].compareTo(param) >= 0) { > break; > } > } > System.arraycopy(params, i, params, i + 1, len - i); > params[i] = param; > len++; > } > > for (int i = 0 ; i < len ; i++) { > String param = params[i]; > if (systemParam.get(param) == null) { > out.println(""); > } > } > out.println(""); > } > > /** > * Make sure the atrributes are uptodate. > */ > public void updateAtts() { > Dimension d = panel.size(); > Insets in = panel.insets(); > panel.atts.put("width", > new Integer(d.width - (in.left + in.right)).toString()); > panel.atts.put("height", > new Integer(d.height - (in.top + in.bottom)).toString()); > } > > /** > * Restart the applet. > */ > void appletRestart() { > panel.sendEvent(AppletPanel.APPLET_STOP); > panel.sendEvent(AppletPanel.APPLET_DESTROY); > panel.sendEvent(AppletPanel.APPLET_INIT); > panel.sendEvent(AppletPanel.APPLET_START); > } > > /** > * Reload the applet. > */ > void appletReload() { > panel.sendEvent(AppletPanel.APPLET_STOP); > panel.sendEvent(AppletPanel.APPLET_DESTROY); > panel.sendEvent(AppletPanel.APPLET_DISPOSE); > > /** > * Fixed #4501142: Classlaoder sharing policy doesn't > * take "archive" into account. This will be overridden > * by Java Plug-in. [stanleyh] > */ > AppletPanel.flushClassLoader(panel.getClassLoaderCacheKey()); > > /* > * Make sure we don't have two threads running through the event queue > * at the same time. > */ > try { > panel.joinAppletThread(); > panel.release(); > } catch (InterruptedException e) { > return; // abort the reload > } > > AccessController.doPrivileged(new PrivilegedAction() { > public Object run() { > panel.createAppletThread(); > return null; > } > }); > > panel.sendEvent(AppletPanel.APPLET_LOAD); > panel.sendEvent(AppletPanel.APPLET_INIT); > panel.sendEvent(AppletPanel.APPLET_START); > } > > public int print(Graphics graphics, PageFormat pf, int pageIndex) { > return Printable.NO_SUCH_PAGE; > } > > /** > * Start the applet. > */ > void appletStart() { > panel.sendEvent(AppletPanel.APPLET_START); > } > > /** > * Stop the applet. > */ > void appletStop() { > panel.sendEvent(AppletPanel.APPLET_STOP); > } > > /** > * Shutdown a viewer. > * Stop, Destroy, Dispose and Quit a viewer > */ > private void appletShutdown(AppletPanel p) { > p.sendEvent(AppletPanel.APPLET_STOP); > p.sendEvent(AppletPanel.APPLET_DESTROY); > p.sendEvent(AppletPanel.APPLET_DISPOSE); > p.sendEvent(AppletPanel.APPLET_QUIT); > } > > /** > * Close this viewer. > * Stop, Destroy, Dispose and Quit an AppletView, then > * reclaim resources and exit the program if this is > * the last applet. > */ > void appletClose() { > > // The caller thread is event dispatch thread, so > // spawn a new thread to avoid blocking the event queue > // when calling appletShutdown. > // > final AppletPanel p = panel; > > new Thread(new Runnable() > { > public void run() > { > ThreadGroup tg = ((JNLPClassLoader) p.applet.getClass().getClassLoader()).getApplication().getThreadGroup(); > > appletShutdown(p); > appletPanels.removeElement(p); > dispose(); > > if (tg.activeCount() > 0) > tg.stop(); > > if (countApplets() == 0) { > appletSystemExit(); > } > } > }).start(); > > status.put(identifier, PAV_INIT_STATUS.INACTIVE); > } > > /** > * Exit the program. > * Exit from the program (if not stand alone) - do no clean-up > */ > private void appletSystemExit() { > // Do nothing. Exit is handled by another > // block of code, called when _all_ applets are gone > } > > /** > * How many applets are running? > */ > > public static int countApplets() { > return appletPanels.size(); > } > > > /** > * Scan spaces. > */ > public static void skipSpace(int[] c, Reader in) throws IOException { > while ((c[0] >= 0) && > ((c[0] == ' ') || (c[0] == '\t') || (c[0] == '\n') || (c[0] == '\r'))) { > c[0] = in.read(); > } > } > > /** > * Scan identifier > */ > public static String scanIdentifier(int[] c, Reader in) throws IOException { > StringBuffer buf = new StringBuffer(); > > if (c[0] == '!') { > // Technically, we should be scanning for '!--' but we are reading > // from a stream, and there is no way to peek ahead. That said, > // a ! at this point can only mean comment here afaik, so we > // should be okay > skipComment(c, in); > return ""; > } > > while (true) { > if (((c[0] >= 'a') && (c[0] <= 'z')) || > ((c[0] >= 'A') && (c[0] <= 'Z')) || > ((c[0] >= '0') && (c[0] <= '9')) || (c[0] == '_')) { > buf.append((char)c[0]); > c[0] = in.read(); > } else { > return buf.toString(); > } > } > } > > public static void skipComment(int[] c, Reader in) throws IOException { > StringBuffer buf = new StringBuffer(); > boolean commentHeaderPassed = false; > c[0] = in.read(); > buf.append((char)c[0]); > > while (true) { > if (c[0] == '-' && (c[0] = in.read()) == '-') { > buf.append((char)c[0]); > if (commentHeaderPassed) { > // -- encountered ... is > next? > if ((c[0] = in.read()) == '>') { > buf.append((char)c[0]); > > PluginDebug.debug("Comment skipped: " + buf.toString()); > > // comment skipped. > return; > } > } else { > // first -- is part of