From ben.evans at db.com Tue Dec 1 08:08:15 2009 From: ben.evans at db.com (Ben Evans) Date: Tue, 1 Dec 2009 16:08:15 +0000 Subject: Newbie hsdis questions Message-ID: Hi, I have some newbie questions about the output of the HS disassembler. It's possible that some of these are really more general x86-64 assembler questions, and if so, a pointer to a good reference would be much appreciated. I'm running 6u18-b05 on x64 with these options: -XX:+PrintCompilation -XX:+PrintAssembly -XX:+PrintSignatureHandlers -XX:+PrintNMethods Here's a chunk of output I'm interested in: 384115 Compiled (c2) 496 nmethod com.db.e.d.m.p.TP::doExecute (833 bytes) 384116 total in heap [0x00007fc3911f2a50,0x00007fc391208120] = 87760 384117 relocation [0x00007fc3911f2b58,0x00007fc3911f3630] = 2776 384118 main code [0x00007fc3911f3640,0x00007fc3911fc140] = 35584 384119 stub code [0x00007fc3911fc140,0x00007fc3911fc6c7] = 1415 384120 constants [0x00007fc3911fc6c7,0x00007fc3911fc6c8] = 1 384121 scopes data [0x00007fc3911fc6c8,0x00007fc391205598] = 36560 384122 scopes pcs [0x00007fc391205598,0x00007fc391206948] = 5040 384123 dependencies [0x00007fc391206948,0x00007fc3912069d0] = 136 384124 handler table [0x00007fc3912069d0,0x00007fc391207a68] = 4248 384125 nul chk table [0x00007fc391207a68,0x00007fc391207e08] = 928 384126 oops [0x00007fc391207e08,0x00007fc391208120] = 792 384127 Decoding compiled method 0x00007fc3911f2a50: 384128 Code: 384129 [Disassembling for mach='i386:x86-64'] 384130 [Entry Point] 384131 0x00007fc3911f3640: cmp 0x8(%rsi),%rax 384132 0x00007fc3911f3644: jne 0x00007fc3910405e0 ; {runtime_call} 384133 0x00007fc3911f364a: xchg %ax,%ax 384134 0x00007fc3911f364c: nopl 0x0(%rax) 384135 [Verified Entry Point] 384136 0x00007fc3911f3650: mov %eax,-0x6000(%rsp) 384137 0x00007fc3911f3657: push %rbp First of, I'm assuming that the proximity of line 384115 to line 384116 is a guarantee that the 2 lines are referring to the compilation of the same method, and that what follows is all about com.db.e.d.m.p.TP::doExecute. If not, how do I map back from an address to a nmethod name? Main questions: 1) What do the entries in the table in lines 384116-384126 represent? 2) Lines 384131-384134 are presumably the x64 representation of a monomorphic call guard. Why are the xchg and nopl instructions (which are surely both effectively no-ops) present? 3) The addresses for lines 384131-384134 look strange to me, eg why isn't there at least 8 bytes required for the jne instruction? Is there a good reference for instruction lengths somewhere? I have some questions which are more pertinent to my actual perf anomaly, but I want to make sure I understand the basics fully, and do my own investigations first - and try to conserve the group's time. Thanks, Ben -- Ben Evans eFX Algorithmic Trading Deutsche Bank, London Office: +44 (0)20 7541 3953 --- This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and delete this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden. Please refer to http://www.db.com/en/content/eu_disclosures.htm for additional EU corporate and regulatory disclosures. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/hotspot-dev/attachments/20091201/4dba2af3/attachment.html From Ulf.Zibis at gmx.de Tue Dec 1 08:28:56 2009 From: Ulf.Zibis at gmx.de (Ulf Zibis) Date: Tue, 01 Dec 2009 17:28:56 +0100 Subject: Newbie hsdis questions In-Reply-To: References: Message-ID: <4B154448.7080109@gmx.de> See thread "Filtering the output of -XX:+PrintAssembly" 17.11.2009 17:24 and "How to inspect hotspot compiler results? ..." especially 20.11.2009 21:01 and 23.11.2009 19:15 (all times CET ;-) ) -Ulf Am 01.12.2009 17:08, Ben Evans schrieb: > > Hi, > > I have some newbie questions about the output of the HS disassembler. > It's possible that some of these are really more general x86-64 > assembler questions, and if so, a pointer to a good reference would be > much appreciated. > > I'm running 6u18-b05 on x64 with these options: -XX:+PrintCompilation > -XX:+PrintAssembly -XX:+PrintSignatureHandlers -XX:+PrintNMethods > > Here's a chunk of output I'm interested in: > > 384115 Compiled (c2) 496 nmethod com.db.e.d.m.p.TP::doExecute (833 > bytes) > 384116 total in heap [0x00007fc3911f2a50,0x00007fc391208120] = 87760 > 384117 relocation [0x00007fc3911f2b58,0x00007fc3911f3630] = 2776 > 384118 main code [0x00007fc3911f3640,0x00007fc3911fc140] = 35584 > 384119 stub code [0x00007fc3911fc140,0x00007fc3911fc6c7] = 1415 > 384120 constants [0x00007fc3911fc6c7,0x00007fc3911fc6c8] = 1 > 384121 scopes data [0x00007fc3911fc6c8,0x00007fc391205598] = 36560 > 384122 scopes pcs [0x00007fc391205598,0x00007fc391206948] = 5040 > 384123 dependencies [0x00007fc391206948,0x00007fc3912069d0] = 136 > 384124 handler table [0x00007fc3912069d0,0x00007fc391207a68] = 4248 > 384125 nul chk table [0x00007fc391207a68,0x00007fc391207e08] = 928 > 384126 oops [0x00007fc391207e08,0x00007fc391208120] = 792 > 384127 Decoding compiled method 0x00007fc3911f2a50: > 384128 Code: > 384129 [Disassembling for mach='i386:x86-64'] > 384130 [Entry Point] > 384131 0x00007fc3911f3640: cmp 0x8(%rsi),%rax > 384132 0x00007fc3911f3644: jne 0x00007fc3910405e0 ; > {runtime_call} > 384133 0x00007fc3911f364a: xchg %ax,%ax > 384134 0x00007fc3911f364c: nopl 0x0(%rax) > 384135 [Verified Entry Point] > 384136 0x00007fc3911f3650: mov %eax,-0x6000(%rsp) > 384137 0x00007fc3911f3657: push %rbp > > First of, I'm assuming that the proximity of line 384115 to line > 384116 is a guarantee that the 2 lines are referring to the > compilation of the same method, and that what follows is all about > com.db.e.d.m.p.TP::doExecute. If not, how do I map back from an > address to a nmethod name? > > Main questions: > > 1) What do the entries in the table in lines 384116-384126 represent? > 2) Lines 384131-384134 are presumably the x64 representation of a > monomorphic call guard. Why are the xchg and nopl instructions (which > are surely both effectively no-ops) present? > 3) The addresses for lines 384131-384134 look strange to me, eg why > isn't there at least 8 bytes required for the jne instruction? Is > there a good reference for instruction lengths somewhere? > > I have some questions which are more pertinent to my actual perf > anomaly, but I want to make sure I understand the basics fully, and do > my own investigations first - and try to conserve the group's time. > > Thanks, > > Ben > -- > Ben Evans > eFX Algorithmic Trading > Deutsche Bank, London > Office: +44 (0)20 7541 3953 > > --- > > This e-mail may contain confidential and/or privileged information. If > you are not the intended recipient (or have received this e-mail in > error) please notify the sender immediately and delete this e-mail. > Any unauthorized copying, disclosure or distribution of the material > in this e-mail is strictly forbidden. > > Please refer to http://www.db.com/en/content/eu_disclosures.htm for > additional EU corporate and regulatory disclosures. From Christian.Thalinger at Sun.COM Tue Dec 1 08:28:57 2009 From: Christian.Thalinger at Sun.COM (Christian Thalinger) Date: Tue, 01 Dec 2009 17:28:57 +0100 Subject: Newbie hsdis questions In-Reply-To: References: Message-ID: <1259684938.22671.409.camel@macbook> On Tue, 2009-12-01 at 16:08 +0000, Ben Evans wrote: > > Hi, > > I have some newbie questions about the output of the HS disassembler. > It's possible that some of these are really more general x86-64 > assembler questions, and if so, a pointer to a good reference would be > much appreciated. > > I'm running 6u18-b05 on x64 with these options: -XX:+PrintCompilation > -XX:+PrintAssembly -XX:+PrintSignatureHandlers -XX:+PrintNMethods > > Here's a chunk of output I'm interested in: > > 384115 Compiled (c2) 496 nmethod com.db.e.d.m.p.TP::doExecute (833 > bytes) > 384116 total in heap [0x00007fc3911f2a50,0x00007fc391208120] = > 87760 > 384117 relocation [0x00007fc3911f2b58,0x00007fc3911f3630] = > 2776 > 384118 main code [0x00007fc3911f3640,0x00007fc3911fc140] = > 35584 > 384119 stub code [0x00007fc3911fc140,0x00007fc3911fc6c7] = > 1415 > 384120 constants [0x00007fc3911fc6c7,0x00007fc3911fc6c8] = 1 > 384121 scopes data [0x00007fc3911fc6c8,0x00007fc391205598] = > 36560 > 384122 scopes pcs [0x00007fc391205598,0x00007fc391206948] = > 5040 > 384123 dependencies [0x00007fc391206948,0x00007fc3912069d0] = 136 > 384124 handler table [0x00007fc3912069d0,0x00007fc391207a68] = > 4248 > 384125 nul chk table [0x00007fc391207a68,0x00007fc391207e08] = 928 > 384126 oops [0x00007fc391207e08,0x00007fc391208120] = 792 > 384127 Decoding compiled method 0x00007fc3911f2a50: > 384128 Code: > 384129 [Disassembling for mach='i386:x86-64'] > 384130 [Entry Point] > 384131 0x00007fc3911f3640: cmp 0x8(%rsi),%rax > 384132 0x00007fc3911f3644: jne 0x00007fc3910405e0 ; > {runtime_call} > 384133 0x00007fc3911f364a: xchg %ax,%ax > 384134 0x00007fc3911f364c: nopl 0x0(%rax) > 384135 [Verified Entry Point] > 384136 0x00007fc3911f3650: mov %eax,-0x6000(%rsp) > 384137 0x00007fc3911f3657: push %rbp > > First of, I'm assuming that the proximity of line 384115 to line > 384116 is a guarantee that the 2 lines are referring to the > compilation of the same method, and that what follows is all about > com.db.e.d.m.p.TP::doExecute. If not, how do I map back from an > address to a nmethod name? Yes, the following lines are from this compile. > Main questions: > > 1) What do the entries in the table in lines 384116-384126 represent? Addresses and sizes of the various sections of an nmethod (see nmethod.hpp). > 2) Lines 384131-384134 are presumably the x64 representation of a > monomorphic call guard. Why are the xchg and nopl instructions (which > are surely both effectively no-ops) present? These are required for code patching, e.g. when the method becomes deoptimized. > 3) The addresses for lines 384131-384134 look strange to me, eg why > isn't there at least 8 bytes required for the jne instruction? Is > there a good reference for instruction lengths somewhere? http://mail.openjdk.java.net/pipermail/hotspot-dev/2009-November/002430.html > I have some questions which are more pertinent to my actual perf > anomaly, but I want to make sure I understand the basics fully, and do > my own investigations first - and try to conserve the group's time. Please also consider to read the following thread: http://mail.openjdk.java.net/pipermail/hotspot-dev/2009-November/002349.html -- Christian From igor.veresov at sun.com Tue Dec 1 18:44:47 2009 From: igor.veresov at sun.com (igor.veresov at sun.com) Date: Wed, 02 Dec 2009 02:44:47 +0000 Subject: hg: jdk7/hotspot/hotspot: 2 new changesets Message-ID: <20091202024456.EE21941AB4@hg.openjdk.java.net> Changeset: 8e7adf982378 Author: twisti Date: 2009-11-27 07:56 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/8e7adf982378 6896043: first round of zero fixes Reviewed-by: kvn Contributed-by: Gary Benson ! src/cpu/zero/vm/cppInterpreter_zero.cpp ! src/cpu/zero/vm/frame_zero.cpp ! src/cpu/zero/vm/frame_zero.hpp ! src/cpu/zero/vm/globals_zero.hpp ! src/cpu/zero/vm/sharedRuntime_zero.cpp ! src/cpu/zero/vm/sharkFrame_zero.hpp ! src/share/vm/interpreter/bytecodeInterpreter.cpp ! src/share/vm/prims/jni.cpp ! src/share/vm/prims/jvmtiManageCapabilities.cpp ! src/share/vm/runtime/os.hpp Changeset: 6400f475effe Author: iveresov Date: 2009-12-01 14:49 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/6400f475effe Merge From erik.trimble at sun.com Tue Dec 1 22:25:22 2009 From: erik.trimble at sun.com (erik.trimble at sun.com) Date: Wed, 02 Dec 2009 06:25:22 +0000 Subject: hg: hsx/hsx16/baseline: 6822370: ReentrantReadWriteLock: threads hung when there are no threads holding onto the lock (Netra x4450) Message-ID: <20091202062530.48D2841AF2@hg.openjdk.java.net> Changeset: 49bd3de668dc Author: dholmes Date: 2009-12-01 19:10 -0500 URL: http://hg.openjdk.java.net/hsx/hsx16/baseline/rev/49bd3de668dc 6822370: ReentrantReadWriteLock: threads hung when there are no threads holding onto the lock (Netra x4450) Summary: This day one bug is caused by missing memory barriers in various Parker::park() paths that can result in lost wakeups and hangs. Reviewed-by: dice, acorn ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp From john.coomes at sun.com Fri Dec 4 01:33:20 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 04 Dec 2009 09:33:20 +0000 Subject: hg: jdk7/hotspot: Added tag jdk7-b77 for changeset 1f17ca8353ba Message-ID: <20091204093320.88EB241E63@hg.openjdk.java.net> Changeset: 721c1696c124 Author: mikejwre Date: 2009-12-03 12:52 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/rev/721c1696c124 Added tag jdk7-b77 for changeset 1f17ca8353ba ! .hgtags From john.coomes at sun.com Fri Dec 4 01:33:29 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 04 Dec 2009 09:33:29 +0000 Subject: hg: jdk7/hotspot/corba: 3 new changesets Message-ID: <20091204093336.7783041E64@hg.openjdk.java.net> Changeset: 28b983e5bb5f Author: gbenson Date: 2009-11-23 10:04 +0000 URL: http://hg.openjdk.java.net/jdk7/hotspot/corba/rev/28b983e5bb5f 6903453: Zero build on ARM and IA-64 Summary: Correctly set uname on ARM, and correctly build fdlibm on IA-64 Reviewed-by: ohair ! make/common/shared/Platform.gmk Changeset: 6881f0383f62 Author: ohair Date: 2009-11-25 11:05 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/corba/rev/6881f0383f62 Merge Changeset: 6977ccc8827e Author: mikejwre Date: 2009-12-03 12:52 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/corba/rev/6977ccc8827e Added tag jdk7-b77 for changeset 6881f0383f62 ! .hgtags From john.coomes at sun.com Fri Dec 4 01:36:12 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 04 Dec 2009 09:36:12 +0000 Subject: hg: jdk7/hotspot/jaxp: Added tag jdk7-b77 for changeset bfadab8c7b1b Message-ID: <20091204093612.52AF041E66@hg.openjdk.java.net> Changeset: 90bbdc1a6258 Author: mikejwre Date: 2009-12-03 12:52 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jaxp/rev/90bbdc1a6258 Added tag jdk7-b77 for changeset bfadab8c7b1b ! .hgtags From john.coomes at sun.com Fri Dec 4 01:36:18 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 04 Dec 2009 09:36:18 +0000 Subject: hg: jdk7/hotspot/jaxws: Added tag jdk7-b77 for changeset 5b4968c11047 Message-ID: <20091204093618.5E16641E67@hg.openjdk.java.net> Changeset: 96e510caa8e7 Author: mikejwre Date: 2009-12-03 12:52 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jaxws/rev/96e510caa8e7 Added tag jdk7-b77 for changeset 5b4968c11047 ! .hgtags From john.coomes at sun.com Fri Dec 4 01:37:29 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 04 Dec 2009 09:37:29 +0000 Subject: hg: jdk7/hotspot/jdk: 3 new changesets Message-ID: <20091204093858.E31EF41E68@hg.openjdk.java.net> Changeset: ad1c88142958 Author: gbenson Date: 2009-11-23 10:04 +0000 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/ad1c88142958 6903453: Zero build on ARM and IA-64 Summary: Correctly set uname on ARM, and correctly build fdlibm on IA-64 Reviewed-by: ohair ! make/common/shared/Platform.gmk ! src/share/native/java/lang/fdlibm/include/fdlibm.h Changeset: e6a5d095c356 Author: ohair Date: 2009-11-25 11:08 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/e6a5d095c356 Merge - src/share/classes/com/sun/jmx/event/DaemonThreadFactory.java - src/share/classes/com/sun/jmx/event/EventBuffer.java - src/share/classes/com/sun/jmx/event/EventClientFactory.java - src/share/classes/com/sun/jmx/event/EventConnection.java - src/share/classes/com/sun/jmx/event/EventParams.java - src/share/classes/com/sun/jmx/event/LeaseManager.java - src/share/classes/com/sun/jmx/event/LeaseRenewer.java - src/share/classes/com/sun/jmx/event/ReceiverBuffer.java - src/share/classes/com/sun/jmx/event/RepeatedSingletonJob.java - src/share/classes/com/sun/jmx/interceptor/DispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/DomainDispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/MBeanServerInterceptorSupport.java - src/share/classes/com/sun/jmx/interceptor/NamespaceDispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/SingleMBeanForwarder.java - src/share/classes/com/sun/jmx/mbeanserver/MBeanInjector.java - src/share/classes/com/sun/jmx/mbeanserver/NotificationMBeanSupport.java - src/share/classes/com/sun/jmx/mbeanserver/NotifySupport.java - src/share/classes/com/sun/jmx/mbeanserver/PerThreadGroupPool.java - src/share/classes/com/sun/jmx/namespace/DomainInterceptor.java - src/share/classes/com/sun/jmx/namespace/HandlerInterceptor.java - src/share/classes/com/sun/jmx/namespace/NamespaceInterceptor.java - src/share/classes/com/sun/jmx/namespace/ObjectNameRouter.java - src/share/classes/com/sun/jmx/namespace/RoutingConnectionProxy.java - src/share/classes/com/sun/jmx/namespace/RoutingMBeanServerConnection.java - src/share/classes/com/sun/jmx/namespace/RoutingProxy.java - src/share/classes/com/sun/jmx/namespace/RoutingServerProxy.java - src/share/classes/com/sun/jmx/namespace/package.html - src/share/classes/com/sun/jmx/namespace/serial/DefaultRewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/IdentityProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/JMXNamespaceContext.java - src/share/classes/com/sun/jmx/namespace/serial/RewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/RoutingOnlyProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/SerialRewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/package.html - src/share/classes/com/sun/jmx/remote/internal/ProxyInputStream.java - src/share/classes/com/sun/jmx/remote/util/EventClientConnection.java - src/share/classes/javax/management/ClientContext.java - src/share/classes/javax/management/Description.java - src/share/classes/javax/management/DescriptorFields.java - src/share/classes/javax/management/DynamicWrapperMBean.java - src/share/classes/javax/management/GenericMBeanException.java - src/share/classes/javax/management/Impact.java - src/share/classes/javax/management/MBean.java - src/share/classes/javax/management/ManagedAttribute.java - src/share/classes/javax/management/ManagedOperation.java - src/share/classes/javax/management/NotificationInfo.java - src/share/classes/javax/management/NotificationInfos.java - src/share/classes/javax/management/ObjectNameTemplate.java - src/share/classes/javax/management/QueryNotificationFilter.java - src/share/classes/javax/management/QueryParser.java - src/share/classes/javax/management/SendNotification.java - src/share/classes/javax/management/event/EventClient.java - src/share/classes/javax/management/event/EventClientDelegate.java - src/share/classes/javax/management/event/EventClientDelegateMBean.java - src/share/classes/javax/management/event/EventClientNotFoundException.java - src/share/classes/javax/management/event/EventConsumer.java - src/share/classes/javax/management/event/EventForwarder.java - src/share/classes/javax/management/event/EventReceiver.java - src/share/classes/javax/management/event/EventRelay.java - src/share/classes/javax/management/event/EventSubscriber.java - src/share/classes/javax/management/event/FetchingEventForwarder.java - src/share/classes/javax/management/event/FetchingEventRelay.java - src/share/classes/javax/management/event/ListenerInfo.java - src/share/classes/javax/management/event/NotificationManager.java - src/share/classes/javax/management/event/RMIPushEventForwarder.java - src/share/classes/javax/management/event/RMIPushEventRelay.java - src/share/classes/javax/management/event/RMIPushServer.java - src/share/classes/javax/management/event/package-info.java - src/share/classes/javax/management/namespace/JMXDomain.java - src/share/classes/javax/management/namespace/JMXNamespace.java - src/share/classes/javax/management/namespace/JMXNamespaceMBean.java - src/share/classes/javax/management/namespace/JMXNamespacePermission.java - src/share/classes/javax/management/namespace/JMXNamespaceView.java - src/share/classes/javax/management/namespace/JMXNamespaces.java - src/share/classes/javax/management/namespace/JMXRemoteNamespace.java - src/share/classes/javax/management/namespace/JMXRemoteNamespaceMBean.java - src/share/classes/javax/management/namespace/MBeanServerConnectionWrapper.java - src/share/classes/javax/management/namespace/MBeanServerSupport.java - src/share/classes/javax/management/namespace/VirtualEventManager.java - src/share/classes/javax/management/namespace/package-info.java - src/share/classes/javax/management/openmbean/MXBeanMapping.java - src/share/classes/javax/management/openmbean/MXBeanMappingClass.java - src/share/classes/javax/management/openmbean/MXBeanMappingFactory.java - src/share/classes/javax/management/openmbean/MXBeanMappingFactoryClass.java - src/share/classes/javax/management/remote/IdentityMBeanServerForwarder.java - src/share/classes/sun/net/www/protocol/http/HttpLogFormatter.java - src/share/classes/sun/net/www/protocol/http/NegotiateCallbackHandler.java - src/share/classes/sun/net/www/protocol/http/NegotiatorImpl.java - src/share/classes/sun/security/ssl/KerberosPreMasterSecret.java - src/windows/classes/sun/net/www/protocol/http/NTLMAuthSequence.java - src/windows/classes/sun/net/www/protocol/http/NTLMAuthentication.java - src/windows/native/sun/net/www/protocol/http/NTLMAuthSequence.c - test/javax/management/Introspector/AnnotatedMBeanTest.java - test/javax/management/Introspector/AnnotatedNotificationInfoTest.java - test/javax/management/Introspector/ExceptionsDescriptorTest.java - test/javax/management/Introspector/MBeanDescriptionTest.java - test/javax/management/Introspector/ObjectNameTemplateTest.java - test/javax/management/Introspector/ParameterNameTest.java - test/javax/management/Introspector/ResourceInjectionTest.java - test/javax/management/MBeanServer/AttributeListMapTest.java - test/javax/management/MBeanServer/DynamicWrapperMBeanTest.java - test/javax/management/MBeanServer/InstanceNotFoundExceptionTest.java - test/javax/management/MBeanServerFactory/NamedMBeanServerTest.java - test/javax/management/ObjectName/ValueOfTest.java - test/javax/management/context/ContextForwarderTest.java - test/javax/management/context/ContextTest.java - test/javax/management/context/LocaleAwareBroadcasterTest.java - test/javax/management/context/LocaleTest.java - test/javax/management/context/LocalizableTest.java - test/javax/management/context/RemoteContextTest.java - test/javax/management/context/localizable/MBeanDescriptions.properties - test/javax/management/context/localizable/MBeanDescriptions_fr.java - test/javax/management/context/localizable/Whatsit.java - test/javax/management/context/localizable/WhatsitMBean.java - test/javax/management/descriptor/DescriptorConstructorTest.java - test/javax/management/eventService/AddRemoveListenerTest.java - test/javax/management/eventService/CustomForwarderTest.java - test/javax/management/eventService/EventClientExecutorTest.java - test/javax/management/eventService/EventClientThreadTest.java - test/javax/management/eventService/EventDelegateSecurityTest.java - test/javax/management/eventService/EventManagerTest.java - test/javax/management/eventService/FetchingTest.java - test/javax/management/eventService/LeaseManagerDeadlockTest.java - test/javax/management/eventService/LeaseTest.java - test/javax/management/eventService/ListenerTest.java - test/javax/management/eventService/MyFetchingEventForwarder.java - test/javax/management/eventService/NotSerializableNotifTest.java - test/javax/management/eventService/PublishTest.java - test/javax/management/eventService/ReconnectableConnectorTest.java - test/javax/management/eventService/SharingThreadTest.java - test/javax/management/eventService/SubUnsubTest.java - test/javax/management/eventService/SubscribeTest.java - test/javax/management/eventService/UsingEventService.java - test/javax/management/interop/MBeanExceptionInteropTest.java - test/javax/management/modelmbean/DefaultDescriptorFieldTest.java - test/javax/management/monitor/InstantiateMonitorNotificationTest.java - test/javax/management/mxbean/CustomTypeTest.java - test/javax/management/mxbean/JMXServiceURLTest.java - test/javax/management/mxbean/customtypes/CustomLongMXBean.java - test/javax/management/mxbean/customtypes/CustomMXBean.java - test/javax/management/mxbean/customtypes/IntegerIsLongFactory.java - test/javax/management/mxbean/customtypes/IntegerIsStringFactory.java - test/javax/management/mxbean/customtypes/package-info.java - test/javax/management/namespace/DomainCreationTest.java - test/javax/management/namespace/EventWithNamespaceControlTest.java - test/javax/management/namespace/EventWithNamespaceTest.java - test/javax/management/namespace/ExportNamespaceTest.java - test/javax/management/namespace/JMXDomainTest.java - test/javax/management/namespace/JMXNamespaceSecurityTest.java - test/javax/management/namespace/JMXNamespaceTest.java - test/javax/management/namespace/JMXNamespaceViewTest.java - test/javax/management/namespace/JMXNamespacesTest.java - test/javax/management/namespace/JMXRemoteNamespaceTest.java - test/javax/management/namespace/JMXRemoteTargetNamespace.java - test/javax/management/namespace/LazyDomainTest.java - test/javax/management/namespace/LeadingSeparatorsTest.java - test/javax/management/namespace/MXBeanRefTest.java - test/javax/management/namespace/NamespaceController.java - test/javax/management/namespace/NamespaceControllerMBean.java - test/javax/management/namespace/NamespaceCreationTest.java - test/javax/management/namespace/NamespaceNotificationsTest.java - test/javax/management/namespace/NullDomainObjectNameTest.java - test/javax/management/namespace/NullObjectNameTest.java - test/javax/management/namespace/QueryNamesTest.java - test/javax/management/namespace/RemoveNotificationListenerTest.java - test/javax/management/namespace/RoutingServerProxyTest.java - test/javax/management/namespace/SerialParamProcessorTest.java - test/javax/management/namespace/SourceNamespaceTest.java - test/javax/management/namespace/VirtualMBeanNotifTest.java - test/javax/management/namespace/VirtualMBeanTest.java - test/javax/management/namespace/VirtualNamespaceQueryTest.java - test/javax/management/namespace/VirtualPropsTest.java - test/javax/management/namespace/Wombat.java - test/javax/management/namespace/WombatMBean.java - test/javax/management/namespace/namespace.policy - test/javax/management/notification/SupportClearTest.java - test/javax/management/openmbean/CompositeDataToMapTest.java - test/javax/management/openmbean/GenericMBeanExceptionTest.java - test/javax/management/query/QueryDottedAttrTest.java - test/javax/management/query/QueryNotifFilterTest.java - test/javax/management/query/QueryParseTest.java - test/javax/management/remote/mandatory/connectorServer/CloseConnectionTest.java - test/javax/management/remote/mandatory/connectorServer/ForwarderChainTest.java - test/javax/management/remote/mandatory/connectorServer/StandardForwardersTest.java - test/javax/management/remote/mandatory/version/JMXSpecVersionTest.java - test/javax/management/standardmbean/FindMethodTest.java - test/javax/management/standardmbean/RegistrationTest.java Changeset: c4752fd11cf0 Author: mikejwre Date: 2009-12-03 12:53 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/c4752fd11cf0 Added tag jdk7-b77 for changeset e6a5d095c356 ! .hgtags From john.coomes at sun.com Fri Dec 4 01:41:33 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 04 Dec 2009 09:41:33 +0000 Subject: hg: jdk7/hotspot/langtools: Added tag jdk7-b77 for changeset 0398ae15b90a Message-ID: <20091204094142.1EE8141E6A@hg.openjdk.java.net> Changeset: 45bd41dcb614 Author: mikejwre Date: 2009-12-03 12:53 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/45bd41dcb614 Added tag jdk7-b77 for changeset 0398ae15b90a ! .hgtags From y.s.ramakrishna at sun.com Fri Dec 4 15:39:47 2009 From: y.s.ramakrishna at sun.com (y.s.ramakrishna at sun.com) Date: Fri, 04 Dec 2009 23:39:47 +0000 Subject: hg: hsx/hsx16/baseline: 6906727: UseCompressedOops: some card-marking fixes related to object arrays Message-ID: <20091204233952.E273741F65@hg.openjdk.java.net> Changeset: 9adb2f184e47 Author: ysr Date: 2009-12-03 15:01 -0800 URL: http://hg.openjdk.java.net/hsx/hsx16/baseline/rev/9adb2f184e47 6906727: UseCompressedOops: some card-marking fixes related to object arrays Summary: Introduced a new write_ref_array(HeapWords* start, size_t count) method that does the requisite MemRegion range calculation so (some of the) clients of the erstwhile write_ref_array(MemRegion mr) do not need to worry. This removed all external uses of array_size(), which was also simplified and made private. Asserts were added to catch other possible issues. Further, less essential, fixes stemming from this investigation are deferred to CR 6904516 (to follow shortly in hs17). Reviewed-by: kvn, coleenp, jmasa ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/includeDB_core ! src/share/vm/memory/barrierSet.cpp ! src/share/vm/memory/barrierSet.hpp ! src/share/vm/memory/barrierSet.inline.hpp ! src/share/vm/memory/cardTableModRefBS.cpp ! src/share/vm/oops/objArrayKlass.cpp ! src/share/vm/oops/objArrayOop.hpp From erik.trimble at sun.com Fri Dec 4 17:37:51 2009 From: erik.trimble at sun.com (erik.trimble at sun.com) Date: Sat, 05 Dec 2009 01:37:51 +0000 Subject: hg: hsx/hsx16/master: 2 new changesets Message-ID: <20091205013800.C649841F86@hg.openjdk.java.net> Changeset: 49bd3de668dc Author: dholmes Date: 2009-12-01 19:10 -0500 URL: http://hg.openjdk.java.net/hsx/hsx16/master/rev/49bd3de668dc 6822370: ReentrantReadWriteLock: threads hung when there are no threads holding onto the lock (Netra x4450) Summary: This day one bug is caused by missing memory barriers in various Parker::park() paths that can result in lost wakeups and hangs. Reviewed-by: dice, acorn ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp Changeset: 9adb2f184e47 Author: ysr Date: 2009-12-03 15:01 -0800 URL: http://hg.openjdk.java.net/hsx/hsx16/master/rev/9adb2f184e47 6906727: UseCompressedOops: some card-marking fixes related to object arrays Summary: Introduced a new write_ref_array(HeapWords* start, size_t count) method that does the requisite MemRegion range calculation so (some of the) clients of the erstwhile write_ref_array(MemRegion mr) do not need to worry. This removed all external uses of array_size(), which was also simplified and made private. Asserts were added to catch other possible issues. Further, less essential, fixes stemming from this investigation are deferred to CR 6904516 (to follow shortly in hs17). Reviewed-by: kvn, coleenp, jmasa ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/includeDB_core ! src/share/vm/memory/barrierSet.cpp ! src/share/vm/memory/barrierSet.hpp ! src/share/vm/memory/barrierSet.inline.hpp ! src/share/vm/memory/cardTableModRefBS.cpp ! src/share/vm/oops/objArrayKlass.cpp ! src/share/vm/oops/objArrayOop.hpp From doko at ubuntu.com Mon Dec 7 08:55:40 2009 From: doko at ubuntu.com (Matthias Klose) Date: Mon, 07 Dec 2009 17:55:40 +0100 Subject: State of openjdk on hppa In-Reply-To: References: Message-ID: <4B1D338C.703@ubuntu.com> On 07.12.2009 14:36, Onkar Shinde wrote: > Hi, > > java3d currently fails to build on hppa because it uses some sun > specific APIs and default-jdk is GCJ on hppa. A solution for this > could be to use openjdk-6-jdk build-dep instead of default-jdk. But > the problem is that there are no openjdk-* packages on hppa. > > Does anyone know if there is any effort going on to make openjdk-* > packages available on hppa. If not then I will have to make java3d a > !hppa package. openjdk builds on hppa, but doesn't run (yet). Andrew Haley once debugged it and found out at least one things which would need to be fixed: the assumption in the C++ interpreter that the stack always grows downwards, and not upwards as on hppa. please could one of the hotspot developers sched some light on this, how easy this might to be fix, and if there are other assumptions? thanks, Matthias From mathieu.malaterre at gmail.com Mon Dec 7 09:16:06 2009 From: mathieu.malaterre at gmail.com (Mathieu Malaterre) Date: Mon, 7 Dec 2009 18:16:06 +0100 Subject: State of openjdk on hppa In-Reply-To: <4B1D338C.703@ubuntu.com> References: <4B1D338C.703@ubuntu.com> Message-ID: On Mon, Dec 7, 2009 at 5:55 PM, Matthias Klose wrote: > On 07.12.2009 14:36, Onkar Shinde wrote: >> >> Hi, >> >> java3d currently fails to build on hppa because it uses some sun >> specific APIs and default-jdk is GCJ on hppa. A solution for this >> could be to use openjdk-6-jdk build-dep instead of default-jdk. But >> the problem is that there are no openjdk-* packages on hppa. >> >> Does anyone know if there is any effort going on to make openjdk-* >> packages available on hppa. If not then I will have to make java3d a >> !hppa package. > > openjdk builds on hppa, but doesn't run (yet). Andrew Haley once debugged it > and found out at least one things which would need to be fixed: the > assumption in the C++ interpreter that the stack always grows downwards, and > not upwards as on hppa. > > please could one of the hotspot developers sched some light on this, how > easy this might to be fix, and if there are other assumptions? [hijacking thread] Switching to openjdk would also work around the following issue: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40816 This means that VTK 5.4 will NOT FTBS on hppa once switched to openjdk :) Thanks ! -- Mathieu From gbenson at redhat.com Tue Dec 8 06:58:12 2009 From: gbenson at redhat.com (Gary Benson) Date: Tue, 8 Dec 2009 14:58:12 +0000 Subject: Review Request: 6908267: Zero fails to unlock synchronized native methods on exception Message-ID: <20091208145811.GC3422@redhat.com> Hi all, If a synchronized native method throws an exception, Zero does not unlock it. This leaves the receiver/mirror locked, with a stale monitor, which can cause the VM will crash at some unspecified time in the future. This webrev fixes it. http://cr.openjdk.java.net/~gbenson/zero-fix-6908267/ Cheers, Gary -- http://gbenson.net/ From David.Holmes at Sun.COM Tue Dec 8 15:43:06 2009 From: David.Holmes at Sun.COM (David Holmes - Sun Microsystems) Date: Wed, 09 Dec 2009 09:43:06 +1000 Subject: Review Request: 6908267: Zero fails to unlock synchronized native methods on exception In-Reply-To: <20091208145811.GC3422@redhat.com> References: <20091208145811.GC3422@redhat.com> Message-ID: <4B1EE48A.9030802@sun.com> Hi Gary, Gary Benson said the following on 12/09/09 00:58: > Hi all, > > If a synchronized native method throws an exception, Zero does not > unlock it. This leaves the receiver/mirror locked, with a stale > monitor, which can cause the VM will crash at some unspecified time > in the future. This webrev fixes it. > > http://cr.openjdk.java.net/~gbenson/zero-fix-6908267/ Your original code indicates that it emulated the template interpreter by not unlocking upon an exception. Have you determined why this was wrong? The comments in the sparc and x86 interpreter have me concerned eg: // With c++ interpreter we just leave it pending caller will do the correct thing. However... // Like x86 we ignore the result of the native call and leave the method locked. This // seems wrong to leave things locked. Though an earlier comment states the exception handling will handle unlocking. Just curious ... David Holmes From Thomas.Rodriguez at Sun.COM Tue Dec 8 16:25:51 2009 From: Thomas.Rodriguez at Sun.COM (Tom Rodriguez) Date: Tue, 08 Dec 2009 16:25:51 -0800 Subject: Review Request: 6908267: Zero fails to unlock synchronized native methods on exception In-Reply-To: <4B1EE48A.9030802@sun.com> References: <20091208145811.GC3422@redhat.com> <4B1EE48A.9030802@sun.com> Message-ID: <5CA3A73D-6F25-4D78-9318-3BBE2DB3755E@sun.com> >From what I can tell the unlocking for synchronized methods is always performed in Interpreter::_remove_activation_entry which tears down an interpreter frame in the event of an exception. We get there through InterpreterRuntime::exception_handler_for_exception. I think the other cppInterpeter's have the same problem as zero. In their case I believe the unlock code should be moved above the check for a pending exception though I'm unsure how that interacts with the notify_method_exit logic for JVMTI. tom On Dec 8, 2009, at 3:43 PM, David Holmes - Sun Microsystems wrote: > Hi Gary, > > Gary Benson said the following on 12/09/09 00:58: >> Hi all, >> If a synchronized native method throws an exception, Zero does not >> unlock it. This leaves the receiver/mirror locked, with a stale >> monitor, which can cause the VM will crash at some unspecified time >> in the future. This webrev fixes it. >> http://cr.openjdk.java.net/~gbenson/zero-fix-6908267/ > > Your original code indicates that it emulated the template interpreter by not unlocking upon an exception. Have you determined why this was wrong? The comments in the sparc and x86 interpreter have me concerned eg: > > // With c++ interpreter we just leave it pending caller will do the correct thing. However... > // Like x86 we ignore the result of the native call and leave the method locked. This > // seems wrong to leave things locked. > > Though an earlier comment states the exception handling will handle unlocking. > > Just curious ... > > David Holmes From igor.veresov at sun.com Tue Dec 8 19:51:08 2009 From: igor.veresov at sun.com (igor.veresov at sun.com) Date: Wed, 09 Dec 2009 03:51:08 +0000 Subject: hg: jdk7/hotspot/hotspot: 4 new changesets Message-ID: <20091209035129.32AC441699@hg.openjdk.java.net> Changeset: 7c57aead6d3e Author: never Date: 2009-11-12 09:24 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/7c57aead6d3e 6892658: C2 should optimize some stringbuilder patterns Reviewed-by: kvn, twisti ! src/share/vm/ci/ciEnv.cpp ! src/share/vm/ci/ciEnv.hpp ! src/share/vm/ci/ciInstanceKlass.cpp ! src/share/vm/ci/ciInstanceKlass.hpp ! src/share/vm/ci/ciObjectFactory.cpp ! src/share/vm/classfile/systemDictionary.hpp ! src/share/vm/classfile/vmSymbols.cpp ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/includeDB_compiler2 ! src/share/vm/includeDB_core ! src/share/vm/memory/universe.cpp ! src/share/vm/memory/universe.hpp ! src/share/vm/opto/c2_globals.cpp ! src/share/vm/opto/c2_globals.hpp ! src/share/vm/opto/callGenerator.cpp ! src/share/vm/opto/callGenerator.hpp ! src/share/vm/opto/callnode.cpp ! src/share/vm/opto/callnode.hpp ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/compile.hpp ! src/share/vm/opto/doCall.cpp ! src/share/vm/opto/graphKit.cpp ! src/share/vm/opto/graphKit.hpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/node.hpp ! src/share/vm/opto/parseHelper.cpp ! src/share/vm/opto/phase.hpp ! src/share/vm/opto/phaseX.hpp + src/share/vm/opto/stringopts.cpp + src/share/vm/opto/stringopts.hpp ! src/share/vm/opto/type.hpp ! src/share/vm/runtime/globals.cpp ! src/share/vm/runtime/globals_extension.hpp ! src/share/vm/utilities/growableArray.hpp Changeset: bd12fff78df5 Author: cfang Date: 2009-11-25 12:09 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/bd12fff78df5 6904191: OptimizeStringConcat should be product instead of experimental Summary: Make OptimizeStringConcat a product VM option(contributed by never) Reviewed-by: never ! src/share/vm/opto/c2_globals.hpp Changeset: facbc74580c3 Author: iveresov Date: 2009-12-01 22:11 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/facbc74580c3 Merge ! src/share/vm/classfile/systemDictionary.hpp Changeset: 8b22f86d1740 Author: cfang Date: 2009-12-02 13:29 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/8b22f86d1740 6901572: JVM 1.6.16 crash on loops: assert(has_node(i),"") Summary: Skip the secondary induction variable handling if it is dead Reviewed-by: never, kvn ! src/share/vm/opto/loopnode.cpp + test/compiler/6901572/Test.java From gbenson at redhat.com Wed Dec 9 01:11:25 2009 From: gbenson at redhat.com (Gary Benson) Date: Wed, 9 Dec 2009 09:11:25 +0000 Subject: Review Request: 6908267: Zero fails to unlock synchronized native methods on exception In-Reply-To: <5CA3A73D-6F25-4D78-9318-3BBE2DB3755E@sun.com> References: <20091208145811.GC3422@redhat.com> <4B1EE48A.9030802@sun.com> <5CA3A73D-6F25-4D78-9318-3BBE2DB3755E@sun.com> Message-ID: <20091209091124.GA3409@redhat.com> The original code in Zero was based on the x86 C++ interpreter, which is where the methodology (and the comment) came from. I was suspicious when I first wrote it, and again while writing the corresponding part of Shark, but by that time the Zero implementation had passed the TCK and I didn't want to mess with it! But, the deal is that you can't jump in C++ like you can in assembler, so Zero never jumps -- all blocks of code are C++ functions, and all control flow between them is call/return. The only place in Zero that would unlock that monitor is the bit I patched. I can't be sure for the other C++ interpreters, but it looks like they are wrong too. If you grep for "remove_activation_entry" in the HotSpot sources the only file it shows up in that doesn't have "templateInterpreter" in its name is interpreterRuntime.cpp, and in there the two references to it are both surrounded by "#ifndef CC_INTERP". Cheers, Gary Tom Rodriguez wrote: > From what I can tell the unlocking for synchronized methods is > always performed in Interpreter::_remove_activation_entry which > tears down an interpreter frame in the event of an exception. > We get there through > InterpreterRuntime::exception_handler_for_exception. I think > the other cppInterpeter's have the same problem as zero. In > their case I believe the unlock code should be moved above the > check for a pending exception though I'm unsure how that > interacts with the notify_method_exit logic for JVMTI. > > tom > > On Dec 8, 2009, at 3:43 PM, David Holmes - Sun Microsystems wrote: > > Hi Gary, > > > > Gary Benson said the following on 12/09/09 00:58: > > > Hi all, > > > > > > If a synchronized native method throws an exception, Zero does not > > > unlock it. This leaves the receiver/mirror locked, with a stale > > > monitor, which can cause the VM will crash at some unspecified time > > > in the future. This webrev fixes it. > > > > > > http://cr.openjdk.java.net/~gbenson/zero-fix-6908267/ > > > > Your original code indicates that it emulated the template > > interpreter by not unlocking upon an exception. Have you > > determined why this was wrong? The comments in the sparc and x86 > > interpreter have me concerned eg: > > > > // With c++ interpreter we just leave it pending caller will do > > // the correct thing. However... Like x86 we ignore the result of > > // the native call and leave the method locked. This seems wrong > > // to leave things locked. > > > > Though an earlier comment states the exception handling will > > handle unlocking. > > > > Just curious ... > > > > David Holmes -- http://gbenson.net/ From Keith.McGuigan at Sun.COM Wed Dec 9 07:34:20 2009 From: Keith.McGuigan at Sun.COM (Keith McGuigan) Date: Wed, 09 Dec 2009 10:34:20 -0500 Subject: Review Request: 6908267: Zero fails to unlock synchronized native methods on exception In-Reply-To: <5CA3A73D-6F25-4D78-9318-3BBE2DB3755E@sun.com> References: <20091208145811.GC3422@redhat.com> <4B1EE48A.9030802@sun.com> <5CA3A73D-6F25-4D78-9318-3BBE2DB3755E@sun.com> Message-ID: <4B1FC37C.2050603@sun.com> Tom Rodriguez wrote: > From what I can tell the unlocking for synchronized methods is always performed in > Interpreter::_remove_activation_entry which tears down an interpreter frame in > the event of an exception. We get there through > InterpreterRuntime::exception_handler_for_exception. I think the other >cppInterpeter's have the same problem as zero. In their case I believe > the unlock code should be moved above the check for a pending exception > though I'm unsure how that interacts with the notify_method_exit logic for JVMTI. Doesn't the bytecode for synchronized methods typically (always?) have a catch-all exception handler that performs the monitorexit and then rethrows (in the case of an uncaught exception)? And if that's the case, do we really need the unlocking logic in remove_activation_entry? We don't have similar logic for client-compiled frames. -- - Keith From gnu_andrew at member.fsf.org Wed Dec 9 08:26:42 2009 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Wed, 9 Dec 2009 16:26:42 +0000 Subject: Allow Java's ELF symtab reader to use separate debuginfo files In-Reply-To: <4B1FC407.6010405@redhat.com> References: <4B1FC407.6010405@redhat.com> Message-ID: <17c6771e0912090826x4d641784vb4efd1f562d555ff@mail.gmail.com> 2009/12/9 Andrew Haley : > This is https://bugzilla.redhat.com/show_bug.cgi?id=541548 > The symptom is that jmap doesn't work because target libraries are stripped. > The fix is to allow the symtab reader to use the separate debuginfo files > that are available for all (AFAIK) GNU/Linux distributions. > > I'll commit this to the IcedTea repo, with a view to pushing it upstream > to OpenJDK if it works on all distros. > > Andrew. > It would be good to see this upstream. The obvious compatibility issue I can see is hardcoding /usr/lib/debug. Passing that in from the Makefile, thus allowing to be overridden if necessary, might be better. i.e. static const char debug_file_directory[] = "/usr/lib/debug"; becomes #ifndef DEBUG_FILE_DIRECTORY #define DEBUG_FILE_DIRECTORY "/usr/lib/debug" #endif with apppropriate logic in the OpenJDK makefile(s). Only other comment is that your ChangeLog should refer to openjdk, not openjdk-ecj as we want this for all builds. The patch itself is correct, it's just the ChangeLog. Redirecting this mail to the HotSpot and serviceability lists rather than tl as it concerns the serviceability tools in HotSpot. > > > 2009-12-09 ?Andrew Haley ? > > ? ? ? ?* openjdk-ecj/hotspot/agent/src/os/linux/symtab.c (debug_file_directory): > ? ? ? ?New variable. > ? ? ? ?(gnu_debuglink_crc32): New. > ? ? ? ?(build_symtab_internal): Rename from build_symtab, make static. > ? ? ? ?Add logic to look inside debuginfo files. > ? ? ? ?(open_debug_file, find_section_by_name, open_file_from_debug_link, > ? ? ? ?build_id_to_debug_filename, build_symtab_from_build_id, > ? ? ? ?build_symtab): New. > ? ? ? ?* openjdk-ecj/hotspot/agent/src/os/linux/libproc_impl.c (add_lib_info_fd): > ? ? ? ?Pass FILENAME to build_symtab(). > ? ? ? ?* openjdk-ecj/hotspot/agent/src/os/linux/symtab.h (build_symtab): > ? ? ? ?Add FILENAME arg. > > diff -u ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/libproc_impl.c openjdk/hotspot/agent/src/os/linux/libproc_impl.c > --- ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/libproc_impl.c ? ? ? 2009-05-15 00:36:38.000000000 +0100 > +++ openjdk/hotspot/agent/src/os/linux/libproc_impl.c ? 2009-12-04 16:29:27.552837905 +0000 > @@ -174,7 +174,7 @@ > ? ? ? return NULL; > ? ?} > > - ? newlib->symtab = build_symtab(newlib->fd); > + ? newlib->symtab = build_symtab(newlib->fd, libname); > ? ?if (newlib->symtab == NULL) { > ? ? ? print_debug("symbol table build failed for %s\n", newlib->name); > ? ?} > diff -u ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/symtab.c openjdk/hotspot/agent/src/os/linux/symtab.c > --- ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/symtab.c ? ? 2009-05-15 00:36:38.000000000 +0100 > +++ openjdk/hotspot/agent/src/os/linux/symtab.c 2009-12-07 13:53:13.107734342 +0000 > @@ -53,8 +53,272 @@ > ? struct hsearch_data *hash_table; > ?} symtab_t; > > -// read symbol table from given fd. > -struct symtab* build_symtab(int fd) { > + > +// Directory that contains global debuginfo files. ?In theory it > +// should be possible to change this, but in a Java environment there > +// is no obvious place to put a user interface to do it. ?Maybe this > +// could be set with an environment variable. > +static const char debug_file_directory[] = "/usr/lib/debug"; > + > +/* The CRC used in gnu_debuglink, retrieved from > + ? http://sourceware.org/gdb/current/onlinedocs/gdb/Separate-Debug-Files.html#Separate-Debug-Files. */ > +unsigned long gnu_debuglink_crc32 (unsigned long crc, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?unsigned char *buf, size_t len) > +{ > + ?static const unsigned long crc32_table[256] = > + ? ?{ > + ? ? ?0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, > + ? ? ?0x706af48f, 0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, > + ? ? ?0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, > + ? ? ?0x90bf1d91, 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, > + ? ? ?0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856, > + ? ? ?0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, > + ? ? ?0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4, > + ? ? ?0xa2677172, 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, > + ? ? ?0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, > + ? ? ?0x45df5c75, 0xdcd60dcf, 0xabd13d59, 0x26d930ac, 0x51de003a, > + ? ? ?0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599, > + ? ? ?0xb8bda50f, 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, > + ? ? ?0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190, > + ? ? ?0x01db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f, > + ? ? ?0x9fbfe4a5, 0xe8b8d433, 0x7807c9a2, 0x0f00f934, 0x9609a88e, > + ? ? ?0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01, > + ? ? ?0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed, > + ? ? ?0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950, > + ? ? ?0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, > + ? ? ?0xfbd44c65, 0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, > + ? ? ?0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a, > + ? ? ?0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5, > + ? ? ?0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c, 0x270241aa, 0xbe0b1010, > + ? ? ?0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, > + ? ? ?0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, > + ? ? ?0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, 0x9abfb3b6, > + ? ? ?0x03b6e20c, 0x74b1d29a, 0xead54739, 0x9dd277af, 0x04db2615, > + ? ? ?0x73dc1683, 0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8, > + ? ? ?0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, 0xf00f9344, > + ? ? ?0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, > + ? ? ?0x196c3671, 0x6e6b06e7, 0xfed41b76, 0x89d32be0, 0x10da7a5a, > + ? ? ?0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, > + ? ? ?0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, > + ? ? ?0xa6bc5767, 0x3fb506dd, 0x48b2364b, 0xd80d2bda, 0xaf0a1b4c, > + ? ? ?0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef, > + ? ? ?0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, > + ? ? ?0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe, > + ? ? ?0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, > + ? ? ?0x2cd99e8b, 0x5bdeae1d, 0x9b64c2b0, 0xec63f226, 0x756aa39c, > + ? ? ?0x026d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713, > + ? ? ?0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, 0x92d28e9b, > + ? ? ?0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, 0x86d3d2d4, 0xf1d4e242, > + ? ? ?0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, > + ? ? ?0x18b74777, 0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, > + ? ? ?0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, 0xa00ae278, > + ? ? ?0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7, > + ? ? ?0x4969474d, 0x3e6e77db, 0xaed16a4a, 0xd9d65adc, 0x40df0b66, > + ? ? ?0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, > + ? ? ?0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, > + ? ? ?0xcdd70693, 0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8, > + ? ? ?0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, > + ? ? ?0x2d02ef8d > + ? ?}; > + ?unsigned char *end; > + > + ?crc = ~crc & 0xffffffff; > + ?for (end = buf + len; buf < end; ++buf) > + ? ?crc = crc32_table[(crc ^ *buf) & 0xff] ^ (crc >> 8); > + ?return ~crc & 0xffffffff; > +} > + > +/* Open a debuginfo file and check its CRC. ?If it exists and the CRC > + ? matches return its fd. ?*/ > +static int > +open_debug_file (const char *pathname, unsigned int crc) > +{ > + ?unsigned int file_crc = 0; > + ?unsigned char buffer[8 * 1024]; > + > + ?int fd = pathmap_open(pathname); > + > + ?if (fd < 0) > + ? ?return -1; > + > + ?lseek(fd, 0, SEEK_SET); > + > + ?for (;;) { > + ? ?int len = read(fd, buffer, sizeof buffer); > + ? ?if (len <= 0) > + ? ? ?break; > + ? ?file_crc = gnu_debuglink_crc32(file_crc, buffer, len); > + ?} > + > + ?if (crc == file_crc) > + ? ?return fd; > + ?else { > + ? ?close(fd); > + ? ?return -1; > + ?} > +} > + > +/* Find an ELF section. ?*/ > +static struct elf_section *find_section_by_name(char *name, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? int fd, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ELF_EHDR *ehdr, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ELF_SHDR *shbuf, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? struct elf_section *scn_cache) > +{ > + ?ELF_SHDR* cursct = NULL; > + ?char *strtab; > + ?int cnt; > + > + ?if (scn_cache[ehdr->e_shstrndx].c_data == NULL) { > + ? ?if ((scn_cache[ehdr->e_shstrndx].c_data > + ? ? ? ?= read_section_data(fd, ehdr, cursct)) == NULL) { > + ? ? ?return NULL; > + ? ?} > + ?} > + > + ?strtab = scn_cache[ehdr->e_shstrndx].c_data; > + > + ?for (cursct = shbuf, cnt = 0; > + ? ? ? cnt < ehdr->e_shnum; > + ? ? ? cnt++, cursct++) { > + ? ?if (strcmp(cursct->sh_name + strtab, name) == 0) { > + ? ? ?scn_cache[cnt].c_data = read_section_data(fd, ehdr, cursct); > + ? ? ?return &scn_cache[cnt]; > + ? ?} > + ?} > + > + ?return NULL; > +} > + > +/* Look for a ".gnu_debuglink" section. ?If one exists, try to open a > + ? suitable debuginfo file. ?*/ > +static int open_file_from_debug_link(const char *name, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?int fd, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?ELF_EHDR *ehdr, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?ELF_SHDR *shbuf, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?struct elf_section *scn_cache) > +{ > + ?struct elf_section *debug_link = find_section_by_name(".gnu_debuglink", fd, ehdr, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? shbuf, scn_cache); > + ?int debug_fd; > + ?char *debug_filename = debug_link->c_data; > + ?int offset = strlen(debug_filename) + 3 >> 2; > + ?static unsigned int crc; > + ?crc = ((unsigned int*)debug_link->c_data)[offset]; > + ?char *debug_pathname = malloc(strlen(debug_filename) > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? + strlen(name) > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? + strlen(".debug/") > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? + strlen(debug_file_directory) > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? + 2); > + ?strcpy(debug_pathname, name); > + ?char *last_slash = strrchr(debug_pathname, '/'); > + ?if (last_slash == NULL) > + ? ?return -1; > + > + ?/* Look in the same directory as the object. ?*/ > + ?strcpy(last_slash+1, debug_filename); > + > + ?debug_fd = open_debug_file(debug_pathname, crc); > + ?if (debug_fd >= 0) { > + ? ?free(debug_pathname); > + ? ?return debug_fd; > + ?} > + > + ?/* Look in a subdirectory named ".debug". ?*/ > + ?strcpy(last_slash+1, ".debug/"); > + ?strcat(last_slash, debug_filename); > + > + ?debug_fd = open_debug_file(debug_pathname, crc); > + ?if (debug_fd >= 0) { > + ? ?free(debug_pathname); > + ? ?return debug_fd; > + ?} > + > + ?/* Look in /usr/lib/debug + the full pathname. ?*/ > + ?strcpy(debug_pathname, debug_file_directory); > + ?strcat(debug_pathname, name); > + ?last_slash = strrchr(debug_pathname, '/'); > + ?strcpy(last_slash+1, debug_filename); > + > + ?debug_fd = open_debug_file(debug_pathname, crc); > + ?if (debug_fd >= 0) { > + ? ?free(debug_pathname); > + ? ?return debug_fd; > + ?} > + > + ?free(debug_pathname); > + ?return -1; > +} > + > +static struct symtab* build_symtab_internal(int fd, const char *filename, bool try_debuginfo); > + > +/* Look for a ".gnu_debuglink" section. ?If one exists, try to open a > + ? suitable debuginfo file and read a symbol table from it. ?*/ > +static struct symtab *build_symtab_from_debug_link(const char *name, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?int fd, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?ELF_EHDR *ehdr, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?ELF_SHDR *shbuf, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?struct elf_section *scn_cache) > +{ > + ?fd = open_file_from_debug_link(name, fd, ehdr, shbuf, scn_cache); > + > + ?if (fd >= 0) { > + ? ?struct symtab *symtab = build_symtab_internal(fd, NULL, /* try_debuginfo */ false); > + ? ?close(fd); > + ? ?return symtab; > + ?} > + > + ?return NULL; > +} > + > +// Given a build_id, find the associated debuginfo file > +static char * > +build_id_to_debug_filename (size_t size, unsigned char *data) > +{ > + ?char *filename, *s; > + > + ?filename = malloc(strlen (debug_file_directory) + (sizeof "/.build-id/" - 1) + 1 > + ? ? ? ? ? ? ? ? ? + 2 * size + (sizeof ".debug" - 1) + 1); > + ?s = filename + sprintf (filename, "%s/.build-id/", debug_file_directory); > + ?if (size > 0) > + ? ?{ > + ? ? ?size--; > + ? ? ?s += sprintf (s, "%02x", *data++); > + ? ?} > + ?if (size > 0) > + ? ?*s++ = '/'; > + ?while (size-- > 0) > + ? ?s += sprintf (s, "%02x", *data++); > + ?strcpy (s, ".debug"); > + > + ?return filename; > +} > + > +// Read a build ID note. ?Try to open any associated debuginfo file > +// and return its symtab > +static struct symtab* build_symtab_from_build_id(Elf64_Nhdr *note) > +{ > + ?int fd; > + ?struct symtab *symtab = NULL; > + > + ?unsigned char *bytes > + ? ?= (unsigned char*)(note+1) + note->n_namesz; > + ?unsigned char *filename > + ? ?= (build_id_to_debug_filename (note->n_descsz, bytes)); > + > + ?fd = pathmap_open(filename); > + ?if (fd >= 0) { > + ? ?symtab = build_symtab_internal(fd, NULL, /* try_debuginfo */ false); > + ? ?close(fd); > + ?} > + ?free(filename); > + > + ?return symtab; > +} > + > +// read symbol table from given fd. ?If try_debuginfo) is true, also > +// try to open an associated debuginfo file > +static struct symtab* build_symtab_internal(int fd, const char *filename, bool try_debuginfo) { > ? ELF_EHDR ehdr; > ? char *names = NULL; > ? struct symtab* symtab = NULL; > @@ -90,7 +354,8 @@ > > ? for (cursct = shbuf, cnt = 0; cnt < ehdr.e_shnum; cnt++) { > ? ? scn_cache[cnt].c_shdr = cursct; > - ? ?if (cursct->sh_type == SHT_SYMTAB || cursct->sh_type == SHT_STRTAB) { > + ? ?if (cursct->sh_type == SHT_SYMTAB || cursct->sh_type == SHT_STRTAB > + ? ? ? || cursct->sh_type == SHT_NOTE) { > ? ? ? if ( (scn_cache[cnt].c_data = read_section_data(fd, &ehdr, cursct)) == NULL) { > ? ? ? ? ?goto quit; > ? ? ? } > @@ -163,6 +428,28 @@ > ? ? } > ? } > > + ?// If we have no symtab in this file, look for a separate debuginfo file > + ?if (try_debuginfo) { > + ? ?// First we look for a Build ID > + ? ?for (cursct = shbuf, cnt = 0; > + ? ? ? ?symtab == NULL && cnt < ehdr.e_shnum; > + ? ? ? ?cnt++) { > + ? ? ?if (cursct->sh_type == SHT_NOTE) { > + ? ? ? Elf64_Nhdr *note = (Elf64_Nhdr *)scn_cache[cnt].c_data; > + ? ? ? if (note->n_type == NT_GNU_BUILD_ID) { > + ? ? ? ? symtab = build_symtab_from_build_id(note); > + ? ? ? } > + ? ? ?} > + ? ? ?cursct++; > + ? ?} > + > + ? ?// Then, if that doesn't work, the debug link > + ? ?if (symtab == NULL) { > + ? ? ?symtab = build_symtab_from_debug_link(filename, fd, &ehdr, shbuf, > + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? scn_cache); > + ? ?} > + ?} > + > ?quit: > ? if (shbuf) free(shbuf); > ? if (phbuf) free(phbuf); > @@ -177,6 +464,11 @@ > ? return symtab; > ?} > > +struct symtab* build_symtab(int fd, const char *filename) { > + ?return build_symtab_internal(fd, filename, /* try_debuginfo */ true); > +} > + > + > ?void destroy_symtab(struct symtab* symtab) { > ? if (!symtab) return; > ? if (symtab->strs) free(symtab->strs); > diff -u ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/symtab.h openjdk/hotspot/agent/src/os/linux/symtab.h > --- ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/symtab.h ? ? 2009-05-15 00:36:38.000000000 +0100 > +++ openjdk/hotspot/agent/src/os/linux/symtab.h 2009-12-04 16:30:38.797838015 +0000 > @@ -32,7 +32,7 @@ > ?struct symtab; > > ?// build symbol table for a given ELF file descriptor > -struct symtab* build_symtab(int fd); > +struct symtab* build_symtab(int fd, const char *filename); > > ?// destroy the symbol table > ?void destroy_symtab(struct symtab* symtab); > > > -- 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 gbenson at redhat.com Wed Dec 9 08:30:39 2009 From: gbenson at redhat.com (Gary Benson) Date: Wed, 9 Dec 2009 16:30:39 +0000 Subject: Review Request: Fix broken options on Zero Message-ID: <20091209163039.GD3409@redhat.com> Hi all, I've been doing a mini-audit of Zero to ensure it still works with non-standard options. This webrev: http://cr.openjdk.java.net/~gbenson/zero-options-fixes/ fixes the following issues: 1. HotSpot would segfault with -XX:+CITime if the VM is built with no compilers. The patch fixes this. 2. The C++ interpreter doesn't support -XX:+ProfileInterpreter and -XX:+UseCompressedOops, and Zero doesn't support -XX:+TaggedStackInterpreter. The patch disables these options in these configurations. I haven't filed a bug for this, so it has no bug id yet. Cheers, Gary -- http://gbenson.net/ From aph at redhat.com Wed Dec 9 08:51:00 2009 From: aph at redhat.com (Andrew Haley) Date: Wed, 09 Dec 2009 16:51:00 +0000 Subject: Allow Java's ELF symtab reader to use separate debuginfo files In-Reply-To: <17c6771e0912090826x4d641784vb4efd1f562d555ff@mail.gmail.com> References: <4B1FC407.6010405@redhat.com> <17c6771e0912090826x4d641784vb4efd1f562d555ff@mail.gmail.com> Message-ID: <4B1FD574.3030004@redhat.com> Andrew John Hughes wrote: > 2009/12/9 Andrew Haley : >> This is https://bugzilla.redhat.com/show_bug.cgi?id=541548 >> The symptom is that jmap doesn't work because target libraries are stripped. >> The fix is to allow the symtab reader to use the separate debuginfo files >> that are available for all (AFAIK) GNU/Linux distributions. >> >> I'll commit this to the IcedTea repo, with a view to pushing it upstream >> to OpenJDK if it works on all distros. > > It would be good to see this upstream. The obvious compatibility > issue I can see is hardcoding /usr/lib/debug. Passing that in from > the Makefile, thus allowing to be overridden if necessary, might be > better. > i.e. > > static const char debug_file_directory[] = "/usr/lib/debug"; > > becomes > > #ifndef DEBUG_FILE_DIRECTORY > #define DEBUG_FILE_DIRECTORY "/usr/lib/debug" > #endif > > with apppropriate logic in the OpenJDK makefile(s). I think this directory is generally assumed to be hard-coded everywhere. I will make such a change if this patch won't be committed otherwise, but I do not believe that it will ever be used. > Only other comment is that your ChangeLog should refer to openjdk, not > openjdk-ecj as we want this for all builds. The patch itself is > correct, it's just the ChangeLog. Yeah, I noticed this already. Thanks, Andrew. From gbenson at redhat.com Wed Dec 9 09:13:39 2009 From: gbenson at redhat.com (Gary Benson) Date: Wed, 9 Dec 2009 17:13:39 +0000 Subject: Review Request: Make -Xprintflags always available Message-ID: <20091209171339.GF3409@redhat.com> Hi all, I've been working on a script to test HotSpot with non-standard options. The idea is to start the VM with -XX option and check it doesn't crash or anything. One thing that's proving problematic is getting a list of all the options. We want to test product builds, but -Xprintflags is only available on debug builds. Would it be possible to have -Xprintflags always available? Something like this: http://cr.openjdk.java.net/~gbenson/printflags-product/ Cheers, Gary -- http://gbenson.net/ From Thomas.Rodriguez at Sun.COM Wed Dec 9 09:15:25 2009 From: Thomas.Rodriguez at Sun.COM (Tom Rodriguez) Date: Wed, 09 Dec 2009 09:15:25 -0800 Subject: Review Request: 6908267: Zero fails to unlock synchronized native methods on exception In-Reply-To: <4B1FC37C.2050603@sun.com> References: <20091208145811.GC3422@redhat.com> <4B1EE48A.9030802@sun.com> <5CA3A73D-6F25-4D78-9318-3BBE2DB3755E@sun.com> <4B1FC37C.2050603@sun.com> Message-ID: Methods with the synchronized modifier don't use bytecodes to implement their unlocking so it's up to the JVM itself to perform the needed locking and unlocking. Client compiled frames do implement the proper unlocking. Previously this was done in the exception handler entry point for the compiled frame in a fairly explicit manner but in 1.6 this was moved up into the IR with a synthetic exception handler to perform the unlocking. Search for sync_handler in c1_GraphBuilder.cpp. tom On Dec 9, 2009, at 7:34 AM, Keith McGuigan wrote: > Tom Rodriguez wrote: >> From what I can tell the unlocking for synchronized methods is always performed in > > Interpreter::_remove_activation_entry which tears down an interpreter frame in > > the event of an exception. We get there through > > InterpreterRuntime::exception_handler_for_exception. I think the other > >cppInterpeter's have the same problem as zero. In their case I believe > > the unlock code should be moved above the check for a pending exception > > though I'm unsure how that interacts with the notify_method_exit logic for JVMTI. > > Doesn't the bytecode for synchronized methods typically (always?) have a catch-all exception handler that performs the monitorexit and then rethrows (in the case of an uncaught exception)? And if that's the case, do we really need the unlocking logic in remove_activation_entry? We don't have similar logic for client-compiled frames. > > -- > - Keith From Kelly.Ohair at Sun.COM Wed Dec 9 09:25:45 2009 From: Kelly.Ohair at Sun.COM (Kelly O'Hair) Date: Wed, 09 Dec 2009 09:25:45 -0800 Subject: Allow Java's ELF symtab reader to use separate debuginfo files In-Reply-To: <17c6771e0912090826x4d641784vb4efd1f562d555ff@mail.gmail.com> References: <4B1FC407.6010405@redhat.com> <17c6771e0912090826x4d641784vb4efd1f562d555ff@mail.gmail.com> Message-ID: <4B1FDD99.70407@sun.com> Andrew John Hughes wrote: > 2009/12/9 Andrew Haley : >> This is https://bugzilla.redhat.com/show_bug.cgi?id=541548 >> The symptom is that jmap doesn't work because target libraries are stripped. >> The fix is to allow the symtab reader to use the separate debuginfo files >> that are available for all (AFAIK) GNU/Linux distributions. >> >> I'll commit this to the IcedTea repo, with a view to pushing it upstream >> to OpenJDK if it works on all distros. >> >> Andrew. >> > > It would be good to see this upstream. The obvious compatibility > issue I can see is hardcoding /usr/lib/debug. Passing that in from > the Makefile, thus allowing to be overridden if necessary, might be > better. > i.e. > > static const char debug_file_directory[] = "/usr/lib/debug"; > > becomes > > #ifndef DEBUG_FILE_DIRECTORY > #define DEBUG_FILE_DIRECTORY "/usr/lib/debug" > #endif > > with apppropriate logic in the OpenJDK makefile(s). > > Only other comment is that your ChangeLog should refer to openjdk, not > openjdk-ecj as we want this for all builds. The patch itself is > correct, it's just the ChangeLog. > > Redirecting this mail to the HotSpot and serviceability lists rather > than tl as it concerns the serviceability tools in HotSpot. Is there some other way than baking in 256 hex constants into our sources? Why can't this logic be in a system include file somwehere? -kto > >> >> 2009-12-09 Andrew Haley >> >> * openjdk-ecj/hotspot/agent/src/os/linux/symtab.c (debug_file_directory): >> New variable. >> (gnu_debuglink_crc32): New. >> (build_symtab_internal): Rename from build_symtab, make static. >> Add logic to look inside debuginfo files. >> (open_debug_file, find_section_by_name, open_file_from_debug_link, >> build_id_to_debug_filename, build_symtab_from_build_id, >> build_symtab): New. >> * openjdk-ecj/hotspot/agent/src/os/linux/libproc_impl.c (add_lib_info_fd): >> Pass FILENAME to build_symtab(). >> * openjdk-ecj/hotspot/agent/src/os/linux/symtab.h (build_symtab): >> Add FILENAME arg. >> >> diff -u ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/libproc_impl.c openjdk/hotspot/agent/src/os/linux/libproc_impl.c >> --- ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/libproc_impl.c 2009-05-15 00:36:38.000000000 +0100 >> +++ openjdk/hotspot/agent/src/os/linux/libproc_impl.c 2009-12-04 16:29:27.552837905 +0000 >> @@ -174,7 +174,7 @@ >> return NULL; >> } >> >> - newlib->symtab = build_symtab(newlib->fd); >> + newlib->symtab = build_symtab(newlib->fd, libname); >> if (newlib->symtab == NULL) { >> print_debug("symbol table build failed for %s\n", newlib->name); >> } >> diff -u ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/symtab.c openjdk/hotspot/agent/src/os/linux/symtab.c >> --- ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/symtab.c 2009-05-15 00:36:38.000000000 +0100 >> +++ openjdk/hotspot/agent/src/os/linux/symtab.c 2009-12-07 13:53:13.107734342 +0000 >> @@ -53,8 +53,272 @@ >> struct hsearch_data *hash_table; >> } symtab_t; >> >> -// read symbol table from given fd. >> -struct symtab* build_symtab(int fd) { >> + >> +// Directory that contains global debuginfo files. In theory it >> +// should be possible to change this, but in a Java environment there >> +// is no obvious place to put a user interface to do it. Maybe this >> +// could be set with an environment variable. >> +static const char debug_file_directory[] = "/usr/lib/debug"; >> + >> +/* The CRC used in gnu_debuglink, retrieved from >> + http://sourceware.org/gdb/current/onlinedocs/gdb/Separate-Debug-Files.html#Separate-Debug-Files. */ >> +unsigned long gnu_debuglink_crc32 (unsigned long crc, >> + unsigned char *buf, size_t len) >> +{ >> + static const unsigned long crc32_table[256] = >> + { >> + 0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, >> + 0x706af48f, 0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, >> + 0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, >> + 0x90bf1d91, 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, >> + 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856, >> + 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, >> + 0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4, >> + 0xa2677172, 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, >> + 0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, >> + 0x45df5c75, 0xdcd60dcf, 0xabd13d59, 0x26d930ac, 0x51de003a, >> + 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599, >> + 0xb8bda50f, 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, >> + 0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190, >> + 0x01db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f, >> + 0x9fbfe4a5, 0xe8b8d433, 0x7807c9a2, 0x0f00f934, 0x9609a88e, >> + 0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01, >> + 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, 0x6c0695ed, >> + 0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950, >> + 0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, >> + 0xfbd44c65, 0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, >> + 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a, >> + 0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5, >> + 0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c, 0x270241aa, 0xbe0b1010, >> + 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, >> + 0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, >> + 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, 0x9abfb3b6, >> + 0x03b6e20c, 0x74b1d29a, 0xead54739, 0x9dd277af, 0x04db2615, >> + 0x73dc1683, 0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8, >> + 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, 0xf00f9344, >> + 0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, >> + 0x196c3671, 0x6e6b06e7, 0xfed41b76, 0x89d32be0, 0x10da7a5a, >> + 0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, >> + 0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, >> + 0xa6bc5767, 0x3fb506dd, 0x48b2364b, 0xd80d2bda, 0xaf0a1b4c, >> + 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef, >> + 0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, >> + 0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe, >> + 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, >> + 0x2cd99e8b, 0x5bdeae1d, 0x9b64c2b0, 0xec63f226, 0x756aa39c, >> + 0x026d930a, 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713, >> + 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, 0x92d28e9b, >> + 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, 0x86d3d2d4, 0xf1d4e242, >> + 0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, >> + 0x18b74777, 0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, >> + 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, 0xa00ae278, >> + 0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7, >> + 0x4969474d, 0x3e6e77db, 0xaed16a4a, 0xd9d65adc, 0x40df0b66, >> + 0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, >> + 0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, >> + 0xcdd70693, 0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8, >> + 0x5d681b02, 0x2a6f2b94, 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, >> + 0x2d02ef8d >> + }; >> + unsigned char *end; >> + >> + crc = ~crc & 0xffffffff; >> + for (end = buf + len; buf < end; ++buf) >> + crc = crc32_table[(crc ^ *buf) & 0xff] ^ (crc >> 8); >> + return ~crc & 0xffffffff; >> +} >> + >> +/* Open a debuginfo file and check its CRC. If it exists and the CRC >> + matches return its fd. */ >> +static int >> +open_debug_file (const char *pathname, unsigned int crc) >> +{ >> + unsigned int file_crc = 0; >> + unsigned char buffer[8 * 1024]; >> + >> + int fd = pathmap_open(pathname); >> + >> + if (fd < 0) >> + return -1; >> + >> + lseek(fd, 0, SEEK_SET); >> + >> + for (;;) { >> + int len = read(fd, buffer, sizeof buffer); >> + if (len <= 0) >> + break; >> + file_crc = gnu_debuglink_crc32(file_crc, buffer, len); >> + } >> + >> + if (crc == file_crc) >> + return fd; >> + else { >> + close(fd); >> + return -1; >> + } >> +} >> + >> +/* Find an ELF section. */ >> +static struct elf_section *find_section_by_name(char *name, >> + int fd, >> + ELF_EHDR *ehdr, >> + ELF_SHDR *shbuf, >> + struct elf_section *scn_cache) >> +{ >> + ELF_SHDR* cursct = NULL; >> + char *strtab; >> + int cnt; >> + >> + if (scn_cache[ehdr->e_shstrndx].c_data == NULL) { >> + if ((scn_cache[ehdr->e_shstrndx].c_data >> + = read_section_data(fd, ehdr, cursct)) == NULL) { >> + return NULL; >> + } >> + } >> + >> + strtab = scn_cache[ehdr->e_shstrndx].c_data; >> + >> + for (cursct = shbuf, cnt = 0; >> + cnt < ehdr->e_shnum; >> + cnt++, cursct++) { >> + if (strcmp(cursct->sh_name + strtab, name) == 0) { >> + scn_cache[cnt].c_data = read_section_data(fd, ehdr, cursct); >> + return &scn_cache[cnt]; >> + } >> + } >> + >> + return NULL; >> +} >> + >> +/* Look for a ".gnu_debuglink" section. If one exists, try to open a >> + suitable debuginfo file. */ >> +static int open_file_from_debug_link(const char *name, >> + int fd, >> + ELF_EHDR *ehdr, >> + ELF_SHDR *shbuf, >> + struct elf_section *scn_cache) >> +{ >> + struct elf_section *debug_link = find_section_by_name(".gnu_debuglink", fd, ehdr, >> + shbuf, scn_cache); >> + int debug_fd; >> + char *debug_filename = debug_link->c_data; >> + int offset = strlen(debug_filename) + 3 >> 2; >> + static unsigned int crc; >> + crc = ((unsigned int*)debug_link->c_data)[offset]; >> + char *debug_pathname = malloc(strlen(debug_filename) >> + + strlen(name) >> + + strlen(".debug/") >> + + strlen(debug_file_directory) >> + + 2); >> + strcpy(debug_pathname, name); >> + char *last_slash = strrchr(debug_pathname, '/'); >> + if (last_slash == NULL) >> + return -1; >> + >> + /* Look in the same directory as the object. */ >> + strcpy(last_slash+1, debug_filename); >> + >> + debug_fd = open_debug_file(debug_pathname, crc); >> + if (debug_fd >= 0) { >> + free(debug_pathname); >> + return debug_fd; >> + } >> + >> + /* Look in a subdirectory named ".debug". */ >> + strcpy(last_slash+1, ".debug/"); >> + strcat(last_slash, debug_filename); >> + >> + debug_fd = open_debug_file(debug_pathname, crc); >> + if (debug_fd >= 0) { >> + free(debug_pathname); >> + return debug_fd; >> + } >> + >> + /* Look in /usr/lib/debug + the full pathname. */ >> + strcpy(debug_pathname, debug_file_directory); >> + strcat(debug_pathname, name); >> + last_slash = strrchr(debug_pathname, '/'); >> + strcpy(last_slash+1, debug_filename); >> + >> + debug_fd = open_debug_file(debug_pathname, crc); >> + if (debug_fd >= 0) { >> + free(debug_pathname); >> + return debug_fd; >> + } >> + >> + free(debug_pathname); >> + return -1; >> +} >> + >> +static struct symtab* build_symtab_internal(int fd, const char *filename, bool try_debuginfo); >> + >> +/* Look for a ".gnu_debuglink" section. If one exists, try to open a >> + suitable debuginfo file and read a symbol table from it. */ >> +static struct symtab *build_symtab_from_debug_link(const char *name, >> + int fd, >> + ELF_EHDR *ehdr, >> + ELF_SHDR *shbuf, >> + struct elf_section *scn_cache) >> +{ >> + fd = open_file_from_debug_link(name, fd, ehdr, shbuf, scn_cache); >> + >> + if (fd >= 0) { >> + struct symtab *symtab = build_symtab_internal(fd, NULL, /* try_debuginfo */ false); >> + close(fd); >> + return symtab; >> + } >> + >> + return NULL; >> +} >> + >> +// Given a build_id, find the associated debuginfo file >> +static char * >> +build_id_to_debug_filename (size_t size, unsigned char *data) >> +{ >> + char *filename, *s; >> + >> + filename = malloc(strlen (debug_file_directory) + (sizeof "/.build-id/" - 1) + 1 >> + + 2 * size + (sizeof ".debug" - 1) + 1); >> + s = filename + sprintf (filename, "%s/.build-id/", debug_file_directory); >> + if (size > 0) >> + { >> + size--; >> + s += sprintf (s, "%02x", *data++); >> + } >> + if (size > 0) >> + *s++ = '/'; >> + while (size-- > 0) >> + s += sprintf (s, "%02x", *data++); >> + strcpy (s, ".debug"); >> + >> + return filename; >> +} >> + >> +// Read a build ID note. Try to open any associated debuginfo file >> +// and return its symtab >> +static struct symtab* build_symtab_from_build_id(Elf64_Nhdr *note) >> +{ >> + int fd; >> + struct symtab *symtab = NULL; >> + >> + unsigned char *bytes >> + = (unsigned char*)(note+1) + note->n_namesz; >> + unsigned char *filename >> + = (build_id_to_debug_filename (note->n_descsz, bytes)); >> + >> + fd = pathmap_open(filename); >> + if (fd >= 0) { >> + symtab = build_symtab_internal(fd, NULL, /* try_debuginfo */ false); >> + close(fd); >> + } >> + free(filename); >> + >> + return symtab; >> +} >> + >> +// read symbol table from given fd. If try_debuginfo) is true, also >> +// try to open an associated debuginfo file >> +static struct symtab* build_symtab_internal(int fd, const char *filename, bool try_debuginfo) { >> ELF_EHDR ehdr; >> char *names = NULL; >> struct symtab* symtab = NULL; >> @@ -90,7 +354,8 @@ >> >> for (cursct = shbuf, cnt = 0; cnt < ehdr.e_shnum; cnt++) { >> scn_cache[cnt].c_shdr = cursct; >> - if (cursct->sh_type == SHT_SYMTAB || cursct->sh_type == SHT_STRTAB) { >> + if (cursct->sh_type == SHT_SYMTAB || cursct->sh_type == SHT_STRTAB >> + || cursct->sh_type == SHT_NOTE) { >> if ( (scn_cache[cnt].c_data = read_section_data(fd, &ehdr, cursct)) == NULL) { >> goto quit; >> } >> @@ -163,6 +428,28 @@ >> } >> } >> >> + // If we have no symtab in this file, look for a separate debuginfo file >> + if (try_debuginfo) { >> + // First we look for a Build ID >> + for (cursct = shbuf, cnt = 0; >> + symtab == NULL && cnt < ehdr.e_shnum; >> + cnt++) { >> + if (cursct->sh_type == SHT_NOTE) { >> + Elf64_Nhdr *note = (Elf64_Nhdr *)scn_cache[cnt].c_data; >> + if (note->n_type == NT_GNU_BUILD_ID) { >> + symtab = build_symtab_from_build_id(note); >> + } >> + } >> + cursct++; >> + } >> + >> + // Then, if that doesn't work, the debug link >> + if (symtab == NULL) { >> + symtab = build_symtab_from_debug_link(filename, fd, &ehdr, shbuf, >> + scn_cache); >> + } >> + } >> + >> quit: >> if (shbuf) free(shbuf); >> if (phbuf) free(phbuf); >> @@ -177,6 +464,11 @@ >> return symtab; >> } >> >> +struct symtab* build_symtab(int fd, const char *filename) { >> + return build_symtab_internal(fd, filename, /* try_debuginfo */ true); >> +} >> + >> + >> void destroy_symtab(struct symtab* symtab) { >> if (!symtab) return; >> if (symtab->strs) free(symtab->strs); >> diff -u ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/symtab.h openjdk/hotspot/agent/src/os/linux/symtab.h >> --- ../openjdk/icedtea6/openjdk/hotspot/agent/src/os/linux/symtab.h 2009-05-15 00:36:38.000000000 +0100 >> +++ openjdk/hotspot/agent/src/os/linux/symtab.h 2009-12-04 16:30:38.797838015 +0000 >> @@ -32,7 +32,7 @@ >> struct symtab; >> >> // build symbol table for a given ELF file descriptor >> -struct symtab* build_symtab(int fd); >> +struct symtab* build_symtab(int fd, const char *filename); >> >> // destroy the symbol table >> void destroy_symtab(struct symtab* symtab); >> >> >> > > > From gnu_andrew at member.fsf.org Wed Dec 9 09:30:19 2009 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Wed, 9 Dec 2009 17:30:19 +0000 Subject: Allow Java's ELF symtab reader to use separate debuginfo files In-Reply-To: <4B1FD574.3030004@redhat.com> References: <4B1FC407.6010405@redhat.com> <17c6771e0912090826x4d641784vb4efd1f562d555ff@mail.gmail.com> <4B1FD574.3030004@redhat.com> Message-ID: <17c6771e0912090930g758b202ahb4d0f3ca70033de7@mail.gmail.com> 2009/12/9 Andrew Haley : > Andrew John Hughes wrote: >> 2009/12/9 Andrew Haley : >>> This is https://bugzilla.redhat.com/show_bug.cgi?id=541548 >>> The symptom is that jmap doesn't work because target libraries are stripped. >>> The fix is to allow the symtab reader to use the separate debuginfo files >>> that are available for all (AFAIK) GNU/Linux distributions. >>> >>> I'll commit this to the IcedTea repo, with a view to pushing it upstream >>> to OpenJDK if it works on all distros. >> >> It would be good to see this upstream. ?The obvious compatibility >> issue I can see is hardcoding /usr/lib/debug. ?Passing that in from >> the Makefile, thus allowing to be overridden if necessary, might be >> better. >> i.e. >> >> static const char debug_file_directory[] = "/usr/lib/debug"; >> >> becomes >> >> #ifndef DEBUG_FILE_DIRECTORY >> #define DEBUG_FILE_DIRECTORY "/usr/lib/debug" >> #endif >> >> with apppropriate logic in the OpenJDK makefile(s). > > I think this directory is generally assumed to be hard-coded everywhere. ?I > will make such a change if this patch won't be committed otherwise, but I do > not believe that it will ever be used. > Ah, ok. This was the only possibly distro-specific issue I could see in the patch. >> Only other comment is that your ChangeLog should refer to openjdk, not >> openjdk-ecj as we want this for all builds. The patch itself is >> correct, it's just the ChangeLog. > > Yeah, I noticed this already. > > Thanks, > 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 aph at redhat.com Wed Dec 9 10:10:12 2009 From: aph at redhat.com (Andrew Haley) Date: Wed, 09 Dec 2009 18:10:12 +0000 Subject: Allow Java's ELF symtab reader to use separate debuginfo files In-Reply-To: <4B1FDD99.70407@sun.com> References: <4B1FC407.6010405@redhat.com> <17c6771e0912090826x4d641784vb4efd1f562d555ff@mail.gmail.com> <4B1FDD99.70407@sun.com> Message-ID: <4B1FE804.80508@redhat.com> Kelly O'Hair wrote: > Andrew John Hughes wrote: >> 2009/12/9 Andrew Haley : >>> This is https://bugzilla.redhat.com/show_bug.cgi?id=541548 >>> The symptom is that jmap doesn't work because target libraries are stripped. >>> The fix is to allow the symtab reader to use the separate debuginfo files >>> that are available for all (AFAIK) GNU/Linux distributions. >>> >>> I'll commit this to the IcedTea repo, with a view to pushing it upstream >>> to OpenJDK if it works on all distros. >>> >>> Andrew. >>> >> It would be good to see this upstream. The obvious compatibility >> issue I can see is hardcoding /usr/lib/debug. Passing that in from >> the Makefile, thus allowing to be overridden if necessary, might be >> better. >> i.e. >> >> static const char debug_file_directory[] = "/usr/lib/debug"; >> >> becomes >> >> #ifndef DEBUG_FILE_DIRECTORY >> #define DEBUG_FILE_DIRECTORY "/usr/lib/debug" >> #endif >> >> with apppropriate logic in the OpenJDK makefile(s). >> >> Only other comment is that your ChangeLog should refer to openjdk, not >> openjdk-ecj as we want this for all builds. The patch itself is >> correct, it's just the ChangeLog. >> >> Redirecting this mail to the HotSpot and serviceability lists rather >> than tl as it concerns the serviceability tools in HotSpot. > > Is there some other way than baking in 256 hex constants into our sources? I'm sure it's perfectly possible to generate the CRC-32 tables at runtime. However, the CRC function is defined in terms of this exact source code, see http://sourceware.org/gdb/current/onlinedocs/gdb/Separate-Debug-Files.html#Separate-Debug-Files > Why can't this logic be in a system include file somwehere? Apart from "because it isn't", I can think of no good reason. Clearly there should be a common API for this stuff, but it is spread around various tools and libraries with licences we can't use, such as GPLv3+. Andrew. From y.s.ramakrishna at sun.com Wed Dec 9 14:43:08 2009 From: y.s.ramakrishna at sun.com (y.s.ramakrishna at sun.com) Date: Wed, 09 Dec 2009 22:43:08 +0000 Subject: hg: hsx/hsx16/baseline: 6908208: UseCompressedOops: array_size() returns incorrect size for MAX_INT object array following 6906727 Message-ID: <20091209224312.7A233417DC@hg.openjdk.java.net> Changeset: 62926c7f67a3 Author: ysr Date: 2009-12-08 15:12 -0800 URL: http://hg.openjdk.java.net/hsx/hsx16/baseline/rev/62926c7f67a3 6908208: UseCompressedOops: array_size() returns incorrect size for MAX_INT object array following 6906727 Summary: In array_size() cast to an unsigned to avoid overflow of intermediate value. Reviewed-by: kvn, tonyp, jmasa, jcoomes, coleenp ! src/share/vm/oops/objArrayOop.hpp From Christian.Thalinger at Sun.COM Thu Dec 10 02:24:44 2009 From: Christian.Thalinger at Sun.COM (Christian Thalinger) Date: Thu, 10 Dec 2009 11:24:44 +0100 Subject: Review Request: Fix broken options on Zero In-Reply-To: <20091209163039.GD3409@redhat.com> References: <20091209163039.GD3409@redhat.com> Message-ID: <1260440684.23806.142.camel@macbook> On Wed, 2009-12-09 at 16:30 +0000, Gary Benson wrote: > Hi all, > > I've been doing a mini-audit of Zero to ensure it still works with > non-standard options. This webrev: > > http://cr.openjdk.java.net/~gbenson/zero-options-fixes/ > > fixes the following issues: > > 1. HotSpot would segfault with -XX:+CITime if the VM is built > with no compilers. The patch fixes this. > > 2. The C++ interpreter doesn't support -XX:+ProfileInterpreter > and -XX:+UseCompressedOops, and Zero doesn't support > -XX:+TaggedStackInterpreter. The patch disables these > options in these configurations. Changes look good to me. > > I haven't filed a bug for this, so it has no bug id yet. The CR is: 6909153: Fix broken options on Zero -- Christian From aph at redhat.com Thu Dec 10 03:16:30 2009 From: aph at redhat.com (Andrew Haley) Date: Thu, 10 Dec 2009 11:16:30 +0000 Subject: Allow Java's ELF symtab reader to use separate debuginfo files In-Reply-To: <4B1FE804.80508@redhat.com> References: <4B1FC407.6010405@redhat.com> <17c6771e0912090826x4d641784vb4efd1f562d555ff@mail.gmail.com> <4B1FDD99.70407@sun.com> <4B1FE804.80508@redhat.com> Message-ID: <4B20D88E.4040907@redhat.com> Andrew Haley wrote: > Kelly O'Hair wrote: >> Is there some other way than baking in 256 hex constants into our sources? > > I'm sure it's perfectly possible to generate the CRC-32 tables at runtime. > However, the CRC function is defined in terms of this exact source code, Ah, I was about to add "but it's only 1 kbyte!" when I noticed that the data are unsigned longs, and therefore maybe 2 kbytes. I presume that this is because gdb might be used on hosts with 16-bit ints, but that hardly affects us. I'll fix it before submitting a webrev. Andrew. From erik.trimble at sun.com Thu Dec 10 05:35:37 2009 From: erik.trimble at sun.com (erik.trimble at sun.com) Date: Thu, 10 Dec 2009 13:35:37 +0000 Subject: hg: hsx/hsx16/master: 6908208: UseCompressedOops: array_size() returns incorrect size for MAX_INT object array following 6906727 Message-ID: <20091210133545.9D7CD418D0@hg.openjdk.java.net> Changeset: 62926c7f67a3 Author: ysr Date: 2009-12-08 15:12 -0800 URL: http://hg.openjdk.java.net/hsx/hsx16/master/rev/62926c7f67a3 6908208: UseCompressedOops: array_size() returns incorrect size for MAX_INT object array following 6906727 Summary: In array_size() cast to an unsigned to avoid overflow of intermediate value. Reviewed-by: kvn, tonyp, jmasa, jcoomes, coleenp ! src/share/vm/oops/objArrayOop.hpp From manjiri.namjoshi at googlemail.com Thu Dec 10 15:41:13 2009 From: manjiri.namjoshi at googlemail.com (Manjiri Namjoshi) Date: Thu, 10 Dec 2009 17:41:13 -0600 Subject: template interpreter Message-ID: Hello all, Actually, my question is a bit theoretical. I want to know the advantages of template interpreter. Why does the hotspot generate the interpreter at runtime ? Thank You. Sincerely, Manjiri -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/hotspot-dev/attachments/20091210/b6ff1772/attachment.html From Thomas.Rodriguez at Sun.COM Thu Dec 10 15:48:52 2009 From: Thomas.Rodriguez at Sun.COM (Tom Rodriguez) Date: Thu, 10 Dec 2009 15:48:52 -0800 Subject: template interpreter In-Reply-To: References: Message-ID: <109B2826-364A-4521-A6F8-68F18277AE13@sun.com> On Dec 10, 2009, at 3:41 PM, Manjiri Namjoshi wrote: > Hello all, > > Actually, my question is a bit theoretical. I want to know the advantages of template interpreter. > Why does the hotspot generate the interpreter at runtime ? Do you mean as opposed to generating it a build time or as opposed to the C++ interpreter? tom > > Thank You. > > Sincerely, > Manjiri From vladimir.kozlov at sun.com Thu Dec 10 19:13:47 2009 From: vladimir.kozlov at sun.com (vladimir.kozlov at sun.com) Date: Fri, 11 Dec 2009 03:13:47 +0000 Subject: hg: hsx/hsx16/baseline: 6909480: Disable Escape Analysis in jdk 6u18 Message-ID: <20091211031351.A0521419B3@hg.openjdk.java.net> Changeset: 4ebd3f8407eb Author: kvn Date: 2009-12-10 17:04 -0800 URL: http://hg.openjdk.java.net/hsx/hsx16/baseline/rev/4ebd3f8407eb 6909480: Disable Escape Analysis in jdk 6u18 Summary: Disable Escape Analysis in jdk 6u18. Reviewed-by: never, ysr ! src/share/vm/runtime/arguments.cpp From mlists at juma.me.uk Thu Dec 10 22:14:24 2009 From: mlists at juma.me.uk (Ismael Juma) Date: Fri, 11 Dec 2009 06:14:24 +0000 (UTC) Subject: hg: hsx/hsx16/baseline: 6909480: Disable Escape Analysis in jdk 6u18 References: <20091211031351.A0521419B3@hg.openjdk.java.net> Message-ID: Hey Vladimir, writes: > 6909480: Disable Escape Analysis in jdk 6u18 > Summary: Disable Escape Analysis in jdk 6u18. Does this mean that escape analysis will be disabled in 6u18 even if a user explicitly enables it? If so, is it a stability issue? Sorry if this has been discussed already (I looked for a previous discussion, but did not find it). Thanks, Ismael From Vladimir.Kozlov at Sun.COM Thu Dec 10 22:39:32 2009 From: Vladimir.Kozlov at Sun.COM (Vladimir Kozlov) Date: Thu, 10 Dec 2009 22:39:32 -0800 Subject: hg: hsx/hsx16/baseline: 6909480: Disable Escape Analysis in jdk6u18 In-Reply-To: References: <20091211031351.A0521419B3@hg.openjdk.java.net> Message-ID: <4B21E924.9000701@sun.com> Yes, users will not be able to switch it on in jdk6u18. Currently it is still experimental optimization and it could produce incorrect results. Use early access jdk7 if you want to try it. Vladimir On 12/10/09 10:14 PM, Ismael Juma wrote: > Hey Vladimir, > > writes: >> 6909480: Disable Escape Analysis in jdk 6u18 >> Summary: Disable Escape Analysis in jdk 6u18. > > Does this mean that escape analysis will be disabled in 6u18 even if a user > explicitly enables it? If so, is it a stability issue? Sorry if this has been > discussed already (I looked for a previous discussion, but did not find it). > > Thanks, > Ismael > From ben.evans at db.com Thu Dec 10 22:50:35 2009 From: ben.evans at db.com (Ben Evans) Date: Fri, 11 Dec 2009 06:50:35 +0000 Subject: hg: hsx/hsx16/baseline: 6909480: Disable Escape Analysis in jdk6u18 In-Reply-To: <4B21E924.9000701@sun.com> Message-ID: hotspot-dev-bounces at openjdk.java.net wrote on 11/12/2009 06:39:32: > > Yes, users will not be able to switch it on in jdk6u18. > > Currently it is still experimental optimization > and it could produce incorrect results. Can you be more specific, please. All our testing of this feature shows it as good-to-go. Exactly what aspect of it is still troubling? > Use early access jdk7 if you want to try it. Been there, done that. EA shows consistent benefit of at least a few %, and we want to switch it on in production, and can't do that with a non Sun-supported build. Please give us as much detail as you can (contact me offlist if necessary) - we'd really like to know what's caused this decision, and if possible see some code with corresponding PrintAssembly traces where errors could occur. Thanks, Ben -- Ben Evans eFX Algorithmic Trading Deutsche Bank, London Office: +44 (0)20 7541 3953 --- This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and delete this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden. Please refer to http://www.db.com/en/content/eu_disclosures.htm for additional EU corporate and regulatory disclosures. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/hotspot-dev/attachments/20091211/62eaf829/attachment.html From erik.trimble at sun.com Fri Dec 11 07:18:41 2009 From: erik.trimble at sun.com (erik.trimble at sun.com) Date: Fri, 11 Dec 2009 15:18:41 +0000 Subject: hg: hsx/hsx16/master: 6909480: Disable Escape Analysis in jdk 6u18 Message-ID: <20091211151844.CC42B41A75@hg.openjdk.java.net> Changeset: 4ebd3f8407eb Author: kvn Date: 2009-12-10 17:04 -0800 URL: http://hg.openjdk.java.net/hsx/hsx16/master/rev/4ebd3f8407eb 6909480: Disable Escape Analysis in jdk 6u18 Summary: Disable Escape Analysis in jdk 6u18. Reviewed-by: never, ysr ! src/share/vm/runtime/arguments.cpp From opinali at gmail.com Fri Dec 11 07:50:29 2009 From: opinali at gmail.com (Osvaldo Doederlein) Date: Fri, 11 Dec 2009 13:50:29 -0200 Subject: hg: hsx/hsx16/baseline: 6909480: Disable Escape Analysis in jdk6u18 In-Reply-To: References: <4B21E924.9000701@sun.com> Message-ID: I support Ben's request - this wouldn't be the first time that unstable, beta-quality features are backported to production JDKs. I remember the G1 backport to JDK 6u14 - I've tested it, and found it very far from adequate for production use; confirmed by the large number of G1 changes (not only fixes) that followed in further JDK7 builds. Still it was available (jut not enabled by default) in a production JDK, which is good so interested developers like me could test it. (Being available in JDK7 builds is not good enough, it's a new platform release with tons of changes and still potentially much more unstable, and I wouldn't risk using it in production even if I found that its G1 was kickin' for my app... but I could do that with a fresh 6uXX release, btw I have high hopes that 6u18's G1 will be the first I can put in production.) If the idea was not destabilize JDK 6u18 with new EA code from JDK7, then OK let's keep this dangerous code away from the production VM. But it seems everything is already merged into 6u18, so I suppose (I'm not a HotSpot dev) the EA stuff is well isolated and doesn't risk any regressions if not enabled. So the restriction is completely artificial, you're just removing the little red button I must press to enable EA. Why not just leaving it there? If some user is irresponsible enough to enable a VM feature that's documented as experimental, and uses it in production without sufficient testing to assert that its existing bugs don't hit the app, it's the user's fault not Sun's. Unless said feature is SO much buggy that there's no chance that any nontrival app won't be screwed. A+ Osvaldo 2009/12/11 Ben Evans > > hotspot-dev-bounces at openjdk.java.net wrote on 11/12/2009 06:39:32: > > > > > Yes, users will not be able to switch it on in jdk6u18. > > > > Currently it is still experimental optimization > > and it could produce incorrect results. > > Can you be more specific, please. All our testing of this feature shows it > as good-to-go. > > Exactly what aspect of it is still troubling? > > > Use early access jdk7 if you want to try it. > > Been there, done that. > > EA shows consistent benefit of at least a few %, and we want to switch it > on in production, and can't do that with a non Sun-supported build. > > Please give us as much detail as you can (contact me offlist if necessary) > - we'd really like to know what's caused this decision, and if possible see > some code with corresponding PrintAssembly traces where errors could occur. > > Thanks, > > Ben > -- > Ben Evans > eFX Algorithmic Trading > Deutsche Bank, London > Office: +44 (0)20 7541 3953 > > --- > > This e-mail may contain confidential and/or privileged information. If you > are not the intended recipient (or have received this e-mail in error) > please notify the sender immediately and delete this e-mail. Any > unauthorized copying, disclosure or distribution of the material in this > e-mail is strictly forbidden. > > Please refer to http://www.db.com/en/content/eu_disclosures.htm for > additional EU corporate and regulatory disclosures. > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/hotspot-dev/attachments/20091211/cfb4aa4f/attachment.html From mlists at juma.me.uk Fri Dec 11 08:03:49 2009 From: mlists at juma.me.uk (Ismael Juma) Date: Fri, 11 Dec 2009 16:03:49 +0000 (UTC) Subject: hg: hsx/hsx16/baseline: 6909480: Disable Escape Analysis in =?utf-8?b?CWpkazZ1MTg=?= References: <4B21E924.9000701@sun.com> Message-ID: Osvaldo Doederlein writes: > I support Ben's request - this wouldn't be the first time that unstable, > beta-quality features are backported to production JDKs. I remember the G1 > backport to JDK 6u14 A better example is escape analysis in JDK6u14. I've seen many fixes for it since then, so I would think it's not worse than it was then. However, it's possible that this is causing too much support overhead and that is the reason to disable it. Not ideal, but understandable. Best, Ismael From jon.masamitsu at sun.com Fri Dec 11 11:01:30 2009 From: jon.masamitsu at sun.com (jon.masamitsu at sun.com) Date: Fri, 11 Dec 2009 19:01:30 +0000 Subject: hg: jdk7/hotspot/hotspot: 13 new changesets Message-ID: <20091211190212.5B34B41AB6@hg.openjdk.java.net> Changeset: 5f932a151fd4 Author: johnc Date: 2009-11-06 11:10 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/5f932a151fd4 6895788: G1: SATB and update buffer allocation code allocates too much space Summary: The type in the NEW_C_HEAP_ARRRY and FREE_C_HEAP_ARRAY calls in the buffer allocation code was changed from void* to char as the size argument had already been mulitipled by the byte size of an object pointer. Reviewed-by: ysr, tonyp ! src/share/vm/gc_implementation/g1/ptrQueue.cpp Changeset: 0e2d7ae2bc67 Author: jmasa Date: 2009-11-10 11:32 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/0e2d7ae2bc67 6898857: [Regression] -XX:NewRatio with -XX:+UseConcMarkSweepGC causes fatal error Summary: Use CollectorPolicy information instead of MaxNewSize Reviewed-by: ysr, jcoomes ! src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp Changeset: 89f1b9ae8991 Author: ysr Date: 2009-11-13 11:55 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/89f1b9ae8991 6898948: G1: forensic instrumentation for out-of-bounds recent_avg_pause_time_ratio() Summary: Added instrumentation and (temporary) assert in non-product mode; clipped the value when found out-of-bounds in product mode. Fix of original issue will follow collection of data from this instrumentation. Reviewed-by: jcoomes, tonyp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/utilities/numberSeq.cpp ! src/share/vm/utilities/numberSeq.hpp Changeset: 23b9a8d315fc Author: ysr Date: 2009-11-19 10:19 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/23b9a8d315fc 6902701: G1: protect debugging code related to 6898948 with a debug flag Summary: Protected stats dump with a new develop flag; other than for the dump, reconciled product and non-product behaviour in face of the error. Reviewed-by: tonyp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp Changeset: 3fc996d4edd2 Author: ysr Date: 2009-11-19 13:43 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/3fc996d4edd2 6902303: G1: ScavengeALot should cause an incremental, rather than a full, collection Summary: ScavengeALot now causes an incremental (but possibly partially young, in the G1 sense) collection. Some such collections may be abandoned on account of MMU specs. Band-aided a native leak associated with abandoned pauses, as well as an MMU tracker overflow related to frequent scavenge events in the face of a large MMU denominator interval; the latter is protected by a product flag that defaults to false. Reviewed-by: tonyp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1MMUTracker.cpp ! src/share/vm/gc_implementation/g1/g1MMUTracker.hpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp ! src/share/vm/gc_implementation/g1/vm_operations_g1.cpp ! src/share/vm/gc_implementation/g1/vm_operations_g1.hpp ! src/share/vm/memory/sharedHeap.hpp Changeset: db0d5eba9d20 Author: tonyp Date: 2009-11-20 14:47 -0500 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/db0d5eba9d20 6815790: G1: Missing MemoryPoolMXBeans with -XX:+UseG1GC Summary: It introduces the necessary memory pools for G1. Reviewed-by: mchung, ysr ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/includeDB_gc_g1 + src/share/vm/services/g1MemoryPool.cpp + src/share/vm/services/g1MemoryPool.hpp ! src/share/vm/services/memoryManager.cpp ! src/share/vm/services/memoryManager.hpp ! src/share/vm/services/memoryService.cpp ! src/share/vm/services/memoryService.hpp Changeset: fa357420e7d2 Author: johnc Date: 2009-11-24 15:19 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/fa357420e7d2 6899058: G1: Internal error in ptrQueue.cpp:201 in nightly tests Summary: Fixes a race on the dirty card queue completed buffer list between worker thread(s) performing a flush of a deferred store barrier (enqueueing a newly completed buffer) and worker thread(s) in the RSet updating code claiming completed buffers. Removed the routine that removes elements from the completed update buffer queue using a CAS. Reviewed-by: ysr, tonyp ! src/share/vm/gc_implementation/g1/dirtyCardQueue.cpp ! src/share/vm/gc_implementation/g1/dirtyCardQueue.hpp Changeset: 6aa7255741f3 Author: ysr Date: 2009-12-03 15:01 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/6aa7255741f3 6906727: UseCompressedOops: some card-marking fixes related to object arrays Summary: Introduced a new write_ref_array(HeapWords* start, size_t count) method that does the requisite MemRegion range calculation so (some of the) clients of the erstwhile write_ref_array(MemRegion mr) do not need to worry. This removed all external uses of array_size(), which was also simplified and made private. Asserts were added to catch other possible issues. Further, less essential, fixes stemming from this investigation are deferred to CR 6904516 (to follow shortly in hs17). Reviewed-by: kvn, coleenp, jmasa ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/includeDB_core ! src/share/vm/memory/barrierSet.cpp ! src/share/vm/memory/barrierSet.hpp ! src/share/vm/memory/barrierSet.inline.hpp ! src/share/vm/memory/cardTableModRefBS.cpp ! src/share/vm/oops/objArrayKlass.cpp ! src/share/vm/oops/objArrayOop.hpp Changeset: ed52bcc32739 Author: tonyp Date: 2009-12-04 07:44 -0500 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/ed52bcc32739 6880903: G1: G1 reports incorrect Runtime.maxMemory() Summary: G1 reports committed memory instead of reserved memory from the Runtime.maxMemory() method Reviewed-by: ysr, jmasa ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp ! src/share/vm/services/g1MemoryPool.cpp ! src/share/vm/services/g1MemoryPool.hpp Changeset: afc30fccf324 Author: tonyp Date: 2009-12-04 07:44 -0500 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/afc30fccf324 6906565: G1: deal with compilation warning in g1MemoryPool.hpp Summary: size_t max_size() hides size_t max_size() const. Reviewed-by: jmasa, ysr ! src/share/vm/services/g1MemoryPool.cpp ! src/share/vm/services/g1MemoryPool.hpp Changeset: 9118860519b6 Author: tonyp Date: 2009-12-07 14:22 -0500 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/9118860519b6 6904967: G1: some CollectionUsageThreshold tests fail Summary: ensure that max and committed are non-zero (currently: at least as large as the region size). Reviewed-by: iveresov, mchung ! src/share/vm/services/g1MemoryPool.cpp Changeset: 7bfd295ec074 Author: ysr Date: 2009-12-08 15:12 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/7bfd295ec074 6908208: UseCompressedOops: array_size() returns incorrect size for MAX_INT object array following 6906727 Summary: In array_size() cast to an unsigned to avoid overflow of intermediate value. Reviewed-by: kvn, tonyp, jmasa, jcoomes, coleenp ! src/share/vm/oops/objArrayOop.hpp Changeset: 84a2da7f454c Author: jmasa Date: 2009-12-11 08:39 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/84a2da7f454c Merge ! src/share/vm/classfile/javaClasses.cpp ! src/share/vm/includeDB_core From ben.evans at db.com Sat Dec 12 04:20:48 2009 From: ben.evans at db.com (Ben Evans) Date: Sat, 12 Dec 2009 12:20:48 +0000 Subject: hg: hsx/hsx16/baseline: 6909480: Disable Escape Analysis in jdk6u18 In-Reply-To: Message-ID: Osvaldo Doederlein wrote on 11/12/2009 15:50:29: > I support Ben's request - this wouldn't be the first time that > unstable, beta-quality features are backported to production JDKs. I > remember the G1 backport to JDK 6u14 - I've tested it, and found it > very far from adequate for production use; confirmed by the large > number of G1 changes (not only fixes) that followed in further JDK7 > builds. Still it was available (jut not enabled by default) in a > production JDK, which is good so interested developers like me could > test it. Agreed, but I have to say that I do understand the point of view that things should be released when ready and not before. I also want to take this opportunity to thank the hotspot engineers - the trend of continual incremental performance improvements in hotspot releases has certainly not gone unnoticed here, and is greatly appreciated. > btw I have high hopes that 6u18's G1 will be > the first I can put in production.) A word of caution: I was still able to semi-reliably trigger segfaults in a 6u18 beta with G1 during my last test cycle of it a month or so ago. When 6u18 goes gold I'll rerun the tests and see if they still persist (and let the group know the results). Thanks, Ben -- Ben Evans eFX Algorithmic Trading Deutsche Bank, London Office: +44 (0)20 7541 3953 --- This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and delete this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden. Please refer to http://www.db.com/en/content/eu_disclosures.htm for additional EU corporate and regulatory disclosures. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mail.openjdk.java.net/pipermail/hotspot-dev/attachments/20091212/61159613/attachment.html From gnu_andrew at member.fsf.org Sun Dec 13 05:46:15 2009 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Sun, 13 Dec 2009 13:46:15 +0000 Subject: hg: hsx/hsx16/baseline: 6909480: Disable Escape Analysis in jdk6u18 In-Reply-To: <4B21E924.9000701@sun.com> References: <20091211031351.A0521419B3@hg.openjdk.java.net> <4B21E924.9000701@sun.com> Message-ID: <17c6771e0912130546u7759e2c0k4a4485074524bb83@mail.gmail.com> 2009/12/11 Vladimir Kozlov : > Yes, users will not be able to switch it on in jdk6u18. > > Currently it is still experimental optimization > and it could produce incorrect results. > > Use early access jdk7 if you want to try it. > > Vladimir > > On 12/10/09 10:14 PM, Ismael Juma wrote: >> >> Hey Vladimir, >> >> ? ?writes: >>> >>> 6909480: Disable Escape Analysis in jdk 6u18 >>> Summary: Disable Escape Analysis in jdk 6u18. >> >> Does this mean that escape analysis will be disabled in 6u18 even if a >> user >> explicitly enables it? If so, is it a stability issue? Sorry if this has >> been >> discussed already (I looked for a previous discussion, but did not find >> it). >> >> Thanks, >> Ismael >> > I don't think this is the appropriate place for such a patch. By all means, disable escape analysis in Sun's builds but I don't think this is appropriate for being pulled into OpenJDK6 as well. It obviously shouldn't be the default, but if users want to turn on a feature that's there in the codebase, they should be able to. -- 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 mcneill at streambase.com Mon Dec 14 13:54:34 2009 From: mcneill at streambase.com (Keith McNeill) Date: Mon, 14 Dec 2009 16:54:34 -0500 Subject: PermGen problem jmap/jhat leads to dead end Message-ID: <4B26B41A.9060606@streambase.com> We're having a perm gen problem (maybe also code cache). Our product generates bytecodes and then loads and optionally unloads them. Running stability tests where we repeatably load & unload our generated applications we have encountered problems running out of perm gen space. A few years ago we had similar problems but by using jmap/jhat we were able to debug and fix this. This time using jmap/jhat to analyze the problem has lead to a dead end. In particular we see: 1) There are no instances left of the classes that we load/unload 2) The class objects of the classes that we load/unload hang around, they don't seem to get GC'ed 3) The ClassLoader of the loaded classes is hanging around. Doing a "Reference Chains from Rootset" in jhat results in 0 chains. Unless jhat is lying then the classes/classloader should be able to be GC'ed. Right? 4) Using jmap -permstat I see the classloaders in question are marked as 'dead'. This means that it should be able to be GC'ed 5) Tried Current GC, default GC, G1 GC and basically get the same errors. The G1 GC might error out with code cache problems instead. 6) The IBM JVM in the same scenario seems to be happy 7) If we load the classes (Class.forName()) but don't instantiate them, PermGen seems happier but we then run out of Code Cache. I'm not sure if the problems are related. The tests are run on linux & linux64. We are using: -XX:MaxPermSize=128m -Xms800m -Xmx1500m -XX:+CMSClassUnloadingEnabled and appropriate JVM args for the different GC's Given #3,4 & #6 above I'm thinking that it maybe a hotspot problem. What should I try next to track this problem down? Thanks, Keith McNeill From Y.S.Ramakrishna at Sun.COM Mon Dec 14 13:58:33 2009 From: Y.S.Ramakrishna at Sun.COM (Y. Srinivas Ramakrishna) Date: Mon, 14 Dec 2009 13:58:33 -0800 Subject: PermGen problem jmap/jhat leads to dead end In-Reply-To: <4B26B41A.9060606@streambase.com> References: <4B26B41A.9060606@streambase.com> Message-ID: <4B26B509.3030501@Sun.COM> What's the version of the HotSpot JVM you are running with? (See 4957990.) -- ramki On 12/14/09 13:54, Keith McNeill wrote: > > We're having a perm gen problem (maybe also code cache). Our product > generates bytecodes and then loads and optionally unloads them. Running > stability tests where we repeatably load & unload our generated > applications we have encountered problems running out of perm gen > space. A few years ago we had similar problems but by using jmap/jhat > we were able to debug and fix this. > > This time using jmap/jhat to analyze the problem has lead to a dead end. > > In particular we see: > > 1) There are no instances left of the classes that we load/unload > 2) The class objects of the classes that we load/unload hang around, > they don't seem to get GC'ed > 3) The ClassLoader of the loaded classes is hanging around. Doing a > "Reference Chains from Rootset" in jhat results in 0 chains. Unless > jhat is lying then the classes/classloader should be able to be GC'ed. > Right? > 4) Using jmap -permstat I see the classloaders in question are marked as > 'dead'. This means that it should be able to be GC'ed > 5) Tried Current GC, default GC, G1 GC and basically get the same > errors. The G1 GC might error out with code cache problems instead. > 6) The IBM JVM in the same scenario seems to be happy > 7) If we load the classes (Class.forName()) but don't instantiate them, > PermGen seems happier but we then run out of Code Cache. I'm not sure > if the problems are related. > > The tests are run on linux & linux64. We are using: > -XX:MaxPermSize=128m -Xms800m -Xmx1500m -XX:+CMSClassUnloadingEnabled > and appropriate JVM args for the different GC's > > Given #3,4 & #6 above I'm thinking that it maybe a hotspot problem. > What should I try next to track this problem down? > > Thanks, > > Keith McNeill > > > > > From mcneill at streambase.com Mon Dec 14 14:01:15 2009 From: mcneill at streambase.com (Keith McNeill) Date: Mon, 14 Dec 2009 17:01:15 -0500 Subject: PermGen problem jmap/jhat leads to dead end In-Reply-To: <4B26B509.3030501@Sun.COM> References: <4B26B41A.9060606@streambase.com> <4B26B509.3030501@Sun.COM> Message-ID: <4B26B5AB.4020901@streambase.com> java version "1.6.0_16" Java(TM) SE Runtime Environment (build 1.6.0_16-b01) Java HotSpot(TM) Server VM (build 14.2-b01, mixed mode) Y. Srinivas Ramakrishna wrote: > What's the version of the HotSpot JVM you are running with? (See > 4957990.) > > -- ramki > > On 12/14/09 13:54, Keith McNeill wrote: >> >> We're having a perm gen problem (maybe also code cache). Our product >> generates bytecodes and then loads and optionally unloads them. >> Running stability tests where we repeatably load & unload our >> generated applications we have encountered problems running out of >> perm gen space. A few years ago we had similar problems but by using >> jmap/jhat we were able to debug and fix this. >> >> This time using jmap/jhat to analyze the problem has lead to a dead end. >> >> In particular we see: >> >> 1) There are no instances left of the classes that we load/unload >> 2) The class objects of the classes that we load/unload hang around, >> they don't seem to get GC'ed >> 3) The ClassLoader of the loaded classes is hanging around. Doing a >> "Reference Chains from Rootset" in jhat results in 0 chains. Unless >> jhat is lying then the classes/classloader should be able to be >> GC'ed. Right? >> 4) Using jmap -permstat I see the classloaders in question are marked >> as 'dead'. This means that it should be able to be GC'ed >> 5) Tried Current GC, default GC, G1 GC and basically get the same >> errors. The G1 GC might error out with code cache problems instead. >> 6) The IBM JVM in the same scenario seems to be happy >> 7) If we load the classes (Class.forName()) but don't instantiate >> them, PermGen seems happier but we then run out of Code Cache. I'm >> not sure if the problems are related. >> >> The tests are run on linux & linux64. We are using: >> -XX:MaxPermSize=128m -Xms800m -Xmx1500m -XX:+CMSClassUnloadingEnabled >> and appropriate JVM args for the different GC's >> >> Given #3,4 & #6 above I'm thinking that it maybe a hotspot problem. >> What should I try next to track this problem down? >> >> Thanks, >> >> Keith McNeill >> >> >> >> >> > From Y.S.Ramakrishna at Sun.COM Mon Dec 14 14:04:24 2009 From: Y.S.Ramakrishna at Sun.COM (Y. Srinivas Ramakrishna) Date: Mon, 14 Dec 2009 14:04:24 -0800 Subject: PermGen problem jmap/jhat leads to dead end In-Reply-To: <4B26B5AB.4020901@streambase.com> References: <4B26B41A.9060606@streambase.com> <4B26B509.3030501@Sun.COM> <4B26B5AB.4020901@streambase.com> Message-ID: <4B26B668.3060007@Sun.COM> Could you try the latest hs17 from OpenJDK 7 and see if 4957990 fixes your problem? -- ramki On 12/14/09 14:01, Keith McNeill wrote: > > java version "1.6.0_16" > Java(TM) SE Runtime Environment (build 1.6.0_16-b01) > Java HotSpot(TM) Server VM (build 14.2-b01, mixed mode) > > > Y. Srinivas Ramakrishna wrote: >> What's the version of the HotSpot JVM you are running with? (See >> 4957990.) >> >> -- ramki >> >> On 12/14/09 13:54, Keith McNeill wrote: >>> >>> We're having a perm gen problem (maybe also code cache). Our product >>> generates bytecodes and then loads and optionally unloads them. >>> Running stability tests where we repeatably load & unload our >>> generated applications we have encountered problems running out of >>> perm gen space. A few years ago we had similar problems but by using >>> jmap/jhat we were able to debug and fix this. >>> >>> This time using jmap/jhat to analyze the problem has lead to a dead end. >>> >>> In particular we see: >>> >>> 1) There are no instances left of the classes that we load/unload >>> 2) The class objects of the classes that we load/unload hang around, >>> they don't seem to get GC'ed >>> 3) The ClassLoader of the loaded classes is hanging around. Doing a >>> "Reference Chains from Rootset" in jhat results in 0 chains. Unless >>> jhat is lying then the classes/classloader should be able to be >>> GC'ed. Right? >>> 4) Using jmap -permstat I see the classloaders in question are marked >>> as 'dead'. This means that it should be able to be GC'ed >>> 5) Tried Current GC, default GC, G1 GC and basically get the same >>> errors. The G1 GC might error out with code cache problems instead. >>> 6) The IBM JVM in the same scenario seems to be happy >>> 7) If we load the classes (Class.forName()) but don't instantiate >>> them, PermGen seems happier but we then run out of Code Cache. I'm >>> not sure if the problems are related. >>> >>> The tests are run on linux & linux64. We are using: >>> -XX:MaxPermSize=128m -Xms800m -Xmx1500m -XX:+CMSClassUnloadingEnabled >>> and appropriate JVM args for the different GC's >>> >>> Given #3,4 & #6 above I'm thinking that it maybe a hotspot problem. >>> What should I try next to track this problem down? >>> >>> Thanks, >>> >>> Keith McNeill >>> >>> >>> >>> >>> >> From mcneill at streambase.com Mon Dec 14 14:51:11 2009 From: mcneill at streambase.com (Keith McNeill) Date: Mon, 14 Dec 2009 17:51:11 -0500 Subject: PermGen problem jmap/jhat leads to dead end Message-ID: <4B26C15F.9080200@streambase.com> Yep, in test only. So using JDK 7 the Perm Gen problem seems to be fixed. PermGen went up & down with loading and unloading our our classes. Is that fix going to be back ported to 1.6? But, I'm now getting code cache problems (I assume). After a few rounds when I try to reload my test class I get OutOfMemoryErrors. Using jconsole: PermGen is fine, heap is fine, but CodeCache appears to be full: Used: 49,060 kbytes Committed: 49,152 kbytes Max: 49,152 kbytes Keith Y. Srinivas Ramakrishna wrote: > On 12/14/09 14:21, Y. Srinivas Ramakrishna wrote: > ... >> Keith, the simplest thing for you to do (if on Solaris >> or Linux) might be to simply pick up the relevant libjvm.so >> from JDK 7 and drop it into your 6uXX installation >> and run with it. > > Just so there is no misunderstanding; i meant that only as a test. > Not for production loads!! > > -- ramki From Thomas.Rodriguez at Sun.COM Mon Dec 14 16:10:14 2009 From: Thomas.Rodriguez at Sun.COM (Tom Rodriguez) Date: Mon, 14 Dec 2009 16:10:14 -0800 Subject: PermGen problem jmap/jhat leads to dead end In-Reply-To: <4B26C15F.9080200@streambase.com> References: <4B26C15F.9080200@streambase.com> Message-ID: <015594AC-1A43-4BBD-85B1-2158275712C0@sun.com> Could you get the hotspot.log from a run with -XX:+UnlockDiagnosticVMOptions -XX:+LogCompilation and send it to me? It's likely to be big but it will include information about what's compiled and what's still in the code cache which might explain what's taking up all the space. If you increase the size of the code cache using -XX:ReservedCodeCacheSize=128m do you still run out of space? I'm wondering if it's a problem with a large steady state size or if it's really a leak of some sort. I guess it's possible that's there something we missed in the fix for 4957990 which is causing code to be kept around. tom On Dec 14, 2009, at 2:51 PM, Keith McNeill wrote: > > Yep, in test only. > > So using JDK 7 the Perm Gen problem seems to be fixed. PermGen went up & down with loading and unloading our our classes. Is that fix going to be back ported to 1.6? > > But, I'm now getting code cache problems (I assume). After a few rounds when I try to reload my test class I get OutOfMemoryErrors. Using jconsole: PermGen is fine, heap is fine, but CodeCache appears to be full: > > Used: 49,060 kbytes > Committed: 49,152 kbytes > Max: 49,152 kbytes > > Keith > > > Y. Srinivas Ramakrishna wrote: >> On 12/14/09 14:21, Y. Srinivas Ramakrishna wrote: >> ... >>> Keith, the simplest thing for you to do (if on Solaris >>> or Linux) might be to simply pick up the relevant libjvm.so >>> from JDK 7 and drop it into your 6uXX installation >>> and run with it. >> >> Just so there is no misunderstanding; i meant that only as a test. >> Not for production loads!! >> >> -- ramki > > From igor.veresov at sun.com Tue Dec 15 20:24:57 2009 From: igor.veresov at sun.com (igor.veresov at sun.com) Date: Wed, 16 Dec 2009 04:24:57 +0000 Subject: hg: jdk7/hotspot/hotspot: 4 new changesets Message-ID: <20091216042512.2B03A42176@hg.openjdk.java.net> Changeset: c5d3d979ae27 Author: never Date: 2009-12-08 16:27 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/c5d3d979ae27 6908167: jbb2005, OptimizeStringConcat causes assert in EA Reviewed-by: kvn ! src/share/vm/opto/graphKit.cpp Changeset: f96a1a986f7b Author: kvn Date: 2009-12-09 16:40 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/f96a1a986f7b 6895383: JCK test throws NPE for method compiled with Escape Analysis Summary: Add missing checks for MemBar nodes in EA. Reviewed-by: never ! src/share/vm/opto/compile.cpp ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/escape.hpp ! src/share/vm/opto/lcm.cpp ! src/share/vm/opto/macro.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/opto/memnode.hpp ! src/share/vm/opto/node.hpp ! src/share/vm/opto/parse3.cpp + test/compiler/6895383/Test.java Changeset: 7fee0a6cc6d4 Author: kvn Date: 2009-12-09 19:50 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/7fee0a6cc6d4 6896727: nsk/logging/LoggingPermission/LoggingPermission/logperm002 fails with G1, EscapeAnalisys Summary: Move instance store's memory users to corresponding memory slices when updating its memory edge. Reviewed-by: never ! src/share/vm/opto/escape.cpp ! src/share/vm/opto/escape.hpp + test/compiler/6896727/Test.java Changeset: 6dc5471e0f66 Author: iveresov Date: 2009-12-15 17:19 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/6dc5471e0f66 Merge From jon.masamitsu at sun.com Thu Dec 17 16:54:07 2009 From: jon.masamitsu at sun.com (jon.masamitsu at sun.com) Date: Fri, 18 Dec 2009 00:54:07 +0000 Subject: hg: jdk7/hotspot/hotspot: 3 new changesets Message-ID: <20091218005417.7348542465@hg.openjdk.java.net> Changeset: 9dc2adf2cbe0 Author: johnc Date: 2009-12-09 23:51 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/9dc2adf2cbe0 6908215: G1: SEGV with G1PolicyVerbose=2 debug flag Summary: Change CollectionSetChooser::printSortedHeapRegions to handle null entries in _markedRegions growable array. Reviewed-by: jmasa, tonyp, iveresov ! src/share/vm/gc_implementation/g1/collectionSetChooser.cpp Changeset: 27f9477e879b Author: jmasa Date: 2009-12-11 09:30 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/27f9477e879b Merge Changeset: cf9a9a50e763 Author: jmasa Date: 2009-12-17 07:02 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/cf9a9a50e763 Merge From gbenson at redhat.com Fri Dec 18 00:38:46 2009 From: gbenson at redhat.com (Gary Benson) Date: Fri, 18 Dec 2009 08:38:46 +0000 Subject: Review Request: 6909153: Fix broken options on Zero In-Reply-To: <1260440684.23806.142.camel@macbook> References: <20091209163039.GD3409@redhat.com> <1260440684.23806.142.camel@macbook> Message-ID: <20091218083846.GA3317@redhat.com> Hi, Christian Thalinger wrote: > On Wed, 2009-12-09 at 16:30 +0000, Gary Benson wrote: > > I've been doing a mini-audit of Zero to ensure it still works with > > non-standard options. This webrev: > > > > http://cr.openjdk.java.net/~gbenson/zero-options-fixes/ > > > > fixes the following issues: > > > > 1. HotSpot would segfault with -XX:+CITime if the VM is built > > with no compilers. The patch fixes this. > > > > 2. The C++ interpreter doesn't support -XX:+ProfileInterpreter > > and -XX:+UseCompressedOops, and Zero doesn't support > > -XX:+TaggedStackInterpreter. The patch disables these > > options in these configurations. > > Changes look good to me. > > > I haven't filed a bug for this, so it has no bug id yet. > > The CR is: > > 6909153: Fix broken options on Zero Would it be possible for someone to push this for me? Cheers, Gary -- http://gbenson.net/ From gbenson at redhat.com Fri Dec 18 00:40:49 2009 From: gbenson at redhat.com (Gary Benson) Date: Fri, 18 Dec 2009 08:40:49 +0000 Subject: Review Request: 6908267: Zero fails to unlock synchronized native methods on exception In-Reply-To: <20091208145811.GC3422@redhat.com> References: <20091208145811.GC3422@redhat.com> Message-ID: <20091218084049.GB3317@redhat.com> Hi all, Did anybody have any objections to this? If not, would it be possible for someone to push it for me? Cheers, Gary Gary Benson wrote: > Hi all, > > If a synchronized native method throws an exception, Zero does not > unlock it. This leaves the receiver/mirror locked, with a stale > monitor, which can cause the VM will crash at some unspecified time > in the future. This webrev fixes it. > > http://cr.openjdk.java.net/~gbenson/zero-fix-6908267/ > > Cheers, > Gary > > -- > http://gbenson.net/ From gbenson at redhat.com Fri Dec 18 00:42:01 2009 From: gbenson at redhat.com (Gary Benson) Date: Fri, 18 Dec 2009 08:42:01 +0000 Subject: Review Request: Make -Xprintflags always available In-Reply-To: <20091209171339.GF3409@redhat.com> References: <20091209171339.GF3409@redhat.com> Message-ID: <20091218084201.GC3317@redhat.com> Hi, Did anyone have any thoughts on this? It would be really helpful for IcedTea if OpenJDK did this generally. Cheers, Gary Gary Benson wrote: > Hi all, > > I've been working on a script to test HotSpot with non-standard > options. The idea is to start the VM with -XX option and check > it doesn't crash or anything. > > One thing that's proving problematic is getting a list of all > the options. We want to test product builds, but -Xprintflags > is only available on debug builds. > > Would it be possible to have -Xprintflags always available? > Something like this: > > http://cr.openjdk.java.net/~gbenson/printflags-product/ > > Cheers, > Gary > > -- > http://gbenson.net/ From dennisbyrne at apache.org Fri Dec 18 07:17:11 2009 From: dennisbyrne at apache.org (Dennis Byrne) Date: Fri, 18 Dec 2009 09:17:11 -0600 Subject: Trouble with hsdis on Itanium Message-ID: <446564320912180717r36a49dd2u47b9d6938b0a79be@mail.gmail.com> After compiling hsdis-ia64.so and running jdk1.6.0_17 with " -server -XX:+UnlockDiagnosticVMOptions -XX:PrintAssemblyOptions=hsdis-print-bytes" I am getting this error. Any help would be appreciated. Does "please port hsdis to this platform" mean I am SOL? Has anyone done this before? CompilerOracle: print WriterReader.write Compiled (c2) 1 nmethod WriterReader::write (10 bytes) total in heap [0x2000000001de6b50,0x2000000001de6db0] = 608 relocation [0x2000000001de6c88,0x2000000001de6c98] = 16 main code [0x2000000001de6ca0,0x2000000001de6d40] = 160 stub code [0x2000000001de6d40,0x2000000001de6d80] = 64 scopes data [0x2000000001de6d80,0x2000000001de6d88] = 8 scopes pcs [0x2000000001de6d88,0x2000000001de6da0] = 24 dependencies [0x2000000001de6da0,0x2000000001de6da8] = 8 oops [0x2000000001de6da8,0x2000000001de6db0] = 8 Loaded disassembler from hsdis-ia64.so Decoding compiled method 0x2000000001de6b50: Code: hsdis: bad native mach=architecture not set in Makefile!; please port hsdis to this platform hsdis output options: mach= select disassembly mode help print this message [Disassembling for mach='unknown'] OopMapSet contains 0 OopMaps -- Dennis Byrne From john.coomes at sun.com Fri Dec 18 11:32:30 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 18 Dec 2009 19:32:30 +0000 Subject: hg: jdk7/hotspot: 6 new changesets Message-ID: <20091218193230.A08FF425A9@hg.openjdk.java.net> Changeset: 382219a27386 Author: ohair Date: 2009-11-18 16:41 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/rev/382219a27386 6727046: Add message when docs are skipped in control build 6864011: typo? in top level Makefile: DAYE_STAMP Reviewed-by: jjg ! Makefile ! make/Defs-internal.gmk ! make/jdk-rules.gmk ! make/sanity-rules.gmk Changeset: 08f13b9af1b2 Author: tbell Date: 2009-11-23 19:55 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/rev/08f13b9af1b2 Merge Changeset: 80161484b6b1 Author: tbell Date: 2009-12-08 09:14 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/rev/80161484b6b1 Merge Changeset: ea77a8b9b028 Author: ohair Date: 2009-12-16 12:51 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/rev/ea77a8b9b028 6909462: Fix nbproject/private references in .hgignore Summary: See bugzilla issue 100097 Reviewed-by: tbell Contributed-by: Jesse Glick ! .hgignore Changeset: ab4ae8f45146 Author: mikejwre Date: 2009-12-16 23:38 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/rev/ab4ae8f45146 Merge Changeset: 20aeeb517139 Author: mikejwre Date: 2009-12-17 14:10 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/rev/20aeeb517139 Added tag jdk7-b78 for changeset ab4ae8f45146 ! .hgtags From john.coomes at sun.com Fri Dec 18 11:32:34 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 18 Dec 2009 19:32:34 +0000 Subject: hg: jdk7/hotspot/corba: 2 new changesets Message-ID: <20091218193237.7A57E425AA@hg.openjdk.java.net> Changeset: a7f7276b48cd Author: ohair Date: 2009-12-16 12:51 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/corba/rev/a7f7276b48cd 6909462: Fix nbproject/private references in .hgignore Summary: See bugzilla issue 100097 Reviewed-by: tbell Contributed-by: Jesse Glick ! .hgignore Changeset: ec0421b5703b Author: mikejwre Date: 2009-12-17 14:10 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/corba/rev/ec0421b5703b Added tag jdk7-b78 for changeset a7f7276b48cd ! .hgtags From john.coomes at sun.com Fri Dec 18 11:35:59 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 18 Dec 2009 19:35:59 +0000 Subject: hg: jdk7/hotspot/jaxp: 2 new changesets Message-ID: <20091218193559.6CAFE425AC@hg.openjdk.java.net> Changeset: 7a12d3789e1b Author: ohair Date: 2009-12-16 12:52 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jaxp/rev/7a12d3789e1b 6909462: Fix nbproject/private references in .hgignore Summary: See bugzilla issue 100097 Reviewed-by: tbell Contributed-by: Jesse Glick ! .hgignore Changeset: b1005c504358 Author: mikejwre Date: 2009-12-17 14:10 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jaxp/rev/b1005c504358 Added tag jdk7-b78 for changeset 7a12d3789e1b ! .hgtags From john.coomes at sun.com Fri Dec 18 11:36:03 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 18 Dec 2009 19:36:03 +0000 Subject: hg: jdk7/hotspot/jaxws: 2 new changesets Message-ID: <20091218193604.1C569425AD@hg.openjdk.java.net> Changeset: fc1c72d1dfbb Author: ohair Date: 2009-12-16 12:52 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jaxws/rev/fc1c72d1dfbb 6909462: Fix nbproject/private references in .hgignore Summary: See bugzilla issue 100097 Reviewed-by: tbell Contributed-by: Jesse Glick ! .hgignore Changeset: c08894f5b6e5 Author: mikejwre Date: 2009-12-17 14:10 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jaxws/rev/c08894f5b6e5 Added tag jdk7-b78 for changeset fc1c72d1dfbb ! .hgtags From john.coomes at sun.com Fri Dec 18 11:39:57 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 18 Dec 2009 19:39:57 +0000 Subject: hg: jdk7/hotspot/jdk: 82 new changesets Message-ID: <20091218195746.118E3425B4@hg.openjdk.java.net> Changeset: 6fac6e5fdf0c Author: mullan Date: 2009-11-18 12:34 -0500 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/6fac6e5fdf0c 6894461: OCSP Checker should not wrap all Exception as "Unable to send OCSP request."(introduced by #6885667) Reviewed-by: vinnie, xuelei ! src/share/classes/sun/security/provider/certpath/OCSPChecker.java Changeset: f329c9e0d39f Author: ohair Date: 2009-11-18 11:10 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/f329c9e0d39f 6902323: Fix testcase sun/tools/native2ascii/NativeErrors.java 6902325: Fix testcase sun/tools/jhat/HatHeapDump1Test.java Reviewed-by: tbell, dcubed ! test/ProblemList.txt ! test/sun/tools/jhat/HatRun.java ! test/sun/tools/native2ascii/NativeErrors.java - test/sun/tools/native2ascii/test2 Changeset: ce94cd61b33e Author: ohair Date: 2009-11-18 11:12 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/ce94cd61b33e 6892742: Improve root set used by jhat Reviewed-by: tbell, dcubed Contributed-by: Keith Randall ! src/share/classes/com/sun/tools/hat/internal/model/JavaStatic.java Changeset: 041b482fdbe2 Author: ohair Date: 2009-11-18 11:13 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/041b482fdbe2 Merge Changeset: 5ac84cf85a24 Author: ohair Date: 2009-11-18 11:15 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/5ac84cf85a24 Merge - test/sun/tools/native2ascii/test2 Changeset: c8fb7e11daf8 Author: mchung Date: 2009-11-18 22:29 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/c8fb7e11daf8 6902678: com.sun.tracing.ProviderFactory.createProvider doesn't throw IllegalArgumentException Summary: doPrivileged for calls that have permission check instead of catching all exceptions Reviewed-by: kamg, dcubed ! src/share/classes/com/sun/tracing/ProviderFactory.java ! src/share/classes/sun/tracing/MultiplexProviderFactory.java ! src/share/classes/sun/tracing/NullProviderFactory.java ! src/share/classes/sun/tracing/PrintStreamProviderFactory.java ! src/share/classes/sun/tracing/ProviderSkeleton.java ! src/share/classes/sun/tracing/dtrace/DTraceProviderFactory.java + test/com/sun/tracing/BasicWithSecurityMgr.java Changeset: ca026eb5cf3c Author: jccollet Date: 2009-11-20 14:50 +0100 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/ca026eb5cf3c 6901170: HttpCookie parsing of version and max-age mis-handled Summary: Accept single quotes in cookies and better exception handling in CookieManager Reviewed-by: chegar ! src/share/classes/java/net/CookieManager.java ! src/share/classes/java/net/HttpCookie.java ! test/java/net/CookieHandler/TestHttpCookie.java Changeset: 92198fb7e908 Author: dcubed Date: 2009-11-23 10:29 -0700 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/92198fb7e908 6903102: 3/3 fixes in nightly testing version of ShellScaffold.sh need to be committed Summary: Merge Jim's ShellScaffold.sh fixes with Tim's ShellScaffold.sh fixes. Reviewed-by: tbell ! test/com/sun/jdi/ShellScaffold.sh Changeset: 5d2e63dad298 Author: mullan Date: 2009-11-23 12:36 -0500 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/5d2e63dad298 6899503: Security code issue using Verisign root certificate Summary: Add support for reordering out-of-order certificate chains Reviewed-by: vinnie, xuelei ! src/share/classes/sun/security/validator/PKIXValidator.java Changeset: 38960b705c30 Author: mullan Date: 2009-11-23 13:57 -0500 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/38960b705c30 Merge Changeset: 1ced99075109 Author: alanb Date: 2009-11-23 19:26 +0000 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/1ced99075109 6888171: JMX Monitor API should not require JavaBeans to be present Reviewed-by: emcmanus ! src/share/classes/com/sun/jmx/mbeanserver/Introspector.java ! src/share/classes/com/sun/jmx/mbeanserver/MBeanIntrospector.java Changeset: 03f841635453 Author: ohair Date: 2009-11-23 09:51 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/03f841635453 6902666: Include closed tests in the test/Makefile jdk_* targets 6902667: Fix JT_HOME not working from env in jdk/test/Makefile Reviewed-by: mullan, dcubed ! test/Makefile ! test/ProblemList.txt Changeset: 8d555c08e267 Author: ohair Date: 2009-11-23 13:00 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/8d555c08e267 Merge Changeset: 2fec95bd2192 Author: mchung Date: 2009-11-23 08:21 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/2fec95bd2192 6903638: Remove dependency on AuthPermission from SecurityConstants Summary: Move two static fields from SecurityConstants to javax.security.auth.Subject Reviewed-by: mullan ! src/share/classes/javax/security/auth/Subject.java ! src/share/classes/sun/security/util/SecurityConstants.java Changeset: 542a1f9d08be Author: mchung Date: 2009-11-23 10:46 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/542a1f9d08be Merge Changeset: 826cc6f77c4a Author: mchung Date: 2009-11-23 14:59 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/826cc6f77c4a Merge Changeset: ea9411ec1458 Author: tbell Date: 2009-11-23 19:57 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/ea9411ec1458 Merge - test/sun/tools/native2ascii/test2 Changeset: 57195a368d33 Author: ohair Date: 2009-11-25 08:24 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/57195a368d33 6904183: Fix jdk/test/com/sun/jdi tests to run with -samevm Reviewed-by: dcubed ! test/Makefile ! test/ProblemList.txt ! test/com/sun/jdi/BadHandshakeTest.java ! test/com/sun/jdi/DoubleAgentTest.java ! test/com/sun/jdi/ExclusiveBind.java ! test/com/sun/jdi/JITDebug.sh ! test/com/sun/jdi/RepStep.java ! test/com/sun/jdi/RunToExit.java ! test/com/sun/jdi/SimulResumerTest.java ! test/com/sun/jdi/Solaris32AndSolaris64Test.sh ! test/com/sun/jdi/VMConnection.java ! test/com/sun/jdi/connect/spi/DebugUsingCustomConnector.java ! test/com/sun/jdi/connect/spi/GeneratedConnectors.java ! test/com/sun/jdi/connect/spi/SimpleLaunchingConnector.java ! test/com/sun/jdi/redefine/RedefineTest.java Changeset: 7871897537b1 Author: weijun Date: 2009-11-27 08:51 +0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/7871897537b1 6853328: Support OK-AS-DELEGATE flag Reviewed-by: valeriep ! src/share/classes/com/sun/security/jgss/ExtendedGSSContext.java ! src/share/classes/org/ietf/jgss/GSSContext.java ! src/share/classes/sun/net/www/protocol/http/spnego/NegotiatorImpl.java ! src/share/classes/sun/security/jgss/GSSContextImpl.java ! src/share/classes/sun/security/jgss/krb5/InitialToken.java ! src/share/classes/sun/security/jgss/krb5/Krb5Context.java ! src/share/classes/sun/security/jgss/spi/GSSContextSpi.java ! src/share/classes/sun/security/jgss/spnego/SpNegoContext.java ! src/share/classes/sun/security/jgss/wrapper/NativeGSSContext.java ! src/share/classes/sun/security/krb5/Credentials.java ! src/share/classes/sun/security/krb5/internal/CredentialsUtil.java ! test/sun/security/krb5/auto/Context.java ! test/sun/security/krb5/auto/KDC.java + test/sun/security/krb5/auto/OkAsDelegate.java + test/sun/security/krb5/auto/OkAsDelegateXRealm.java + test/sun/security/krb5/auto/ok-as-delegate-xrealm.sh + test/sun/security/krb5/auto/ok-as-delegate.sh Changeset: a7bf281b1de3 Author: weijun Date: 2009-11-27 08:51 +0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/a7bf281b1de3 6901085: SPNEGO does not works with native program Reviewed-by: valeriep ! src/share/classes/sun/security/jgss/spnego/SpNegoContext.java Changeset: a7d0572340fd Author: weijun Date: 2009-11-27 08:51 +0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/a7d0572340fd 6770883: Infinite loop if SPNEGO specified as sun.security.jgss.mechanism Reviewed-by: valeriep ! src/share/classes/sun/security/jgss/spnego/SpNegoMechFactory.java + test/sun/security/jgss/spnego/NoSpnegoAsDefMech.java Changeset: d5a1c012921d Author: tbell Date: 2009-11-29 15:24 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/d5a1c012921d Merge - test/sun/tools/native2ascii/test2 Changeset: de45eac5670e Author: ksrini Date: 2009-11-20 11:01 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/de45eac5670e 6367077: Purge LD_LIBRARY_PATH usage from the launcher 6899834: (launcher) remove the solaris libjvm.so symlink Summary: Fixes other related issues as well. Reviewed-by: darcy, ohair, xlu, martin ! make/java/jli/Makefile ! make/java/main/java/Makefile ! make/java/redist/Makefile ! src/share/bin/java.c ! src/solaris/bin/java_md.c ! test/tools/launcher/Arrrghs.java + test/tools/launcher/ExecutionEnvironment.java - test/tools/launcher/SolarisDataModel.sh - test/tools/launcher/SolarisRunpath.sh ! test/tools/launcher/TestHelper.java - test/tools/launcher/libraryCaller.c - test/tools/launcher/libraryCaller.h - test/tools/launcher/libraryCaller.java Changeset: 026e0baaef90 Author: ohair Date: 2009-11-30 14:15 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/026e0baaef90 6903197: Some java template files need to be renamed to .java.template Reviewed-by: alanb ! make/java/java/Makefile ! make/java/java/genlocales.gmk ! make/java/java/localegen.sh ! make/java/nio/Makefile ! make/netbeans/README ! make/sun/nio/Makefile - make/tools/CharsetMapping/DoubleByte-X.java + make/tools/CharsetMapping/DoubleByte-X.java.template - make/tools/CharsetMapping/SingleByte-X.java + make/tools/CharsetMapping/SingleByte-X.java.template ! make/tools/src/build/tools/charsetmapping/GenerateDBCS.java ! make/tools/src/build/tools/charsetmapping/GenerateSBCS.java - src/share/classes/sun/util/CoreResourceBundleControl-XLocales.java + src/share/classes/sun/util/CoreResourceBundleControl-XLocales.java.template - src/share/classes/sun/util/LocaleDataMetaInfo-XLocales.java + src/share/classes/sun/util/LocaleDataMetaInfo-XLocales.java.template - test/java/util/Formatter/Basic-X.java + test/java/util/Formatter/Basic-X.java.template ! test/java/util/Formatter/genBasic.sh Changeset: 44ad385143a8 Author: ohair Date: 2009-12-01 08:51 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/44ad385143a8 6905705: Fix broken exit code values in jdk/test/Makefile Reviewed-by: tbell ! test/Makefile ! test/ProblemList.txt ! test/com/sun/jdi/BadHandshakeTest.java ! test/com/sun/jdi/DoubleAgentTest.java ! test/com/sun/jdi/ExclusiveBind.java ! test/com/sun/jdi/RunToExit.java ! test/com/sun/jdi/connect/spi/SimpleLaunchingConnector.java Changeset: f07f6eb5d597 Author: ohair Date: 2009-12-01 08:54 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/f07f6eb5d597 Merge - test/tools/launcher/SolarisDataModel.sh - test/tools/launcher/SolarisRunpath.sh - test/tools/launcher/libraryCaller.c - test/tools/launcher/libraryCaller.h - test/tools/launcher/libraryCaller.java Changeset: 561186928899 Author: vinnie Date: 2009-12-02 17:06 +0000 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/561186928899 6906510: Fix testcase for 6894643: Separate out dependency on Kerberos Reviewed-by: weijun ! test/sun/security/krb5/auto/SSL.java Changeset: 79d91585d7d7 Author: vinnie Date: 2009-12-02 17:34 +0000 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/79d91585d7d7 Merge - make/tools/CharsetMapping/DoubleByte-X.java - make/tools/CharsetMapping/SingleByte-X.java - src/share/classes/sun/util/CoreResourceBundleControl-XLocales.java - src/share/classes/sun/util/LocaleDataMetaInfo-XLocales.java - test/java/util/Formatter/Basic-X.java - test/sun/tools/native2ascii/test2 - test/tools/launcher/SolarisDataModel.sh - test/tools/launcher/SolarisRunpath.sh - test/tools/launcher/libraryCaller.c - test/tools/launcher/libraryCaller.h - test/tools/launcher/libraryCaller.java Changeset: bc12627832e0 Author: vinnie Date: 2009-12-03 21:30 +0000 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/bc12627832e0 6906854: SSL/Krb5 testcase should not use a fixed port number Reviewed-by: alanb ! test/ProblemList.txt ! test/sun/security/krb5/auto/SSL.java Changeset: 1755493c5774 Author: darcy Date: 2009-12-03 18:19 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/1755493c5774 6907177: Update jdk tests to remove unncessary -source and -target options Reviewed-by: ohair ! test/demo/jvmti/hprof/CpuOldTest.java ! test/demo/jvmti/hprof/CpuSamplesTest.java ! test/demo/jvmti/hprof/CpuTimesDefineClassTest.java ! test/demo/jvmti/hprof/CpuTimesTest.java ! test/demo/jvmti/hprof/HeapAllTest.java ! test/demo/jvmti/hprof/HeapBinaryFormatTest.java ! test/demo/jvmti/hprof/HeapDumpTest.java ! test/demo/jvmti/hprof/HeapSitesTest.java ! test/demo/jvmti/hprof/OptionsTest.java ! test/java/io/Serializable/enum/array/Test.java ! test/java/io/Serializable/enum/badResolve/Write.java ! test/java/io/Serializable/enum/basic/Test.java ! test/java/io/Serializable/enum/classObject/Test.java ! test/java/io/Serializable/enum/constantSubclasses/Write.java ! test/java/io/Serializable/enum/ignoreSerializationFields/Test.java ! test/java/io/Serializable/enum/ignoreSerializationMethods/Test.java ! test/java/io/Serializable/enum/mismatchedTypecode/Test.java ! test/java/io/Serializable/enum/missingConstant/Write.java ! test/java/io/Serializable/enum/unshared/Test.java ! test/java/lang/Boolean/MakeBooleanComparable.java ! test/java/lang/Class/Cast.java ! test/java/lang/Class/IsEnum.java ! test/java/lang/Class/asSubclass/BasicUnit.java ! test/java/lang/ClassLoader/Assert.sh ! test/java/lang/Integer/BitTwiddle.java ! test/java/lang/Long/BitTwiddle.java ! test/java/lang/Math/Atan2Tests.java ! test/java/lang/Math/IeeeRecommendedTests.java ! test/java/lang/Math/PowTests.java ! test/java/lang/Math/TanTests.java ! test/java/lang/Runtime/exec/WinCommand.java ! test/java/lang/Thread/GenerifyStackTraces.java ! test/java/lang/Thread/UncaughtExceptions.sh ! test/java/lang/annotation/UnitTest.java ! test/java/lang/annotation/package-info.java ! test/java/lang/management/CompositeData/MemoryNotifInfoCompositeData.java ! test/java/lang/management/CompositeData/ThreadInfoCompositeData.java ! test/java/lang/management/ManagementFactory/MXBeanProxyTest.java ! test/java/lang/management/ManagementFactory/PlatformMBeanServerTest.java ! test/java/lang/management/ManagementFactory/ProxyExceptions.java ! test/java/lang/management/ManagementFactory/ProxyTypeMapping.java ! test/java/lang/management/ManagementFactory/ValidateOpenTypes.java ! test/java/lang/management/RuntimeMXBean/GetSystemProperties.java ! test/java/lang/management/RuntimeMXBean/TestInputArgument.sh ! test/java/lang/reflect/Constructor/GenericStringTest.java ! test/java/lang/reflect/Field/GenericStringTest.java ! test/java/lang/reflect/Generics/StringsAndBounds.java ! test/java/lang/reflect/Generics/TestC1.java ! test/java/lang/reflect/Generics/TestC2.java ! test/java/lang/reflect/Generics/TestN1.java ! test/java/lang/reflect/Generics/exceptionCauseTest.java ! test/java/lang/reflect/Generics/getAnnotationTest.java ! test/java/lang/reflect/Method/Equals.java ! test/java/lang/reflect/Method/GenericStringTest.java ! test/java/math/BigDecimal/DivideTests.java ! test/java/math/BigDecimal/IntegralDivisionTests.java ! test/java/math/BigDecimal/PowTests.java ! test/java/math/BigDecimal/ToPlainStringTests.java ! test/java/math/BigDecimal/ZeroScalingTests.java ! test/java/math/RoundingMode/RoundingModeTests.java ! test/java/net/ProxySelector/ProxyTest.java ! test/java/net/URL/PerConnectionProxy.java ! test/java/security/cert/PKIXBuilderParameters/InvalidParameters.java ! test/java/security/cert/PKIXParameters/InvalidParameters.java ! test/java/util/AbstractList/CheckForComodification.java ! test/java/util/Collections/AddAll.java ! test/java/util/Collections/Disjoint.java ! test/java/util/Collections/Frequency.java ! test/java/util/EnumMap/EnumMapBash.java ! test/java/util/EnumSet/AllOf.java ! test/java/util/EnumSet/ComplementOf.java ! test/java/util/EnumSet/EnumSetBash.java ! test/java/util/EnumSet/JumboRange.java ! test/java/util/EnumSet/Range.java ! test/java/util/Formattable/StockName.java ! test/java/util/IdentityHashMap/ToString.java ! test/java/util/Locale/Bug4175998Test.java ! test/java/util/UUID/UUIDTest.java ! test/java/util/concurrent/BlockingQueue/CancelledProducerConsumerLoops.java ! test/java/util/concurrent/BlockingQueue/MultipleProducersSingleConsumerLoops.java ! test/java/util/concurrent/BlockingQueue/ProducerConsumerLoops.java ! test/java/util/concurrent/BlockingQueue/SingleProducerMultipleConsumerLoops.java ! test/java/util/concurrent/ConcurrentHashMap/MapCheck.java ! test/java/util/concurrent/ConcurrentHashMap/MapLoops.java ! test/java/util/concurrent/Exchanger/ExchangeLoops.java ! test/java/util/concurrent/ExecutorCompletionService/ExecutorCompletionServiceLoops.java ! test/java/util/concurrent/FutureTask/CancelledFutureLoops.java ! test/java/util/concurrent/atomic/VMSupportsCS8.java ! test/java/util/concurrent/locks/ReentrantLock/CancelledLockLoops.java ! test/java/util/concurrent/locks/ReentrantLock/LockOncePerThreadLoops.java ! test/java/util/concurrent/locks/ReentrantLock/SimpleReentrantLockLoops.java ! test/java/util/concurrent/locks/ReentrantLock/TimeoutLockLoops.java ! test/java/util/concurrent/locks/ReentrantReadWriteLock/MapLoops.java ! test/sun/management/AgentCheckTest.java ! test/sun/security/util/Oid/S11N.sh ! test/sun/tools/jconsole/ResourceCheckTest.sh Changeset: 0f494453cd0a Author: weijun Date: 2009-12-07 15:27 +0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/0f494453cd0a 6879540: enable empty password for kerberos 5 Reviewed-by: valeriep, wetmore ! src/share/classes/com/sun/crypto/provider/HmacCore.java ! src/share/classes/com/sun/crypto/provider/PBKDF2KeyImpl.java Changeset: 17be46c2f853 Author: weijun Date: 2009-12-07 15:29 +0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/17be46c2f853 6886058: JNDI LDAP InitialLdapContext SECURITY_CREDENTIALS byte[] can be corrupted, then LDAP referral fails Reviewed-by: vinnie, xuelei ! src/share/classes/javax/naming/InitialContext.java ! src/share/classes/javax/naming/directory/InitialDirContext.java ! src/share/classes/javax/naming/ldap/InitialLdapContext.java Changeset: 327adb1c2224 Author: vinnie Date: 2009-12-07 17:06 +0000 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/327adb1c2224 6876158: Remove dependencies on Signer, Certificate, Identity, IdentityScope classes from java.security pkg Reviewed-by: alanb, mullan ! src/share/classes/com/sun/security/auth/PolicyFile.java ! src/share/classes/sun/security/pkcs/PKCS10.java - src/share/classes/sun/security/provider/IdentityDatabase.java ! src/share/classes/sun/security/provider/PolicyFile.java - src/share/classes/sun/security/provider/SystemIdentity.java - src/share/classes/sun/security/provider/SystemSigner.java ! src/share/classes/sun/security/tools/JarSigner.java ! src/share/classes/sun/security/tools/KeyTool.java ! src/share/classes/sun/security/x509/CertAndKeyGen.java - src/share/classes/sun/security/x509/X500Signer.java - src/share/classes/sun/security/x509/X509Cert.java - src/share/classes/sun/tools/jar/JarVerifierStream.java Changeset: c68f6b6b47fd Author: alanb Date: 2009-12-07 12:24 +0000 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/c68f6b6b47fd 6903753: (se) Selector should implement Closeable Reviewed-by: chegar, forax ! src/share/classes/java/nio/channels/Selector.java Changeset: 587fa61c0f07 Author: alanb Date: 2009-12-07 12:29 +0000 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/587fa61c0f07 6902010: (cl) Delay initialization of ClassLoader.parallelLoaders Reviewed-by: forax, mchung, valeriep ! src/share/classes/java/lang/ClassLoader.java Changeset: 63cab9078ac2 Author: alanb Date: 2009-12-07 20:25 +0000 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/63cab9078ac2 Merge - src/share/classes/sun/security/provider/IdentityDatabase.java - src/share/classes/sun/security/provider/SystemIdentity.java - src/share/classes/sun/security/provider/SystemSigner.java - src/share/classes/sun/security/x509/X500Signer.java - src/share/classes/sun/security/x509/X509Cert.java - src/share/classes/sun/tools/jar/JarVerifierStream.java Changeset: e47e55b6ecf6 Author: martin Date: 2009-12-07 15:32 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/e47e55b6ecf6 6905029: Broken links in Deflater and DeflaterOutputStream javadoc Summary: Fix syntax errors in @links Reviewed-by: alanb ! src/share/classes/java/util/zip/Deflater.java ! src/share/classes/java/util/zip/DeflaterOutputStream.java Changeset: 0dcdb13ab6d0 Author: martin Date: 2009-12-07 16:44 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/0dcdb13ab6d0 6900043: Add method to return line.separator property Summary: Add System.lineSeparator(), returning getProperty("line.separator") Reviewed-by: darcy ! src/share/classes/java/lang/System.java ! src/share/classes/java/util/Formatter.java Changeset: 146c8921267f Author: jjb Date: 2009-12-08 12:40 +0000 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/146c8921267f 6905046: More Dual-pivot quicksort improvements Summary: More improvements from the DPQ team Reviewed-by: alanb ! src/share/classes/java/util/DualPivotQuicksort.java Changeset: d7c07e9258a9 Author: tbell Date: 2009-12-08 09:15 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/d7c07e9258a9 Merge - make/tools/CharsetMapping/DoubleByte-X.java - make/tools/CharsetMapping/SingleByte-X.java - src/share/classes/sun/security/provider/IdentityDatabase.java - src/share/classes/sun/security/provider/SystemIdentity.java - src/share/classes/sun/security/provider/SystemSigner.java - src/share/classes/sun/security/x509/X500Signer.java - src/share/classes/sun/security/x509/X509Cert.java - src/share/classes/sun/tools/jar/JarVerifierStream.java - src/share/classes/sun/util/CoreResourceBundleControl-XLocales.java - src/share/classes/sun/util/LocaleDataMetaInfo-XLocales.java - test/java/util/Formatter/Basic-X.java - test/sun/tools/native2ascii/test2 - test/tools/launcher/SolarisDataModel.sh - test/tools/launcher/SolarisRunpath.sh - test/tools/launcher/libraryCaller.c - test/tools/launcher/libraryCaller.h - test/tools/launcher/libraryCaller.java Changeset: 479c14bec7f1 Author: prr Date: 2009-11-30 14:39 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/479c14bec7f1 6904962: GlyphVector.getVisualBounds should not be affected by leading or trailing white space. Reviewed-by: igor, dougfelt ! src/share/classes/sun/font/StandardGlyphVector.java + test/java/awt/font/GlyphVector/VisualBounds.java Changeset: 92fa88af9467 Author: lana Date: 2009-12-02 16:18 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/92fa88af9467 Merge - make/tools/fontchecker/Makefile - make/tools/src/build/tools/fontchecker/FontCheckDummy.java - make/tools/src/build/tools/fontchecker/FontChecker.java - make/tools/src/build/tools/fontchecker/FontCheckerConstants.java - make/tools/src/build/tools/fontchecker/FontFileFilter.java - make/tools/src/build/tools/fontchecker/README.txt - src/share/classes/com/sun/jmx/event/DaemonThreadFactory.java - src/share/classes/com/sun/jmx/event/EventBuffer.java - src/share/classes/com/sun/jmx/event/EventClientFactory.java - src/share/classes/com/sun/jmx/event/EventConnection.java - src/share/classes/com/sun/jmx/event/EventParams.java - src/share/classes/com/sun/jmx/event/LeaseManager.java - src/share/classes/com/sun/jmx/event/LeaseRenewer.java - src/share/classes/com/sun/jmx/event/ReceiverBuffer.java - src/share/classes/com/sun/jmx/event/RepeatedSingletonJob.java - src/share/classes/com/sun/jmx/interceptor/DispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/DomainDispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/MBeanServerInterceptorSupport.java - src/share/classes/com/sun/jmx/interceptor/NamespaceDispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/SingleMBeanForwarder.java - src/share/classes/com/sun/jmx/mbeanserver/MBeanInjector.java - src/share/classes/com/sun/jmx/mbeanserver/NotificationMBeanSupport.java - src/share/classes/com/sun/jmx/mbeanserver/NotifySupport.java - src/share/classes/com/sun/jmx/mbeanserver/PerThreadGroupPool.java - src/share/classes/com/sun/jmx/namespace/DomainInterceptor.java - src/share/classes/com/sun/jmx/namespace/HandlerInterceptor.java - src/share/classes/com/sun/jmx/namespace/NamespaceInterceptor.java - src/share/classes/com/sun/jmx/namespace/ObjectNameRouter.java - src/share/classes/com/sun/jmx/namespace/RoutingConnectionProxy.java - src/share/classes/com/sun/jmx/namespace/RoutingMBeanServerConnection.java - src/share/classes/com/sun/jmx/namespace/RoutingProxy.java - src/share/classes/com/sun/jmx/namespace/RoutingServerProxy.java - src/share/classes/com/sun/jmx/namespace/package.html - src/share/classes/com/sun/jmx/namespace/serial/DefaultRewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/IdentityProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/JMXNamespaceContext.java - src/share/classes/com/sun/jmx/namespace/serial/RewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/RoutingOnlyProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/SerialRewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/package.html - src/share/classes/com/sun/jmx/remote/internal/ProxyInputStream.java - src/share/classes/com/sun/jmx/remote/util/EventClientConnection.java - src/share/classes/java/nio/ByteBufferAs-X-Buffer.java - src/share/classes/java/nio/Direct-X-Buffer-bin.java - src/share/classes/java/nio/Direct-X-Buffer.java - src/share/classes/java/nio/Heap-X-Buffer.java - src/share/classes/java/nio/X-Buffer-bin.java - src/share/classes/java/nio/X-Buffer.java - src/share/classes/java/nio/charset/Charset-X-Coder.java - src/share/classes/javax/management/ClientContext.java - src/share/classes/javax/management/Description.java - src/share/classes/javax/management/DescriptorFields.java - src/share/classes/javax/management/DynamicWrapperMBean.java - src/share/classes/javax/management/GenericMBeanException.java - src/share/classes/javax/management/Impact.java - src/share/classes/javax/management/MBean.java - src/share/classes/javax/management/ManagedAttribute.java - src/share/classes/javax/management/ManagedOperation.java - src/share/classes/javax/management/NotificationInfo.java - src/share/classes/javax/management/NotificationInfos.java - src/share/classes/javax/management/ObjectNameTemplate.java - src/share/classes/javax/management/QueryNotificationFilter.java - src/share/classes/javax/management/QueryParser.java - src/share/classes/javax/management/SendNotification.java - src/share/classes/javax/management/event/EventClient.java - src/share/classes/javax/management/event/EventClientDelegate.java - src/share/classes/javax/management/event/EventClientDelegateMBean.java - src/share/classes/javax/management/event/EventClientNotFoundException.java - src/share/classes/javax/management/event/EventConsumer.java - src/share/classes/javax/management/event/EventForwarder.java - src/share/classes/javax/management/event/EventReceiver.java - src/share/classes/javax/management/event/EventRelay.java - src/share/classes/javax/management/event/EventSubscriber.java - src/share/classes/javax/management/event/FetchingEventForwarder.java - src/share/classes/javax/management/event/FetchingEventRelay.java - src/share/classes/javax/management/event/ListenerInfo.java - src/share/classes/javax/management/event/NotificationManager.java - src/share/classes/javax/management/event/RMIPushEventForwarder.java - src/share/classes/javax/management/event/RMIPushEventRelay.java - src/share/classes/javax/management/event/RMIPushServer.java - src/share/classes/javax/management/event/package-info.java - src/share/classes/javax/management/namespace/JMXDomain.java - src/share/classes/javax/management/namespace/JMXNamespace.java - src/share/classes/javax/management/namespace/JMXNamespaceMBean.java - src/share/classes/javax/management/namespace/JMXNamespacePermission.java - src/share/classes/javax/management/namespace/JMXNamespaceView.java - src/share/classes/javax/management/namespace/JMXNamespaces.java - src/share/classes/javax/management/namespace/JMXRemoteNamespace.java - src/share/classes/javax/management/namespace/JMXRemoteNamespaceMBean.java - src/share/classes/javax/management/namespace/MBeanServerConnectionWrapper.java - src/share/classes/javax/management/namespace/MBeanServerSupport.java - src/share/classes/javax/management/namespace/VirtualEventManager.java - src/share/classes/javax/management/namespace/package-info.java - src/share/classes/javax/management/openmbean/MXBeanMapping.java - src/share/classes/javax/management/openmbean/MXBeanMappingClass.java - src/share/classes/javax/management/openmbean/MXBeanMappingFactory.java - src/share/classes/javax/management/openmbean/MXBeanMappingFactoryClass.java - src/share/classes/javax/management/remote/IdentityMBeanServerForwarder.java - src/share/classes/sun/misc/Version-template.java - src/share/classes/sun/net/www/protocol/http/HttpLogFormatter.java - src/share/classes/sun/net/www/protocol/http/NegotiateCallbackHandler.java - src/share/classes/sun/net/www/protocol/http/NegotiatorImpl.java - src/share/classes/sun/security/provider/certpath/LDAPCertStore.java - src/share/classes/sun/security/ssl/KerberosPreMasterSecret.java - src/share/classes/sun/tools/jconsole/Version-template.java - src/windows/classes/sun/net/www/protocol/http/NTLMAuthSequence.java - src/windows/classes/sun/net/www/protocol/http/NTLMAuthentication.java - src/windows/native/sun/net/www/protocol/http/NTLMAuthSequence.c - test/java/nio/Buffer/Basic-X.java - test/java/nio/Buffer/CopyDirect-X-Memory.java - test/javax/management/Introspector/AnnotatedMBeanTest.java - test/javax/management/Introspector/AnnotatedNotificationInfoTest.java - test/javax/management/Introspector/ExceptionsDescriptorTest.java - test/javax/management/Introspector/MBeanDescriptionTest.java - test/javax/management/Introspector/ObjectNameTemplateTest.java - test/javax/management/Introspector/ParameterNameTest.java - test/javax/management/Introspector/ResourceInjectionTest.java - test/javax/management/MBeanServer/AttributeListMapTest.java - test/javax/management/MBeanServer/DynamicWrapperMBeanTest.java - test/javax/management/MBeanServer/InstanceNotFoundExceptionTest.java - test/javax/management/MBeanServerFactory/NamedMBeanServerTest.java - test/javax/management/ObjectName/ValueOfTest.java - test/javax/management/context/ContextForwarderTest.java - test/javax/management/context/ContextTest.java - test/javax/management/context/LocaleAwareBroadcasterTest.java - test/javax/management/context/LocaleTest.java - test/javax/management/context/LocalizableTest.java - test/javax/management/context/RemoteContextTest.java - test/javax/management/context/localizable/MBeanDescriptions.properties - test/javax/management/context/localizable/MBeanDescriptions_fr.java - test/javax/management/context/localizable/Whatsit.java - test/javax/management/context/localizable/WhatsitMBean.java - test/javax/management/descriptor/DescriptorConstructorTest.java - test/javax/management/eventService/AddRemoveListenerTest.java - test/javax/management/eventService/CustomForwarderTest.java - test/javax/management/eventService/EventClientExecutorTest.java - test/javax/management/eventService/EventClientThreadTest.java - test/javax/management/eventService/EventDelegateSecurityTest.java - test/javax/management/eventService/EventManagerTest.java - test/javax/management/eventService/FetchingTest.java - test/javax/management/eventService/LeaseManagerDeadlockTest.java - test/javax/management/eventService/LeaseTest.java - test/javax/management/eventService/ListenerTest.java - test/javax/management/eventService/MyFetchingEventForwarder.java - test/javax/management/eventService/NotSerializableNotifTest.java - test/javax/management/eventService/PublishTest.java - test/javax/management/eventService/ReconnectableConnectorTest.java - test/javax/management/eventService/SharingThreadTest.java - test/javax/management/eventService/SubUnsubTest.java - test/javax/management/eventService/SubscribeTest.java - test/javax/management/eventService/UsingEventService.java - test/javax/management/interop/MBeanExceptionInteropTest.java - test/javax/management/modelmbean/DefaultDescriptorFieldTest.java - test/javax/management/monitor/InstantiateMonitorNotificationTest.java - test/javax/management/mxbean/CustomTypeTest.java - test/javax/management/mxbean/JMXServiceURLTest.java - test/javax/management/mxbean/customtypes/CustomLongMXBean.java - test/javax/management/mxbean/customtypes/CustomMXBean.java - test/javax/management/mxbean/customtypes/IntegerIsLongFactory.java - test/javax/management/mxbean/customtypes/IntegerIsStringFactory.java - test/javax/management/mxbean/customtypes/package-info.java - test/javax/management/namespace/DomainCreationTest.java - test/javax/management/namespace/EventWithNamespaceControlTest.java - test/javax/management/namespace/EventWithNamespaceTest.java - test/javax/management/namespace/ExportNamespaceTest.java - test/javax/management/namespace/JMXDomainTest.java - test/javax/management/namespace/JMXNamespaceSecurityTest.java - test/javax/management/namespace/JMXNamespaceTest.java - test/javax/management/namespace/JMXNamespaceViewTest.java - test/javax/management/namespace/JMXNamespacesTest.java - test/javax/management/namespace/JMXRemoteNamespaceTest.java - test/javax/management/namespace/JMXRemoteTargetNamespace.java - test/javax/management/namespace/LazyDomainTest.java - test/javax/management/namespace/LeadingSeparatorsTest.java - test/javax/management/namespace/MXBeanRefTest.java - test/javax/management/namespace/NamespaceController.java - test/javax/management/namespace/NamespaceControllerMBean.java - test/javax/management/namespace/NamespaceCreationTest.java - test/javax/management/namespace/NamespaceNotificationsTest.java - test/javax/management/namespace/NullDomainObjectNameTest.java - test/javax/management/namespace/NullObjectNameTest.java - test/javax/management/namespace/QueryNamesTest.java - test/javax/management/namespace/RemoveNotificationListenerTest.java - test/javax/management/namespace/RoutingServerProxyTest.java - test/javax/management/namespace/SerialParamProcessorTest.java - test/javax/management/namespace/SourceNamespaceTest.java - test/javax/management/namespace/VirtualMBeanNotifTest.java - test/javax/management/namespace/VirtualMBeanTest.java - test/javax/management/namespace/VirtualNamespaceQueryTest.java - test/javax/management/namespace/VirtualPropsTest.java - test/javax/management/namespace/Wombat.java - test/javax/management/namespace/WombatMBean.java - test/javax/management/namespace/namespace.policy - test/javax/management/notification/SupportClearTest.java - test/javax/management/openmbean/CompositeDataToMapTest.java - test/javax/management/openmbean/GenericMBeanExceptionTest.java - test/javax/management/query/QueryDottedAttrTest.java - test/javax/management/query/QueryNotifFilterTest.java - test/javax/management/query/QueryParseTest.java - test/javax/management/remote/mandatory/connectorServer/CloseConnectionTest.java - test/javax/management/remote/mandatory/connectorServer/ForwarderChainTest.java - test/javax/management/remote/mandatory/connectorServer/StandardForwardersTest.java - test/javax/management/remote/mandatory/version/JMXSpecVersionTest.java - test/javax/management/standardmbean/FindMethodTest.java - test/javax/management/standardmbean/RegistrationTest.java Changeset: 9f220ed252d9 Author: lana Date: 2009-12-10 09:43 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/9f220ed252d9 Merge Changeset: 6286daeb7d5a Author: anthony Date: 2009-11-20 19:11 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/6286daeb7d5a 6863566: Java should support the freedesktop.org startup notification specification Summary: The startup notification gets removed as soon as a Java top-level window is shown Reviewed-by: anthony, art, dcherepanov Contributed-by: Damjan Jovanovic ! src/solaris/classes/sun/awt/X11/XWindowPeer.java Changeset: 84b4935285c8 Author: denis Date: 2009-11-24 18:46 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/84b4935285c8 5098433: REG: DnD of File-List between JVM is broken for non ASCII file names - Win32 Reviewed-by: uta, dav ! src/share/classes/sun/awt/datatransfer/DataTransferer.java ! src/windows/native/sun/windows/awt_DnDDS.cpp + test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/AbsoluteComponentCenterCalculator.java + test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/DragUnicodeBetweenJVMTest.html + test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/DragUnicodeBetweenJVMTest.java + test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/FileListTransferable.java + test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/InterprocessMessages.java + test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/NextFramePositionCalculator.java + test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/SourcePanel.java + test/java/awt/datatransfer/DragUnicodeBetweenJVMTest/TargetPanel.java Changeset: b62c74b1772e Author: denis Date: 2009-11-25 21:27 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/b62c74b1772e 4899516: Transferable has no DataFlavors when dragging from Gnome window to Swing Reviewed-by: uta, dav Contributed-by: Damjan Jovanovic ! src/share/classes/sun/awt/datatransfer/DataTransferer.java ! src/solaris/classes/sun/awt/X11/XDataTransferer.java ! src/solaris/lib/flavormap.properties ! src/windows/classes/sun/awt/windows/WDataTransferer.java + test/java/awt/dnd/URIListBetweenJVMsTest/FileListTransferable.java + test/java/awt/dnd/URIListBetweenJVMsTest/InterprocessMessages.java + test/java/awt/dnd/URIListBetweenJVMsTest/SourceFileListFrame.java + test/java/awt/dnd/URIListBetweenJVMsTest/TargetFileListFrame.java + test/java/awt/dnd/URIListBetweenJVMsTest/URIListBetweenJVMsTest.html + test/java/awt/dnd/URIListBetweenJVMsTest/URIListBetweenJVMsTest.java ! test/java/awt/regtesthelpers/process/ProcessCommunicator.java Changeset: 6fd07b903478 Author: lana Date: 2009-11-25 22:14 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/6fd07b903478 Merge - make/tools/fontchecker/Makefile - make/tools/src/build/tools/fontchecker/FontCheckDummy.java - make/tools/src/build/tools/fontchecker/FontChecker.java - make/tools/src/build/tools/fontchecker/FontCheckerConstants.java - make/tools/src/build/tools/fontchecker/FontFileFilter.java - make/tools/src/build/tools/fontchecker/README.txt - src/share/classes/com/sun/jmx/event/DaemonThreadFactory.java - src/share/classes/com/sun/jmx/event/EventBuffer.java - src/share/classes/com/sun/jmx/event/EventClientFactory.java - src/share/classes/com/sun/jmx/event/EventConnection.java - src/share/classes/com/sun/jmx/event/EventParams.java - src/share/classes/com/sun/jmx/event/LeaseManager.java - src/share/classes/com/sun/jmx/event/LeaseRenewer.java - src/share/classes/com/sun/jmx/event/ReceiverBuffer.java - src/share/classes/com/sun/jmx/event/RepeatedSingletonJob.java - src/share/classes/com/sun/jmx/interceptor/DispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/DomainDispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/MBeanServerInterceptorSupport.java - src/share/classes/com/sun/jmx/interceptor/NamespaceDispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/SingleMBeanForwarder.java - src/share/classes/com/sun/jmx/mbeanserver/MBeanInjector.java - src/share/classes/com/sun/jmx/mbeanserver/NotificationMBeanSupport.java - src/share/classes/com/sun/jmx/mbeanserver/NotifySupport.java - src/share/classes/com/sun/jmx/mbeanserver/PerThreadGroupPool.java - src/share/classes/com/sun/jmx/namespace/DomainInterceptor.java - src/share/classes/com/sun/jmx/namespace/HandlerInterceptor.java - src/share/classes/com/sun/jmx/namespace/NamespaceInterceptor.java - src/share/classes/com/sun/jmx/namespace/ObjectNameRouter.java - src/share/classes/com/sun/jmx/namespace/RoutingConnectionProxy.java - src/share/classes/com/sun/jmx/namespace/RoutingMBeanServerConnection.java - src/share/classes/com/sun/jmx/namespace/RoutingProxy.java - src/share/classes/com/sun/jmx/namespace/RoutingServerProxy.java - src/share/classes/com/sun/jmx/namespace/package.html - src/share/classes/com/sun/jmx/namespace/serial/DefaultRewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/IdentityProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/JMXNamespaceContext.java - src/share/classes/com/sun/jmx/namespace/serial/RewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/RoutingOnlyProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/SerialRewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/package.html - src/share/classes/com/sun/jmx/remote/internal/ProxyInputStream.java - src/share/classes/com/sun/jmx/remote/util/EventClientConnection.java - src/share/classes/java/nio/ByteBufferAs-X-Buffer.java - src/share/classes/java/nio/Direct-X-Buffer-bin.java - src/share/classes/java/nio/Direct-X-Buffer.java - src/share/classes/java/nio/Heap-X-Buffer.java - src/share/classes/java/nio/X-Buffer-bin.java - src/share/classes/java/nio/X-Buffer.java - src/share/classes/java/nio/charset/Charset-X-Coder.java - src/share/classes/javax/management/ClientContext.java - src/share/classes/javax/management/Description.java - src/share/classes/javax/management/DescriptorFields.java - src/share/classes/javax/management/DynamicWrapperMBean.java - src/share/classes/javax/management/GenericMBeanException.java - src/share/classes/javax/management/Impact.java - src/share/classes/javax/management/MBean.java - src/share/classes/javax/management/ManagedAttribute.java - src/share/classes/javax/management/ManagedOperation.java - src/share/classes/javax/management/NotificationInfo.java - src/share/classes/javax/management/NotificationInfos.java - src/share/classes/javax/management/ObjectNameTemplate.java - src/share/classes/javax/management/QueryNotificationFilter.java - src/share/classes/javax/management/QueryParser.java - src/share/classes/javax/management/SendNotification.java - src/share/classes/javax/management/event/EventClient.java - src/share/classes/javax/management/event/EventClientDelegate.java - src/share/classes/javax/management/event/EventClientDelegateMBean.java - src/share/classes/javax/management/event/EventClientNotFoundException.java - src/share/classes/javax/management/event/EventConsumer.java - src/share/classes/javax/management/event/EventForwarder.java - src/share/classes/javax/management/event/EventReceiver.java - src/share/classes/javax/management/event/EventRelay.java - src/share/classes/javax/management/event/EventSubscriber.java - src/share/classes/javax/management/event/FetchingEventForwarder.java - src/share/classes/javax/management/event/FetchingEventRelay.java - src/share/classes/javax/management/event/ListenerInfo.java - src/share/classes/javax/management/event/NotificationManager.java - src/share/classes/javax/management/event/RMIPushEventForwarder.java - src/share/classes/javax/management/event/RMIPushEventRelay.java - src/share/classes/javax/management/event/RMIPushServer.java - src/share/classes/javax/management/event/package-info.java - src/share/classes/javax/management/namespace/JMXDomain.java - src/share/classes/javax/management/namespace/JMXNamespace.java - src/share/classes/javax/management/namespace/JMXNamespaceMBean.java - src/share/classes/javax/management/namespace/JMXNamespacePermission.java - src/share/classes/javax/management/namespace/JMXNamespaceView.java - src/share/classes/javax/management/namespace/JMXNamespaces.java - src/share/classes/javax/management/namespace/JMXRemoteNamespace.java - src/share/classes/javax/management/namespace/JMXRemoteNamespaceMBean.java - src/share/classes/javax/management/namespace/MBeanServerConnectionWrapper.java - src/share/classes/javax/management/namespace/MBeanServerSupport.java - src/share/classes/javax/management/namespace/VirtualEventManager.java - src/share/classes/javax/management/namespace/package-info.java - src/share/classes/javax/management/openmbean/MXBeanMapping.java - src/share/classes/javax/management/openmbean/MXBeanMappingClass.java - src/share/classes/javax/management/openmbean/MXBeanMappingFactory.java - src/share/classes/javax/management/openmbean/MXBeanMappingFactoryClass.java - src/share/classes/javax/management/remote/IdentityMBeanServerForwarder.java - src/share/classes/sun/misc/Version-template.java - src/share/classes/sun/net/www/protocol/http/HttpLogFormatter.java - src/share/classes/sun/net/www/protocol/http/NegotiateCallbackHandler.java - src/share/classes/sun/net/www/protocol/http/NegotiatorImpl.java - src/share/classes/sun/security/provider/certpath/LDAPCertStore.java - src/share/classes/sun/security/ssl/KerberosPreMasterSecret.java - src/share/classes/sun/tools/jconsole/Version-template.java ! src/solaris/classes/sun/awt/X11/XWindowPeer.java - src/windows/classes/sun/net/www/protocol/http/NTLMAuthSequence.java - src/windows/classes/sun/net/www/protocol/http/NTLMAuthentication.java - src/windows/native/sun/net/www/protocol/http/NTLMAuthSequence.c - test/java/nio/Buffer/Basic-X.java - test/java/nio/Buffer/CopyDirect-X-Memory.java - test/javax/management/Introspector/AnnotatedMBeanTest.java - test/javax/management/Introspector/AnnotatedNotificationInfoTest.java - test/javax/management/Introspector/ExceptionsDescriptorTest.java - test/javax/management/Introspector/MBeanDescriptionTest.java - test/javax/management/Introspector/ObjectNameTemplateTest.java - test/javax/management/Introspector/ParameterNameTest.java - test/javax/management/Introspector/ResourceInjectionTest.java - test/javax/management/MBeanServer/AttributeListMapTest.java - test/javax/management/MBeanServer/DynamicWrapperMBeanTest.java - test/javax/management/MBeanServer/InstanceNotFoundExceptionTest.java - test/javax/management/MBeanServerFactory/NamedMBeanServerTest.java - test/javax/management/ObjectName/ValueOfTest.java - test/javax/management/context/ContextForwarderTest.java - test/javax/management/context/ContextTest.java - test/javax/management/context/LocaleAwareBroadcasterTest.java - test/javax/management/context/LocaleTest.java - test/javax/management/context/LocalizableTest.java - test/javax/management/context/RemoteContextTest.java - test/javax/management/context/localizable/MBeanDescriptions.properties - test/javax/management/context/localizable/MBeanDescriptions_fr.java - test/javax/management/context/localizable/Whatsit.java - test/javax/management/context/localizable/WhatsitMBean.java - test/javax/management/descriptor/DescriptorConstructorTest.java - test/javax/management/eventService/AddRemoveListenerTest.java - test/javax/management/eventService/CustomForwarderTest.java - test/javax/management/eventService/EventClientExecutorTest.java - test/javax/management/eventService/EventClientThreadTest.java - test/javax/management/eventService/EventDelegateSecurityTest.java - test/javax/management/eventService/EventManagerTest.java - test/javax/management/eventService/FetchingTest.java - test/javax/management/eventService/LeaseManagerDeadlockTest.java - test/javax/management/eventService/LeaseTest.java - test/javax/management/eventService/ListenerTest.java - test/javax/management/eventService/MyFetchingEventForwarder.java - test/javax/management/eventService/NotSerializableNotifTest.java - test/javax/management/eventService/PublishTest.java - test/javax/management/eventService/ReconnectableConnectorTest.java - test/javax/management/eventService/SharingThreadTest.java - test/javax/management/eventService/SubUnsubTest.java - test/javax/management/eventService/SubscribeTest.java - test/javax/management/eventService/UsingEventService.java - test/javax/management/interop/MBeanExceptionInteropTest.java - test/javax/management/modelmbean/DefaultDescriptorFieldTest.java - test/javax/management/monitor/InstantiateMonitorNotificationTest.java - test/javax/management/mxbean/CustomTypeTest.java - test/javax/management/mxbean/JMXServiceURLTest.java - test/javax/management/mxbean/customtypes/CustomLongMXBean.java - test/javax/management/mxbean/customtypes/CustomMXBean.java - test/javax/management/mxbean/customtypes/IntegerIsLongFactory.java - test/javax/management/mxbean/customtypes/IntegerIsStringFactory.java - test/javax/management/mxbean/customtypes/package-info.java - test/javax/management/namespace/DomainCreationTest.java - test/javax/management/namespace/EventWithNamespaceControlTest.java - test/javax/management/namespace/EventWithNamespaceTest.java - test/javax/management/namespace/ExportNamespaceTest.java - test/javax/management/namespace/JMXDomainTest.java - test/javax/management/namespace/JMXNamespaceSecurityTest.java - test/javax/management/namespace/JMXNamespaceTest.java - test/javax/management/namespace/JMXNamespaceViewTest.java - test/javax/management/namespace/JMXNamespacesTest.java - test/javax/management/namespace/JMXRemoteNamespaceTest.java - test/javax/management/namespace/JMXRemoteTargetNamespace.java - test/javax/management/namespace/LazyDomainTest.java - test/javax/management/namespace/LeadingSeparatorsTest.java - test/javax/management/namespace/MXBeanRefTest.java - test/javax/management/namespace/NamespaceController.java - test/javax/management/namespace/NamespaceControllerMBean.java - test/javax/management/namespace/NamespaceCreationTest.java - test/javax/management/namespace/NamespaceNotificationsTest.java - test/javax/management/namespace/NullDomainObjectNameTest.java - test/javax/management/namespace/NullObjectNameTest.java - test/javax/management/namespace/QueryNamesTest.java - test/javax/management/namespace/RemoveNotificationListenerTest.java - test/javax/management/namespace/RoutingServerProxyTest.java - test/javax/management/namespace/SerialParamProcessorTest.java - test/javax/management/namespace/SourceNamespaceTest.java - test/javax/management/namespace/VirtualMBeanNotifTest.java - test/javax/management/namespace/VirtualMBeanTest.java - test/javax/management/namespace/VirtualNamespaceQueryTest.java - test/javax/management/namespace/VirtualPropsTest.java - test/javax/management/namespace/Wombat.java - test/javax/management/namespace/WombatMBean.java - test/javax/management/namespace/namespace.policy - test/javax/management/notification/SupportClearTest.java - test/javax/management/openmbean/CompositeDataToMapTest.java - test/javax/management/openmbean/GenericMBeanExceptionTest.java - test/javax/management/query/QueryDottedAttrTest.java - test/javax/management/query/QueryNotifFilterTest.java - test/javax/management/query/QueryParseTest.java - test/javax/management/remote/mandatory/connectorServer/CloseConnectionTest.java - test/javax/management/remote/mandatory/connectorServer/ForwarderChainTest.java - test/javax/management/remote/mandatory/connectorServer/StandardForwardersTest.java - test/javax/management/remote/mandatory/version/JMXSpecVersionTest.java - test/javax/management/standardmbean/FindMethodTest.java - test/javax/management/standardmbean/RegistrationTest.java Changeset: e6b46fc235b0 Author: art Date: 2009-11-27 15:26 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/e6b46fc235b0 4913324: Deadlock when using two event queues Reviewed-by: anthony, ant, dcherepanov ! src/share/classes/java/awt/EventDispatchThread.java ! src/share/classes/java/awt/EventQueue.java ! src/share/classes/sun/awt/AWTAccessor.java ! src/share/classes/sun/awt/AppContext.java ! src/share/classes/sun/awt/SunToolkit.java + test/java/awt/EventQueue/PushPopDeadlock2/PushPopTest.java Changeset: ca34cfff70a4 Author: anthony Date: 2009-11-27 16:07 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/ca34cfff70a4 6402325: Swing toolbars vs native toolbars on Windows Summary: Introduce support for different window types: NORMAL, UTILITY, POPUP Reviewed-by: art, dcherepanov ! src/share/classes/java/awt/Window.java ! src/share/classes/javax/swing/Popup.java ! src/share/classes/sun/awt/SunToolkit.java ! src/solaris/classes/sun/awt/X11/InfoWindow.java ! src/solaris/classes/sun/awt/X11/XDecoratedPeer.java ! src/solaris/classes/sun/awt/X11/XNETProtocol.java ! src/solaris/classes/sun/awt/X11/XToolkit.java ! src/solaris/classes/sun/awt/X11/XTrayIconPeer.java ! src/solaris/classes/sun/awt/X11/XWindowPeer.java ! src/windows/classes/sun/awt/windows/WDialogPeer.java ! src/windows/classes/sun/awt/windows/WFramePeer.java ! src/windows/classes/sun/awt/windows/WWindowPeer.java ! src/windows/native/sun/windows/awt_Dialog.cpp ! src/windows/native/sun/windows/awt_Window.cpp ! src/windows/native/sun/windows/awt_Window.h + test/java/awt/Window/WindowType/WindowType.java Changeset: 6ffb01da29ce Author: anthony Date: 2009-12-02 14:51 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/6ffb01da29ce 6901021: Security Warning Icon not getting displayed properly when frame loses focus Summary: Make sure the gray icon is selected when hiding the security warning Reviewed-by: art, dcherepanov ! src/windows/native/sun/windows/awt_Toolkit.cpp ! src/windows/native/sun/windows/awt_Window.cpp Changeset: 35d43184687d Author: ant Date: 2009-12-02 17:26 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/35d43184687d 6566375: PIT : test/java/awt/KeyboardFocusmanager/TypeAhead/TestDialogTypeAhead.html Reviewed-by: art, dcherepanov ! test/java/awt/KeyboardFocusmanager/TypeAhead/TestDialogTypeAhead.java Changeset: 44f04b551d8f Author: ant Date: 2009-12-04 15:07 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/44f04b551d8f 6903354: deadlock involving Component.show & SunToolkit.getImageFromHash Reviewed-by: art, bae ! src/share/classes/sun/awt/SunToolkit.java Changeset: 4ff2fe6c2738 Author: yan Date: 2009-12-07 13:32 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/4ff2fe6c2738 5099725: AWT doesn't seem to handle MappingNotify events under X11. 5036807: Pressing action keys "STOP/AGAIN/COMPOSE" generates keycode of F11/F12 keys. 4787377: VK_STOP key on Solaris generates wrong Key Code Summary: Added an event processing lumped with similar native code for similar bugs. Reviewed-by: art ! make/sun/xawt/mapfile-vers ! src/solaris/classes/sun/awt/X11/XEmbedHelper.java ! src/solaris/classes/sun/awt/X11/XKeysym.java ! src/solaris/classes/sun/awt/X11/XToolkit.java ! src/solaris/classes/sun/awt/X11/XlibWrapper.java ! src/solaris/classes/sun/awt/X11/keysym2ucs.h ! src/solaris/native/sun/xawt/XlibWrapper.c Changeset: e4c0c37f6ad5 Author: dcherepanov Date: 2009-12-07 13:43 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/e4c0c37f6ad5 6823138: Need to replace ComponentAccessor with AWTAccessor Reviewed-by: art, anthony ! src/share/classes/java/awt/Component.java ! src/share/classes/java/awt/Window.java ! src/share/classes/sun/awt/AWTAccessor.java - src/share/classes/sun/awt/ComponentAccessor.java ! src/share/classes/sun/awt/GlobalCursorManager.java ! src/share/classes/sun/awt/SunToolkit.java - src/share/classes/sun/awt/WindowAccessor.java ! src/solaris/classes/sun/awt/X11/XComponentPeer.java ! src/solaris/classes/sun/awt/X11/XContentWindow.java ! src/solaris/classes/sun/awt/X11/XDecoratedPeer.java ! src/solaris/classes/sun/awt/X11/XDialogPeer.java ! src/solaris/classes/sun/awt/X11/XDragSourceContextPeer.java ! src/solaris/classes/sun/awt/X11/XEmbedChildProxy.java ! src/solaris/classes/sun/awt/X11/XGlobalCursorManager.java ! src/solaris/classes/sun/awt/X11/XTextAreaPeer.java ! src/solaris/classes/sun/awt/X11/XTextFieldPeer.java ! src/solaris/classes/sun/awt/X11/XToolkit.java ! src/solaris/classes/sun/awt/X11/XTrayIconPeer.java ! src/solaris/classes/sun/awt/X11/XWindow.java ! src/solaris/classes/sun/awt/X11/XWindowPeer.java ! src/windows/classes/sun/awt/windows/WCanvasPeer.java ! src/windows/classes/sun/awt/windows/WComponentPeer.java ! src/windows/classes/sun/awt/windows/WDialogPeer.java ! src/windows/classes/sun/awt/windows/WFileDialogPeer.java ! src/windows/classes/sun/awt/windows/WPrintDialogPeer.java Changeset: 5ab49c5b9423 Author: dcherepanov Date: 2009-12-07 14:07 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/5ab49c5b9423 Merge ! src/solaris/classes/sun/awt/X11/XToolkit.java Changeset: 384659657472 Author: ant Date: 2009-12-07 16:38 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/384659657472 6903890: SWT_AWT focus issues when a dialog is shown/disposed, on X11 Reviewed-by: art, dcherepanov ! src/solaris/classes/sun/awt/X11/XEmbedClientHelper.java Changeset: 725bf9c81f86 Author: mchung Date: 2009-12-08 09:02 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/725bf9c81f86 6907568: java/awt/KeyboardFocusManager.java inproperly merged and lost a changeset Summary: Reapply fix for 6879044 in java.awt.KeyboardFocusManager Reviewed-by: dcherepanov, asaha ! src/share/classes/java/awt/KeyboardFocusManager.java Changeset: 624683dd9066 Author: anthony Date: 2009-12-09 14:02 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/624683dd9066 6900622: Security warning icon is not getting displayed properly for tooltip Summary: Pass a correct value for the hWndInsertAfter argument to the ::SetWindowPos() function Reviewed-by: art, dcherepanov ! src/windows/native/sun/windows/awt_Window.cpp ! src/windows/native/sun/windows/awt_Window.h Changeset: e5ed96d088dd Author: dav Date: 2009-12-09 14:33 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/e5ed96d088dd 6903893: Fix failed for CR 6834576: RemoveChild/ test fail with deadlock on rhel and sles Reviewed-by: dcherepanov, art ! src/solaris/classes/sun/awt/X11/XToolkit.java Changeset: fb57c1bd637a Author: lana Date: 2009-12-10 09:46 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/fb57c1bd637a Merge - src/share/classes/sun/awt/ComponentAccessor.java - src/share/classes/sun/awt/WindowAccessor.java Changeset: 7bcb1864f424 Author: rupashka Date: 2009-11-23 20:57 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/7bcb1864f424 6823603: Generics: JList Reviewed-by: peterz, alexp Contributed-by: fbrunnerlist at gmx.ch ! src/share/classes/javax/swing/AbstractListModel.java ! src/share/classes/javax/swing/DefaultListCellRenderer.java ! src/share/classes/javax/swing/DefaultListModel.java ! src/share/classes/javax/swing/JList.java ! src/share/classes/javax/swing/ListCellRenderer.java ! src/share/classes/javax/swing/ListModel.java + test/javax/swing/JList/6823603/bug6823603.java Changeset: 496c2f20dfac Author: peterz Date: 2009-11-25 20:47 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/496c2f20dfac 6888156: With GTK Look and Feel Icons cannot be rendered in Jtable Cells Reviewed-by: rupashka ! src/share/classes/javax/swing/JTable.java + test/javax/swing/JTable/Test6888156.java Changeset: bb05c76b5c2f Author: lana Date: 2009-11-25 14:37 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/bb05c76b5c2f Merge - make/tools/fontchecker/Makefile - make/tools/src/build/tools/fontchecker/FontCheckDummy.java - make/tools/src/build/tools/fontchecker/FontChecker.java - make/tools/src/build/tools/fontchecker/FontCheckerConstants.java - make/tools/src/build/tools/fontchecker/FontFileFilter.java - make/tools/src/build/tools/fontchecker/README.txt - src/share/classes/com/sun/jmx/event/DaemonThreadFactory.java - src/share/classes/com/sun/jmx/event/EventBuffer.java - src/share/classes/com/sun/jmx/event/EventClientFactory.java - src/share/classes/com/sun/jmx/event/EventConnection.java - src/share/classes/com/sun/jmx/event/EventParams.java - src/share/classes/com/sun/jmx/event/LeaseManager.java - src/share/classes/com/sun/jmx/event/LeaseRenewer.java - src/share/classes/com/sun/jmx/event/ReceiverBuffer.java - src/share/classes/com/sun/jmx/event/RepeatedSingletonJob.java - src/share/classes/com/sun/jmx/interceptor/DispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/DomainDispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/MBeanServerInterceptorSupport.java - src/share/classes/com/sun/jmx/interceptor/NamespaceDispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/SingleMBeanForwarder.java - src/share/classes/com/sun/jmx/mbeanserver/MBeanInjector.java - src/share/classes/com/sun/jmx/mbeanserver/NotificationMBeanSupport.java - src/share/classes/com/sun/jmx/mbeanserver/NotifySupport.java - src/share/classes/com/sun/jmx/mbeanserver/PerThreadGroupPool.java - src/share/classes/com/sun/jmx/namespace/DomainInterceptor.java - src/share/classes/com/sun/jmx/namespace/HandlerInterceptor.java - src/share/classes/com/sun/jmx/namespace/NamespaceInterceptor.java - src/share/classes/com/sun/jmx/namespace/ObjectNameRouter.java - src/share/classes/com/sun/jmx/namespace/RoutingConnectionProxy.java - src/share/classes/com/sun/jmx/namespace/RoutingMBeanServerConnection.java - src/share/classes/com/sun/jmx/namespace/RoutingProxy.java - src/share/classes/com/sun/jmx/namespace/RoutingServerProxy.java - src/share/classes/com/sun/jmx/namespace/package.html - src/share/classes/com/sun/jmx/namespace/serial/DefaultRewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/IdentityProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/JMXNamespaceContext.java - src/share/classes/com/sun/jmx/namespace/serial/RewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/RoutingOnlyProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/SerialRewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/package.html - src/share/classes/com/sun/jmx/remote/internal/ProxyInputStream.java - src/share/classes/com/sun/jmx/remote/util/EventClientConnection.java - src/share/classes/java/nio/ByteBufferAs-X-Buffer.java - src/share/classes/java/nio/Direct-X-Buffer-bin.java - src/share/classes/java/nio/Direct-X-Buffer.java - src/share/classes/java/nio/Heap-X-Buffer.java - src/share/classes/java/nio/X-Buffer-bin.java - src/share/classes/java/nio/X-Buffer.java - src/share/classes/java/nio/charset/Charset-X-Coder.java - src/share/classes/javax/management/ClientContext.java - src/share/classes/javax/management/Description.java - src/share/classes/javax/management/DescriptorFields.java - src/share/classes/javax/management/DynamicWrapperMBean.java - src/share/classes/javax/management/GenericMBeanException.java - src/share/classes/javax/management/Impact.java - src/share/classes/javax/management/MBean.java - src/share/classes/javax/management/ManagedAttribute.java - src/share/classes/javax/management/ManagedOperation.java - src/share/classes/javax/management/NotificationInfo.java - src/share/classes/javax/management/NotificationInfos.java - src/share/classes/javax/management/ObjectNameTemplate.java - src/share/classes/javax/management/QueryNotificationFilter.java - src/share/classes/javax/management/QueryParser.java - src/share/classes/javax/management/SendNotification.java - src/share/classes/javax/management/event/EventClient.java - src/share/classes/javax/management/event/EventClientDelegate.java - src/share/classes/javax/management/event/EventClientDelegateMBean.java - src/share/classes/javax/management/event/EventClientNotFoundException.java - src/share/classes/javax/management/event/EventConsumer.java - src/share/classes/javax/management/event/EventForwarder.java - src/share/classes/javax/management/event/EventReceiver.java - src/share/classes/javax/management/event/EventRelay.java - src/share/classes/javax/management/event/EventSubscriber.java - src/share/classes/javax/management/event/FetchingEventForwarder.java - src/share/classes/javax/management/event/FetchingEventRelay.java - src/share/classes/javax/management/event/ListenerInfo.java - src/share/classes/javax/management/event/NotificationManager.java - src/share/classes/javax/management/event/RMIPushEventForwarder.java - src/share/classes/javax/management/event/RMIPushEventRelay.java - src/share/classes/javax/management/event/RMIPushServer.java - src/share/classes/javax/management/event/package-info.java - src/share/classes/javax/management/namespace/JMXDomain.java - src/share/classes/javax/management/namespace/JMXNamespace.java - src/share/classes/javax/management/namespace/JMXNamespaceMBean.java - src/share/classes/javax/management/namespace/JMXNamespacePermission.java - src/share/classes/javax/management/namespace/JMXNamespaceView.java - src/share/classes/javax/management/namespace/JMXNamespaces.java - src/share/classes/javax/management/namespace/JMXRemoteNamespace.java - src/share/classes/javax/management/namespace/JMXRemoteNamespaceMBean.java - src/share/classes/javax/management/namespace/MBeanServerConnectionWrapper.java - src/share/classes/javax/management/namespace/MBeanServerSupport.java - src/share/classes/javax/management/namespace/VirtualEventManager.java - src/share/classes/javax/management/namespace/package-info.java - src/share/classes/javax/management/openmbean/MXBeanMapping.java - src/share/classes/javax/management/openmbean/MXBeanMappingClass.java - src/share/classes/javax/management/openmbean/MXBeanMappingFactory.java - src/share/classes/javax/management/openmbean/MXBeanMappingFactoryClass.java - src/share/classes/javax/management/remote/IdentityMBeanServerForwarder.java - src/share/classes/sun/misc/Version-template.java - src/share/classes/sun/net/www/protocol/http/HttpLogFormatter.java - src/share/classes/sun/net/www/protocol/http/NegotiateCallbackHandler.java - src/share/classes/sun/net/www/protocol/http/NegotiatorImpl.java - src/share/classes/sun/security/provider/certpath/LDAPCertStore.java - src/share/classes/sun/security/ssl/KerberosPreMasterSecret.java - src/share/classes/sun/tools/jconsole/Version-template.java - src/windows/classes/sun/net/www/protocol/http/NTLMAuthSequence.java - src/windows/classes/sun/net/www/protocol/http/NTLMAuthentication.java - src/windows/native/sun/net/www/protocol/http/NTLMAuthSequence.c - test/java/nio/Buffer/Basic-X.java - test/java/nio/Buffer/CopyDirect-X-Memory.java - test/javax/management/Introspector/AnnotatedMBeanTest.java - test/javax/management/Introspector/AnnotatedNotificationInfoTest.java - test/javax/management/Introspector/ExceptionsDescriptorTest.java - test/javax/management/Introspector/MBeanDescriptionTest.java - test/javax/management/Introspector/ObjectNameTemplateTest.java - test/javax/management/Introspector/ParameterNameTest.java - test/javax/management/Introspector/ResourceInjectionTest.java - test/javax/management/MBeanServer/AttributeListMapTest.java - test/javax/management/MBeanServer/DynamicWrapperMBeanTest.java - test/javax/management/MBeanServer/InstanceNotFoundExceptionTest.java - test/javax/management/MBeanServerFactory/NamedMBeanServerTest.java - test/javax/management/ObjectName/ValueOfTest.java - test/javax/management/context/ContextForwarderTest.java - test/javax/management/context/ContextTest.java - test/javax/management/context/LocaleAwareBroadcasterTest.java - test/javax/management/context/LocaleTest.java - test/javax/management/context/LocalizableTest.java - test/javax/management/context/RemoteContextTest.java - test/javax/management/context/localizable/MBeanDescriptions.properties - test/javax/management/context/localizable/MBeanDescriptions_fr.java - test/javax/management/context/localizable/Whatsit.java - test/javax/management/context/localizable/WhatsitMBean.java - test/javax/management/descriptor/DescriptorConstructorTest.java - test/javax/management/eventService/AddRemoveListenerTest.java - test/javax/management/eventService/CustomForwarderTest.java - test/javax/management/eventService/EventClientExecutorTest.java - test/javax/management/eventService/EventClientThreadTest.java - test/javax/management/eventService/EventDelegateSecurityTest.java - test/javax/management/eventService/EventManagerTest.java - test/javax/management/eventService/FetchingTest.java - test/javax/management/eventService/LeaseManagerDeadlockTest.java - test/javax/management/eventService/LeaseTest.java - test/javax/management/eventService/ListenerTest.java - test/javax/management/eventService/MyFetchingEventForwarder.java - test/javax/management/eventService/NotSerializableNotifTest.java - test/javax/management/eventService/PublishTest.java - test/javax/management/eventService/ReconnectableConnectorTest.java - test/javax/management/eventService/SharingThreadTest.java - test/javax/management/eventService/SubUnsubTest.java - test/javax/management/eventService/SubscribeTest.java - test/javax/management/eventService/UsingEventService.java - test/javax/management/interop/MBeanExceptionInteropTest.java - test/javax/management/modelmbean/DefaultDescriptorFieldTest.java - test/javax/management/monitor/InstantiateMonitorNotificationTest.java - test/javax/management/mxbean/CustomTypeTest.java - test/javax/management/mxbean/JMXServiceURLTest.java - test/javax/management/mxbean/customtypes/CustomLongMXBean.java - test/javax/management/mxbean/customtypes/CustomMXBean.java - test/javax/management/mxbean/customtypes/IntegerIsLongFactory.java - test/javax/management/mxbean/customtypes/IntegerIsStringFactory.java - test/javax/management/mxbean/customtypes/package-info.java - test/javax/management/namespace/DomainCreationTest.java - test/javax/management/namespace/EventWithNamespaceControlTest.java - test/javax/management/namespace/EventWithNamespaceTest.java - test/javax/management/namespace/ExportNamespaceTest.java - test/javax/management/namespace/JMXDomainTest.java - test/javax/management/namespace/JMXNamespaceSecurityTest.java - test/javax/management/namespace/JMXNamespaceTest.java - test/javax/management/namespace/JMXNamespaceViewTest.java - test/javax/management/namespace/JMXNamespacesTest.java - test/javax/management/namespace/JMXRemoteNamespaceTest.java - test/javax/management/namespace/JMXRemoteTargetNamespace.java - test/javax/management/namespace/LazyDomainTest.java - test/javax/management/namespace/LeadingSeparatorsTest.java - test/javax/management/namespace/MXBeanRefTest.java - test/javax/management/namespace/NamespaceController.java - test/javax/management/namespace/NamespaceControllerMBean.java - test/javax/management/namespace/NamespaceCreationTest.java - test/javax/management/namespace/NamespaceNotificationsTest.java - test/javax/management/namespace/NullDomainObjectNameTest.java - test/javax/management/namespace/NullObjectNameTest.java - test/javax/management/namespace/QueryNamesTest.java - test/javax/management/namespace/RemoveNotificationListenerTest.java - test/javax/management/namespace/RoutingServerProxyTest.java - test/javax/management/namespace/SerialParamProcessorTest.java - test/javax/management/namespace/SourceNamespaceTest.java - test/javax/management/namespace/VirtualMBeanNotifTest.java - test/javax/management/namespace/VirtualMBeanTest.java - test/javax/management/namespace/VirtualNamespaceQueryTest.java - test/javax/management/namespace/VirtualPropsTest.java - test/javax/management/namespace/Wombat.java - test/javax/management/namespace/WombatMBean.java - test/javax/management/namespace/namespace.policy - test/javax/management/notification/SupportClearTest.java - test/javax/management/openmbean/CompositeDataToMapTest.java - test/javax/management/openmbean/GenericMBeanExceptionTest.java - test/javax/management/query/QueryDottedAttrTest.java - test/javax/management/query/QueryNotifFilterTest.java - test/javax/management/query/QueryParseTest.java - test/javax/management/remote/mandatory/connectorServer/CloseConnectionTest.java - test/javax/management/remote/mandatory/connectorServer/ForwarderChainTest.java - test/javax/management/remote/mandatory/connectorServer/StandardForwardersTest.java - test/javax/management/remote/mandatory/version/JMXSpecVersionTest.java - test/javax/management/standardmbean/FindMethodTest.java - test/javax/management/standardmbean/RegistrationTest.java Changeset: d505826eabca Author: okutsu Date: 2009-11-27 16:20 +0900 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/d505826eabca 6904997: (tz) Windows-only: tzmappings needs update for KB976098 Reviewed-by: peytoia ! src/windows/lib/tzmappings Changeset: 76b887e939d4 Author: malenkov Date: 2009-11-27 15:24 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/76b887e939d4 5102804: Memory leak in Introspector.getBeanInfo(Class) for custom BeanInfo: Class param Reviewed-by: peterz ! src/share/classes/com/sun/beans/WeakCache.java ! src/share/classes/java/beans/Introspector.java + test/java/beans/Introspector/Test5102804.java Changeset: 965ffc33d9a2 Author: amenkov Date: 2009-11-06 19:47 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/965ffc33d9a2 6744801: JCK api/javax_sound/interactive/RecordSoundTest.html#RecordSoundTest fails on Solaris10 x64 for -d64 Reviewed-by: dav ! make/javax/sound/Makefile Changeset: fe03ca4901a4 Author: amenkov Date: 2009-11-06 19:48 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/fe03ca4901a4 6887318: Incorrect constant used in DirectSound Mixer implementation Reviewed-by: uta ! src/windows/native/com/sun/media/sound/PLATFORM_API_WinOS_DirectSound.cpp Changeset: 1d7b87d34cf8 Author: kalli Date: 2009-11-27 17:13 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/1d7b87d34cf8 6833357: Improve time-stamp support in Gervill to reduce jitter Reviewed-by: amenkov + src/share/classes/com/sun/media/sound/MidiDeviceReceiver.java ! src/share/classes/com/sun/media/sound/SoftAudioBuffer.java ! src/share/classes/com/sun/media/sound/SoftChannel.java ! src/share/classes/com/sun/media/sound/SoftLimiter.java ! src/share/classes/com/sun/media/sound/SoftMainMixer.java ! src/share/classes/com/sun/media/sound/SoftReceiver.java ! src/share/classes/com/sun/media/sound/SoftSynthesizer.java ! src/share/classes/com/sun/media/sound/SoftVoice.java + test/javax/sound/midi/Gervill/SoftReceiver/GetMidiDevice.java + test/javax/sound/midi/Gervill/SoftSynthesizer/TestPreciseTimestampRendering.java Changeset: e7483b15706f Author: kalli Date: 2009-11-27 17:36 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/e7483b15706f 6823449: Gervill: ArrayIndexOutOfBoundsException thrown when trying to play too may voices at same time Reviewed-by: amenkov ! src/share/classes/com/sun/media/sound/SoftChannel.java + test/javax/sound/midi/Gervill/SoftChannel/NoteOverFlowTest2.java Changeset: c5cefcfdac9a Author: amenkov Date: 2009-11-27 17:54 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/c5cefcfdac9a 6832063: OpenJDK fails to open the default ALSA device when PulseAudio is enabled Reviewed-by: amenkov Contributed-by: omajid at redhat.com ! src/solaris/native/com/sun/media/sound/PLATFORM_API_LinuxOS_ALSA_PCM.c Changeset: f20c9e76c3e0 Author: amenkov Date: 2009-11-27 18:36 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/f20c9e76c3e0 Merge ! make/javax/sound/Makefile - make/tools/fontchecker/Makefile - make/tools/src/build/tools/fontchecker/FontCheckDummy.java - make/tools/src/build/tools/fontchecker/FontChecker.java - make/tools/src/build/tools/fontchecker/FontCheckerConstants.java - make/tools/src/build/tools/fontchecker/FontFileFilter.java - make/tools/src/build/tools/fontchecker/README.txt - src/share/classes/com/sun/jmx/event/DaemonThreadFactory.java - src/share/classes/com/sun/jmx/event/EventBuffer.java - src/share/classes/com/sun/jmx/event/EventClientFactory.java - src/share/classes/com/sun/jmx/event/EventConnection.java - src/share/classes/com/sun/jmx/event/EventParams.java - src/share/classes/com/sun/jmx/event/LeaseManager.java - src/share/classes/com/sun/jmx/event/LeaseRenewer.java - src/share/classes/com/sun/jmx/event/ReceiverBuffer.java - src/share/classes/com/sun/jmx/event/RepeatedSingletonJob.java - src/share/classes/com/sun/jmx/interceptor/DispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/DomainDispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/MBeanServerInterceptorSupport.java - src/share/classes/com/sun/jmx/interceptor/NamespaceDispatchInterceptor.java - src/share/classes/com/sun/jmx/interceptor/SingleMBeanForwarder.java - src/share/classes/com/sun/jmx/mbeanserver/MBeanInjector.java - src/share/classes/com/sun/jmx/mbeanserver/NotificationMBeanSupport.java - src/share/classes/com/sun/jmx/mbeanserver/NotifySupport.java - src/share/classes/com/sun/jmx/mbeanserver/PerThreadGroupPool.java - src/share/classes/com/sun/jmx/namespace/DomainInterceptor.java - src/share/classes/com/sun/jmx/namespace/HandlerInterceptor.java - src/share/classes/com/sun/jmx/namespace/NamespaceInterceptor.java - src/share/classes/com/sun/jmx/namespace/ObjectNameRouter.java - src/share/classes/com/sun/jmx/namespace/RoutingConnectionProxy.java - src/share/classes/com/sun/jmx/namespace/RoutingMBeanServerConnection.java - src/share/classes/com/sun/jmx/namespace/RoutingProxy.java - src/share/classes/com/sun/jmx/namespace/RoutingServerProxy.java - src/share/classes/com/sun/jmx/namespace/package.html - src/share/classes/com/sun/jmx/namespace/serial/DefaultRewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/IdentityProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/JMXNamespaceContext.java - src/share/classes/com/sun/jmx/namespace/serial/RewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/RoutingOnlyProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/SerialRewritingProcessor.java - src/share/classes/com/sun/jmx/namespace/serial/package.html - src/share/classes/com/sun/jmx/remote/internal/ProxyInputStream.java - src/share/classes/com/sun/jmx/remote/util/EventClientConnection.java - src/share/classes/java/nio/ByteBufferAs-X-Buffer.java - src/share/classes/java/nio/Direct-X-Buffer-bin.java - src/share/classes/java/nio/Direct-X-Buffer.java - src/share/classes/java/nio/Heap-X-Buffer.java - src/share/classes/java/nio/X-Buffer-bin.java - src/share/classes/java/nio/X-Buffer.java - src/share/classes/java/nio/charset/Charset-X-Coder.java - src/share/classes/javax/management/ClientContext.java - src/share/classes/javax/management/Description.java - src/share/classes/javax/management/DescriptorFields.java - src/share/classes/javax/management/DynamicWrapperMBean.java - src/share/classes/javax/management/GenericMBeanException.java - src/share/classes/javax/management/Impact.java - src/share/classes/javax/management/MBean.java - src/share/classes/javax/management/ManagedAttribute.java - src/share/classes/javax/management/ManagedOperation.java - src/share/classes/javax/management/NotificationInfo.java - src/share/classes/javax/management/NotificationInfos.java - src/share/classes/javax/management/ObjectNameTemplate.java - src/share/classes/javax/management/QueryNotificationFilter.java - src/share/classes/javax/management/QueryParser.java - src/share/classes/javax/management/SendNotification.java - src/share/classes/javax/management/event/EventClient.java - src/share/classes/javax/management/event/EventClientDelegate.java - src/share/classes/javax/management/event/EventClientDelegateMBean.java - src/share/classes/javax/management/event/EventClientNotFoundException.java - src/share/classes/javax/management/event/EventConsumer.java - src/share/classes/javax/management/event/EventForwarder.java - src/share/classes/javax/management/event/EventReceiver.java - src/share/classes/javax/management/event/EventRelay.java - src/share/classes/javax/management/event/EventSubscriber.java - src/share/classes/javax/management/event/FetchingEventForwarder.java - src/share/classes/javax/management/event/FetchingEventRelay.java - src/share/classes/javax/management/event/ListenerInfo.java - src/share/classes/javax/management/event/NotificationManager.java - src/share/classes/javax/management/event/RMIPushEventForwarder.java - src/share/classes/javax/management/event/RMIPushEventRelay.java - src/share/classes/javax/management/event/RMIPushServer.java - src/share/classes/javax/management/event/package-info.java - src/share/classes/javax/management/namespace/JMXDomain.java - src/share/classes/javax/management/namespace/JMXNamespace.java - src/share/classes/javax/management/namespace/JMXNamespaceMBean.java - src/share/classes/javax/management/namespace/JMXNamespacePermission.java - src/share/classes/javax/management/namespace/JMXNamespaceView.java - src/share/classes/javax/management/namespace/JMXNamespaces.java - src/share/classes/javax/management/namespace/JMXRemoteNamespace.java - src/share/classes/javax/management/namespace/JMXRemoteNamespaceMBean.java - src/share/classes/javax/management/namespace/MBeanServerConnectionWrapper.java - src/share/classes/javax/management/namespace/MBeanServerSupport.java - src/share/classes/javax/management/namespace/VirtualEventManager.java - src/share/classes/javax/management/namespace/package-info.java - src/share/classes/javax/management/openmbean/MXBeanMapping.java - src/share/classes/javax/management/openmbean/MXBeanMappingClass.java - src/share/classes/javax/management/openmbean/MXBeanMappingFactory.java - src/share/classes/javax/management/openmbean/MXBeanMappingFactoryClass.java - src/share/classes/javax/management/remote/IdentityMBeanServerForwarder.java - src/share/classes/sun/misc/Version-template.java - src/share/classes/sun/net/www/protocol/http/HttpLogFormatter.java - src/share/classes/sun/net/www/protocol/http/NegotiateCallbackHandler.java - src/share/classes/sun/net/www/protocol/http/NegotiatorImpl.java - src/share/classes/sun/security/provider/certpath/LDAPCertStore.java - src/share/classes/sun/security/ssl/KerberosPreMasterSecret.java - src/share/classes/sun/tools/jconsole/Version-template.java - src/windows/classes/sun/net/www/protocol/http/NTLMAuthSequence.java - src/windows/classes/sun/net/www/protocol/http/NTLMAuthentication.java - src/windows/native/sun/net/www/protocol/http/NTLMAuthSequence.c - test/java/nio/Buffer/Basic-X.java - test/java/nio/Buffer/CopyDirect-X-Memory.java - test/javax/management/Introspector/AnnotatedMBeanTest.java - test/javax/management/Introspector/AnnotatedNotificationInfoTest.java - test/javax/management/Introspector/ExceptionsDescriptorTest.java - test/javax/management/Introspector/MBeanDescriptionTest.java - test/javax/management/Introspector/ObjectNameTemplateTest.java - test/javax/management/Introspector/ParameterNameTest.java - test/javax/management/Introspector/ResourceInjectionTest.java - test/javax/management/MBeanServer/AttributeListMapTest.java - test/javax/management/MBeanServer/DynamicWrapperMBeanTest.java - test/javax/management/MBeanServer/InstanceNotFoundExceptionTest.java - test/javax/management/MBeanServerFactory/NamedMBeanServerTest.java - test/javax/management/ObjectName/ValueOfTest.java - test/javax/management/context/ContextForwarderTest.java - test/javax/management/context/ContextTest.java - test/javax/management/context/LocaleAwareBroadcasterTest.java - test/javax/management/context/LocaleTest.java - test/javax/management/context/LocalizableTest.java - test/javax/management/context/RemoteContextTest.java - test/javax/management/context/localizable/MBeanDescriptions.properties - test/javax/management/context/localizable/MBeanDescriptions_fr.java - test/javax/management/context/localizable/Whatsit.java - test/javax/management/context/localizable/WhatsitMBean.java - test/javax/management/descriptor/DescriptorConstructorTest.java - test/javax/management/eventService/AddRemoveListenerTest.java - test/javax/management/eventService/CustomForwarderTest.java - test/javax/management/eventService/EventClientExecutorTest.java - test/javax/management/eventService/EventClientThreadTest.java - test/javax/management/eventService/EventDelegateSecurityTest.java - test/javax/management/eventService/EventManagerTest.java - test/javax/management/eventService/FetchingTest.java - test/javax/management/eventService/LeaseManagerDeadlockTest.java - test/javax/management/eventService/LeaseTest.java - test/javax/management/eventService/ListenerTest.java - test/javax/management/eventService/MyFetchingEventForwarder.java - test/javax/management/eventService/NotSerializableNotifTest.java - test/javax/management/eventService/PublishTest.java - test/javax/management/eventService/ReconnectableConnectorTest.java - test/javax/management/eventService/SharingThreadTest.java - test/javax/management/eventService/SubUnsubTest.java - test/javax/management/eventService/SubscribeTest.java - test/javax/management/eventService/UsingEventService.java - test/javax/management/interop/MBeanExceptionInteropTest.java - test/javax/management/modelmbean/DefaultDescriptorFieldTest.java - test/javax/management/monitor/InstantiateMonitorNotificationTest.java - test/javax/management/mxbean/CustomTypeTest.java - test/javax/management/mxbean/JMXServiceURLTest.java - test/javax/management/mxbean/customtypes/CustomLongMXBean.java - test/javax/management/mxbean/customtypes/CustomMXBean.java - test/javax/management/mxbean/customtypes/IntegerIsLongFactory.java - test/javax/management/mxbean/customtypes/IntegerIsStringFactory.java - test/javax/management/mxbean/customtypes/package-info.java - test/javax/management/namespace/DomainCreationTest.java - test/javax/management/namespace/EventWithNamespaceControlTest.java - test/javax/management/namespace/EventWithNamespaceTest.java - test/javax/management/namespace/ExportNamespaceTest.java - test/javax/management/namespace/JMXDomainTest.java - test/javax/management/namespace/JMXNamespaceSecurityTest.java - test/javax/management/namespace/JMXNamespaceTest.java - test/javax/management/namespace/JMXNamespaceViewTest.java - test/javax/management/namespace/JMXNamespacesTest.java - test/javax/management/namespace/JMXRemoteNamespaceTest.java - test/javax/management/namespace/JMXRemoteTargetNamespace.java - test/javax/management/namespace/LazyDomainTest.java - test/javax/management/namespace/LeadingSeparatorsTest.java - test/javax/management/namespace/MXBeanRefTest.java - test/javax/management/namespace/NamespaceController.java - test/javax/management/namespace/NamespaceControllerMBean.java - test/javax/management/namespace/NamespaceCreationTest.java - test/javax/management/namespace/NamespaceNotificationsTest.java - test/javax/management/namespace/NullDomainObjectNameTest.java - test/javax/management/namespace/NullObjectNameTest.java - test/javax/management/namespace/QueryNamesTest.java - test/javax/management/namespace/RemoveNotificationListenerTest.java - test/javax/management/namespace/RoutingServerProxyTest.java - test/javax/management/namespace/SerialParamProcessorTest.java - test/javax/management/namespace/SourceNamespaceTest.java - test/javax/management/namespace/VirtualMBeanNotifTest.java - test/javax/management/namespace/VirtualMBeanTest.java - test/javax/management/namespace/VirtualNamespaceQueryTest.java - test/javax/management/namespace/VirtualPropsTest.java - test/javax/management/namespace/Wombat.java - test/javax/management/namespace/WombatMBean.java - test/javax/management/namespace/namespace.policy - test/javax/management/notification/SupportClearTest.java - test/javax/management/openmbean/CompositeDataToMapTest.java - test/javax/management/openmbean/GenericMBeanExceptionTest.java - test/javax/management/query/QueryDottedAttrTest.java - test/javax/management/query/QueryNotifFilterTest.java - test/javax/management/query/QueryParseTest.java - test/javax/management/remote/mandatory/connectorServer/CloseConnectionTest.java - test/javax/management/remote/mandatory/connectorServer/ForwarderChainTest.java - test/javax/management/remote/mandatory/connectorServer/StandardForwardersTest.java - test/javax/management/remote/mandatory/version/JMXSpecVersionTest.java - test/javax/management/standardmbean/FindMethodTest.java - test/javax/management/standardmbean/RegistrationTest.java Changeset: fd3f28151089 Author: amenkov Date: 2009-11-27 18:38 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/fd3f28151089 Merge Changeset: efab4331ec26 Author: malenkov Date: 2009-11-30 18:26 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/efab4331ec26 6905515: Test failed: java/beans/XMLEncoder/6329581/Test6329581.java Reviewed-by: peterz ! test/java/beans/XMLEncoder/6329581/Test6329581.java Changeset: 31fac6705b41 Author: malenkov Date: 2009-11-30 18:30 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/31fac6705b41 6905516: Test failed: java/beans/EventHandler/Test6788531.java Reviewed-by: peterz ! test/java/beans/EventHandler/Test6788531.java Changeset: 931cfd3ba5b6 Author: malenkov Date: 2009-12-09 11:34 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/931cfd3ba5b6 4638075: DOC: Doc for java.beans.PropertyDescriptor.getPropertyType() is incorrect. Reviewed-by: gsm ! src/share/classes/java/beans/IndexedPropertyDescriptor.java ! src/share/classes/java/beans/PropertyDescriptor.java Changeset: d72275039339 Author: malenkov Date: 2009-12-09 11:38 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/d72275039339 6905574: DOC: Introspector's javadoc contains wrong statement Reviewed-by: gsm ! src/share/classes/java/beans/Introspector.java Changeset: f012e2c094ff Author: peterz Date: 2009-12-10 12:08 +0300 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/f012e2c094ff 6827653: Make Synth UI classes public Reviewed-by: alexp ! src/share/classes/com/sun/java/swing/plaf/gtk/GTKPainter.java ! src/share/classes/javax/swing/plaf/ComponentUI.java ! src/share/classes/javax/swing/plaf/basic/BasicComboBoxEditor.java ! src/share/classes/javax/swing/plaf/basic/BasicComboBoxUI.java ! src/share/classes/javax/swing/plaf/basic/BasicLabelUI.java ! src/share/classes/javax/swing/plaf/basic/BasicListUI.java ! src/share/classes/javax/swing/plaf/basic/BasicMenuItemUI.java ! src/share/classes/javax/swing/plaf/basic/BasicScrollBarUI.java ! src/share/classes/javax/swing/plaf/basic/BasicSliderUI.java ! src/share/classes/javax/swing/plaf/basic/BasicSpinnerUI.java ! src/share/classes/javax/swing/plaf/basic/BasicSplitPaneUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTableHeaderUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTextUI.java ! src/share/classes/javax/swing/plaf/basic/BasicToolBarUI.java ! src/share/classes/javax/swing/plaf/basic/BasicTreeUI.java ! src/share/classes/javax/swing/plaf/basic/DefaultMenuLayout.java ! src/share/classes/javax/swing/plaf/nimbus/NimbusLookAndFeel.java ! src/share/classes/javax/swing/plaf/nimbus/package.html - src/share/classes/javax/swing/plaf/synth/DefaultMenuLayout.java ! src/share/classes/javax/swing/plaf/synth/SynthBorder.java ! src/share/classes/javax/swing/plaf/synth/SynthButtonUI.java ! src/share/classes/javax/swing/plaf/synth/SynthCheckBoxMenuItemUI.java ! src/share/classes/javax/swing/plaf/synth/SynthCheckBoxUI.java ! src/share/classes/javax/swing/plaf/synth/SynthColorChooserUI.java ! src/share/classes/javax/swing/plaf/synth/SynthComboBoxUI.java ! src/share/classes/javax/swing/plaf/synth/SynthDefaultLookup.java ! src/share/classes/javax/swing/plaf/synth/SynthDesktopIconUI.java ! src/share/classes/javax/swing/plaf/synth/SynthDesktopPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthEditorPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthFormattedTextFieldUI.java ! src/share/classes/javax/swing/plaf/synth/SynthInternalFrameTitlePane.java ! src/share/classes/javax/swing/plaf/synth/SynthInternalFrameUI.java ! src/share/classes/javax/swing/plaf/synth/SynthLabelUI.java ! src/share/classes/javax/swing/plaf/synth/SynthListUI.java ! src/share/classes/javax/swing/plaf/synth/SynthLookAndFeel.java ! src/share/classes/javax/swing/plaf/synth/SynthMenuBarUI.java ! src/share/classes/javax/swing/plaf/synth/SynthMenuItemUI.java + src/share/classes/javax/swing/plaf/synth/SynthMenuLayout.java ! src/share/classes/javax/swing/plaf/synth/SynthMenuUI.java ! src/share/classes/javax/swing/plaf/synth/SynthOptionPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthPainter.java ! src/share/classes/javax/swing/plaf/synth/SynthPanelUI.java ! src/share/classes/javax/swing/plaf/synth/SynthPasswordFieldUI.java ! src/share/classes/javax/swing/plaf/synth/SynthPopupMenuUI.java ! src/share/classes/javax/swing/plaf/synth/SynthProgressBarUI.java ! src/share/classes/javax/swing/plaf/synth/SynthRadioButtonMenuItemUI.java ! src/share/classes/javax/swing/plaf/synth/SynthRadioButtonUI.java ! src/share/classes/javax/swing/plaf/synth/SynthRootPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthScrollBarUI.java ! src/share/classes/javax/swing/plaf/synth/SynthScrollPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthSeparatorUI.java ! src/share/classes/javax/swing/plaf/synth/SynthSliderUI.java ! src/share/classes/javax/swing/plaf/synth/SynthSpinnerUI.java ! src/share/classes/javax/swing/plaf/synth/SynthSplitPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthStyle.java ! src/share/classes/javax/swing/plaf/synth/SynthStyleFactory.java ! src/share/classes/javax/swing/plaf/synth/SynthTabbedPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTableHeaderUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTableUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTextAreaUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTextFieldUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTextPaneUI.java ! src/share/classes/javax/swing/plaf/synth/SynthToggleButtonUI.java ! src/share/classes/javax/swing/plaf/synth/SynthToolBarUI.java ! src/share/classes/javax/swing/plaf/synth/SynthToolTipUI.java ! src/share/classes/javax/swing/plaf/synth/SynthTreeUI.java + src/share/classes/javax/swing/plaf/synth/SynthUI.java ! src/share/classes/javax/swing/plaf/synth/SynthViewportUI.java - src/share/classes/sun/swing/plaf/synth/SynthUI.java Changeset: d2680a125e32 Author: lana Date: 2009-12-10 09:50 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/d2680a125e32 Merge - src/share/classes/javax/swing/plaf/synth/DefaultMenuLayout.java - src/share/classes/sun/swing/plaf/synth/SynthUI.java Changeset: be6bc681579a Author: lana Date: 2009-12-16 00:09 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/be6bc681579a Merge - src/share/classes/javax/swing/plaf/synth/DefaultMenuLayout.java - src/share/classes/sun/awt/ComponentAccessor.java - src/share/classes/sun/awt/WindowAccessor.java - src/share/classes/sun/swing/plaf/synth/SynthUI.java Changeset: 447726d0daff Author: ohair Date: 2009-12-16 12:52 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/447726d0daff 6909462: Fix nbproject/private references in .hgignore Summary: See bugzilla issue 100097 Reviewed-by: tbell Contributed-by: Jesse Glick ! .hgignore Changeset: 1143e498f813 Author: mikejwre Date: 2009-12-16 23:39 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/1143e498f813 Merge Changeset: e4dcfb35ee68 Author: mikejwre Date: 2009-12-17 14:10 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/jdk/rev/e4dcfb35ee68 Added tag jdk7-b78 for changeset 1143e498f813 ! .hgtags From john.coomes at sun.com Fri Dec 18 12:06:15 2009 From: john.coomes at sun.com (john.coomes at sun.com) Date: Fri, 18 Dec 2009 20:06:15 +0000 Subject: hg: jdk7/hotspot/langtools: 13 new changesets Message-ID: <20091218200641.4E892425B7@hg.openjdk.java.net> Changeset: cff85998bf4d Author: jjg Date: 2009-11-17 16:45 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/cff85998bf4d 6898585: restructure langtools build.xml to facilitate more options for macro Reviewed-by: ohair ! make/build.xml Changeset: a509a22f9845 Author: jjg Date: 2009-11-19 11:38 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/a509a22f9845 6902264: fix indentation of tableswitch and lookupswitch Reviewed-by: ksrini ! src/share/classes/com/sun/tools/classfile/Instruction.java ! src/share/classes/com/sun/tools/javap/CodeWriter.java Changeset: 2ebae181a4ab Author: jjg Date: 2009-11-19 11:43 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/2ebae181a4ab 6900511: javac command line help broken Reviewed-by: ksrini ! src/share/classes/com/sun/tools/javac/main/JavacOption.java Changeset: b1bb8164a9bd Author: jjg Date: 2009-11-19 11:49 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/b1bb8164a9bd 6902720: javac pretty printer does not handle enums correctly Reviewed-by: mcimadamore ! src/share/classes/com/sun/tools/javac/tree/Pretty.java + test/tools/javac/6902720/E1.java + test/tools/javac/6902720/E2.java + test/tools/javac/6902720/Test.java Changeset: 243d0be1ba99 Author: jjg Date: 2009-11-20 10:15 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/243d0be1ba99 6903456: 6898585 drops javadoc doclet.xml from JDK Reviewed-by: ohair ! make/build.xml Changeset: 4325b440eb3e Author: jjg Date: 2009-11-20 11:18 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/4325b440eb3e 6902337: fix langtools build to allow forward refs into jdk/ repo Reviewed-by: ohair, mcimadamore ! make/Makefile ! make/build.properties ! make/build.xml + make/tools/GenStubs/GenStubs.java Changeset: b1508b6affd8 Author: tbell Date: 2009-11-23 19:58 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/b1508b6affd8 Merge Changeset: 121e0ebf1658 Author: darcy Date: 2009-12-03 14:03 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/121e0ebf1658 6906748: Project Coin: Minor strings in switch cleanup Reviewed-by: jjg ! src/share/classes/com/sun/tools/javac/code/Source.java ! src/share/classes/com/sun/tools/javac/comp/Lower.java Changeset: ea89c5d4af08 Author: jjg Date: 2009-12-07 14:35 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/ea89c5d4af08 6907660: stupid typo in ZipFileIndex guarantees NPE Reviewed-by: darcy ! src/share/classes/com/sun/tools/javac/file/ZipFileIndex.java Changeset: ceb2857fce7d Author: tbell Date: 2009-12-08 09:16 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/ceb2857fce7d Merge Changeset: 381399872958 Author: ohair Date: 2009-12-16 12:52 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/381399872958 6909462: Fix nbproject/private references in .hgignore Summary: See bugzilla issue 100097 Reviewed-by: tbell Contributed-by: Jesse Glick ! .hgignore Changeset: acc1e40a5874 Author: mikejwre Date: 2009-12-16 23:39 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/acc1e40a5874 Merge Changeset: 44022ba69c2f Author: mikejwre Date: 2009-12-17 14:10 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/langtools/rev/44022ba69c2f Added tag jdk7-b78 for changeset acc1e40a5874 ! .hgtags From oleg.v.oleinik at mail.ru Sun Dec 20 23:04:46 2009 From: oleg.v.oleinik at mail.ru (=?koi8-r?Q?=EF=CC=C5=C7_=EF=CC=C5=CA=CE=C9=CB?=) Date: Mon, 21 Dec 2009 10:04:46 +0300 Subject: =?koi8-r?Q?Re=3A_Trouble_with_hsdis_on_Itanium?= In-Reply-To: <446564320912180717r36a49dd2u47b9d6938b0a79be@mail.gmail.com> References: <446564320912180717r36a49dd2u47b9d6938b0a79be@mail.gmail.com> Message-ID: Dennis, Please see here: http://forums.sun.com/thread.jspa?messageID=10890826� Oleg Oleinik -----Original Message----- From: Dennis Byrne To: HotSpot Open Source Developers Date: Fri, 18 Dec 2009 09:17:11 -0600 Subject: Trouble with hsdis on Itanium > After compiling hsdis-ia64.so and running jdk1.6.0_17 with " -server > -XX:+UnlockDiagnosticVMOptions > -XX:PrintAssemblyOptions=hsdis-print-bytes" I am getting this error. > Any help would be appreciated. Does "please port hsdis to this > platform" mean I am SOL? Has anyone done this before? > > CompilerOracle: print WriterReader.write > Compiled (c2) 1 nmethod WriterReader::write (10 bytes) > total in heap [0x2000000001de6b50,0x2000000001de6db0] = 608 > relocation [0x2000000001de6c88,0x2000000001de6c98] = 16 > main code [0x2000000001de6ca0,0x2000000001de6d40] = 160 > stub code [0x2000000001de6d40,0x2000000001de6d80] = 64 > scopes data [0x2000000001de6d80,0x2000000001de6d88] = 8 > scopes pcs [0x2000000001de6d88,0x2000000001de6da0] = 24 > dependencies [0x2000000001de6da0,0x2000000001de6da8] = 8 > oops [0x2000000001de6da8,0x2000000001de6db0] = 8 > Loaded disassembler from hsdis-ia64.so > Decoding compiled method 0x2000000001de6b50: > Code: > hsdis: bad native mach=architecture not set in Makefile!; please port > hsdis to this platform > hsdis output options: > mach= select disassembly mode > help print this message > [Disassembling for mach='unknown'] > OopMapSet contains 0 OopMaps > > -- > Dennis Byrne > From gnu_andrew at member.fsf.org Mon Dec 21 04:17:45 2009 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 21 Dec 2009 12:17:45 +0000 Subject: Build Promotions Message-ID: <17c6771e0912210417x6bd4b584mc322ca19847a5f0e@mail.gmail.com> Hi all, I notice from http://download.java.net/jdk7/changes/jdk7-b78.html that there are again no new HotSpot changesets in b78, as there weren't in b77. When is the next promotion planned? 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 Erik.Trimble at Sun.COM Mon Dec 21 05:06:39 2009 From: Erik.Trimble at Sun.COM (Erik Trimble) Date: Mon, 21 Dec 2009 05:06:39 -0800 Subject: Build Promotions In-Reply-To: <17c6771e0912210417x6bd4b584mc322ca19847a5f0e@mail.gmail.com> References: <17c6771e0912210417x6bd4b584mc322ca19847a5f0e@mail.gmail.com> Message-ID: <4B2F72DF.4060800@sun.com> Andrew John Hughes wrote: > Hi all, > > I notice from http://download.java.net/jdk7/changes/jdk7-b78.html that > there are again no new HotSpot changesets in b78, as there weren't in > b77. > > When is the next promotion planned? > > Thanks, > They'll be bits in b79. It doesn't promote until about Jan 14th, but I'll likely promote into the master Hotspot repo well before that. http://openjdk.java.net/projects/jdk7/calendar/ (I got wrapped up in the hs16/6u18 stuff, and didn't want to rush a push for b78) -- Erik Trimble Java System Support Mailstop: usca22-123 Phone: x17195 Santa Clara, CA Timezone: US/Pacific (GMT-0800) From gnu_andrew at member.fsf.org Mon Dec 21 06:03:17 2009 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Mon, 21 Dec 2009 14:03:17 +0000 Subject: Build Promotions In-Reply-To: <4B2F72DF.4060800@sun.com> References: <17c6771e0912210417x6bd4b584mc322ca19847a5f0e@mail.gmail.com> <4B2F72DF.4060800@sun.com> Message-ID: <17c6771e0912210603w39287df5j706aa6af08e99470@mail.gmail.com> 2009/12/21 Erik Trimble : > Andrew John Hughes wrote: >> >> Hi all, >> >> I notice from http://download.java.net/jdk7/changes/jdk7-b78.html that >> there are again no new HotSpot changesets in b78, as there weren't in >> b77. >> >> When is the next promotion planned? >> >> Thanks, >> > > They'll be bits in b79. ? It doesn't promote until about Jan 14th, but I'll > likely promote into the master Hotspot repo well before that. > > http://openjdk.java.net/projects/jdk7/calendar/ > > (I got wrapped up in the hs16/6u18 stuff, and didn't want to rush a push for > b78) > > -- > Erik Trimble > Java System Support > Mailstop: ?usca22-123 > Phone: ?x17195 > Santa Clara, CA > Timezone: US/Pacific (GMT-0800) > > Ah, thanks, I'll look forward to it. http://openjdk.java.net/projects/jdk7/builds/ seems to be outdated :( -- 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 Christian.Thalinger at Sun.COM Tue Dec 22 03:16:57 2009 From: Christian.Thalinger at Sun.COM (Christian Thalinger) Date: Tue, 22 Dec 2009 12:16:57 +0100 Subject: Review Request: 6909153: Fix broken options on Zero In-Reply-To: <20091218083846.GA3317@redhat.com> References: <20091209163039.GD3409@redhat.com> <1260440684.23806.142.camel@macbook> <20091218083846.GA3317@redhat.com> Message-ID: <1261480618.1840.160.camel@macbook> On Fri, 2009-12-18 at 08:38 +0000, Gary Benson wrote: > Hi, > > Christian Thalinger wrote: > > On Wed, 2009-12-09 at 16:30 +0000, Gary Benson wrote: > > > I've been doing a mini-audit of Zero to ensure it still works with > > > non-standard options. This webrev: > > > > > > http://cr.openjdk.java.net/~gbenson/zero-options-fixes/ > > > > > > fixes the following issues: > > > > > > 1. HotSpot would segfault with -XX:+CITime if the VM is built > > > with no compilers. The patch fixes this. > > > > > > 2. The C++ interpreter doesn't support -XX:+ProfileInterpreter > > > and -XX:+UseCompressedOops, and Zero doesn't support > > > -XX:+TaggedStackInterpreter. The patch disables these > > > options in these configurations. > > > > Changes look good to me. > > > > > I haven't filed a bug for this, so it has no bug id yet. > > > > The CR is: > > > > 6909153: Fix broken options on Zero > > Would it be possible for someone to push this for me? Ohh, sorry, I forgot this one. I'll do it when I find some time (currently having vacation). -- Christian From gnu_andrew at member.fsf.org Tue Dec 22 03:29:33 2009 From: gnu_andrew at member.fsf.org (Andrew John Hughes) Date: Tue, 22 Dec 2009 11:29:33 +0000 Subject: Review Request: 6909153: Fix broken options on Zero In-Reply-To: <1261480618.1840.160.camel@macbook> References: <20091209163039.GD3409@redhat.com> <1260440684.23806.142.camel@macbook> <20091218083846.GA3317@redhat.com> <1261480618.1840.160.camel@macbook> Message-ID: <17c6771e0912220329h762fade3g5e6503c79a4783e2@mail.gmail.com> 2009/12/22 Christian Thalinger : > On Fri, 2009-12-18 at 08:38 +0000, Gary Benson wrote: >> Hi, >> >> Christian Thalinger wrote: >> > On Wed, 2009-12-09 at 16:30 +0000, Gary Benson wrote: >> > > I've been doing a mini-audit of Zero to ensure it still works with >> > > non-standard options. ?This webrev: >> > > >> > > ? http://cr.openjdk.java.net/~gbenson/zero-options-fixes/ >> > > >> > > fixes the following issues: >> > > >> > > ? 1. HotSpot would segfault with -XX:+CITime if the VM is built >> > > ? ? ?with no compilers. ?The patch fixes this. >> > > >> > > ? 2. The C++ interpreter doesn't support -XX:+ProfileInterpreter >> > > ? ? ?and -XX:+UseCompressedOops, and Zero doesn't support >> > > ? ? ?-XX:+TaggedStackInterpreter. ?The patch disables these >> > > ? ? ?options in these configurations. >> > >> > Changes look good to me. >> > >> > > I haven't filed a bug for this, so it has no bug id yet. >> > >> > The CR is: >> > >> > 6909153: Fix broken options on Zero >> >> Would it be possible for someone to push this for me? > > Ohh, sorry, I forgot this one. ?I'll do it when I find some time > (currently having vacation). > > -- Christian > > It's a pity external contributors can't submit JPRT commits; is there a plan to implement this? -- 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 gbenson at redhat.com Tue Dec 22 05:32:04 2009 From: gbenson at redhat.com (Gary Benson) Date: Tue, 22 Dec 2009 13:32:04 +0000 Subject: Review Request: Zero fix Message-ID: <20091222133204.GC3312@redhat.com> Hi all, Zero currently won't build on zSeries or PowerPC machines with assertions turned on. This webrev fixes: http://cr.openjdk.java.net/~gbenson/zero-signedness-fix/ I haven't filed a bug for this one, it'll only get bounced by the triage people if I file it. Cheers, Gary -- http://gbenson.net/ From igor.veresov at sun.com Wed Dec 23 00:37:10 2009 From: igor.veresov at sun.com (igor.veresov at sun.com) Date: Wed, 23 Dec 2009 08:37:10 +0000 Subject: hg: jdk7/hotspot/hotspot: 3 new changesets Message-ID: <20091223083717.5C9E942CB8@hg.openjdk.java.net> Changeset: 85f13cdfbc1d Author: twisti Date: 2009-12-16 12:48 +0100 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/85f13cdfbc1d 6829192: JSR 292 needs to support 64-bit x86 Summary: changes for method handles and invokedynamic Reviewed-by: kvn ! src/cpu/x86/vm/assembler_x86.cpp ! src/cpu/x86/vm/interp_masm_x86_32.cpp ! src/cpu/x86/vm/interp_masm_x86_64.cpp ! src/cpu/x86/vm/interp_masm_x86_64.hpp ! src/cpu/x86/vm/interpreter_x86_64.cpp ! src/cpu/x86/vm/methodHandles_x86.cpp ! src/cpu/x86/vm/stubGenerator_x86_64.cpp ! src/cpu/x86/vm/templateInterpreter_x86_64.cpp ! src/cpu/x86/vm/templateTable_x86_32.cpp ! src/cpu/x86/vm/templateTable_x86_64.cpp ! src/cpu/x86/vm/templateTable_x86_64.hpp ! src/share/vm/classfile/classFileParser.cpp Changeset: 032260830071 Author: never Date: 2009-12-16 22:15 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/032260830071 5057818: codecache full and compiler disabled in bigapps fastdebug run Reviewed-by: kvn ! src/share/vm/code/nmethod.cpp ! src/share/vm/code/nmethod.hpp Changeset: 1ea456c6f2b7 Author: iveresov Date: 2009-12-22 17:56 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/1ea456c6f2b7 Merge From jon.masamitsu at sun.com Wed Dec 23 02:50:42 2009 From: jon.masamitsu at sun.com (jon.masamitsu at sun.com) Date: Wed, 23 Dec 2009 10:50:42 +0000 Subject: hg: jdk7/hotspot/hotspot: 3 new changesets Message-ID: <20091223105054.042F842CDD@hg.openjdk.java.net> Changeset: 44f61c24ddab Author: iveresov Date: 2009-12-16 15:12 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/44f61c24ddab 6862387: tune concurrent refinement further Summary: Reworked the concurrent refinement: threads activation, feedback-based threshold adjustment, other miscellaneous fixes. Reviewed-by: apetrusenko, tonyp ! src/share/vm/gc_implementation/g1/concurrentG1Refine.cpp ! src/share/vm/gc_implementation/g1/concurrentG1Refine.hpp ! src/share/vm/gc_implementation/g1/concurrentG1RefineThread.cpp ! src/share/vm/gc_implementation/g1/concurrentG1RefineThread.hpp ! src/share/vm/gc_implementation/g1/concurrentMark.cpp ! src/share/vm/gc_implementation/g1/dirtyCardQueue.cpp ! src/share/vm/gc_implementation/g1/dirtyCardQueue.hpp ! src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.cpp ! src/share/vm/gc_implementation/g1/g1CollectorPolicy.hpp ! src/share/vm/gc_implementation/g1/g1_globals.hpp ! src/share/vm/gc_implementation/g1/ptrQueue.cpp ! src/share/vm/gc_implementation/g1/ptrQueue.hpp ! src/share/vm/gc_implementation/g1/satbQueue.cpp ! src/share/vm/gc_implementation/g1/satbQueue.hpp ! src/share/vm/gc_implementation/includeDB_gc_g1 Changeset: cc0ca4f00e89 Author: jmasa Date: 2009-12-22 22:35 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/cc0ca4f00e89 Merge Changeset: 7ac7d558e895 Author: jmasa Date: 2009-12-23 00:47 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/7ac7d558e895 Merge From erik.trimble at sun.com Wed Dec 23 06:01:30 2009 From: erik.trimble at sun.com (erik.trimble at sun.com) Date: Wed, 23 Dec 2009 14:01:30 +0000 Subject: hg: jdk7/hotspot/hotspot: 24 new changesets Message-ID: <20091223140220.9F5CE42D14@hg.openjdk.java.net> Changeset: 455105fc81d9 Author: katleman Date: 2009-11-12 15:35 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/455105fc81d9 Added tag jdk7-b76 for changeset 9174bb32e934 ! .hgtags Changeset: 7589c1b72907 Author: mikejwre Date: 2009-12-03 12:52 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/7589c1b72907 Added tag jdk7-b77 for changeset 455105fc81d9 ! .hgtags Changeset: 74e00f62c726 Author: trims Date: 2009-12-11 16:38 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/74e00f62c726 Merge Changeset: e703499b4b51 Author: ohair Date: 2009-12-16 12:51 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/e703499b4b51 6909462: Fix nbproject/private references in .hgignore Summary: See bugzilla issue 100097 Reviewed-by: tbell Contributed-by: Jesse Glick ! .hgignore Changeset: 1cf572922ff1 Author: mikejwre Date: 2009-12-17 14:10 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/1cf572922ff1 Added tag jdk7-b78 for changeset e703499b4b51 ! .hgtags Changeset: 61b46f7853d4 Author: trims Date: 2009-12-22 16:32 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/61b46f7853d4 Merge Changeset: 22e4972db0a6 Author: trims Date: 2009-12-22 16:33 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/22e4972db0a6 Merge Changeset: 920875ae1277 Author: trims Date: 2009-12-22 16:35 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/920875ae1277 6912782: Bump the HS17 build number to 06 Summary: Update the HS17 build number to 06 Reviewed-by: jcoomes ! make/hotspot_version Changeset: 9749fbc4859b Author: trims Date: 2009-12-23 02:57 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/9749fbc4859b Merge Changeset: 4b966d9946a3 Author: mchung Date: 2009-11-25 08:37 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/4b966d9946a3 6888880: JKernel VM to inject the sun.jkernel.DownloadManager as a boot classloader hook Summary: Call sun.jkernel.DownloadManager.setBootClassLoaderHook during the kernel VM initialization Reviewed-by: alanb, coleenp, acorn ! src/share/vm/classfile/vmSymbols.hpp ! src/share/vm/runtime/thread.cpp Changeset: 0018cf203583 Author: coleenp Date: 2009-12-02 07:59 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/0018cf203583 Merge Changeset: 95e9083cf4a7 Author: dholmes Date: 2009-12-01 22:29 -0500 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/95e9083cf4a7 6822370: ReentrantReadWriteLock: threads hung when there are no threads holding onto the lock (Netra x4450) Summary: This day one bug is caused by missing memory barriers in various Parker::park() paths that can result in lost wakeups and hangs. Reviewed-by: dice, acorn ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/vm/os_solaris.cpp Changeset: 3115100553b5 Author: dholmes Date: 2009-12-02 20:32 -0500 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/3115100553b5 Merge Changeset: 547f81740344 Author: minqi Date: 2009-12-11 11:09 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/547f81740344 6361589: Print out stack trace for target thread of GC crash Summary: If GC crashed with java thread involved, print out the java stack trace in error report Reviewed-by: never, ysr, coleenp, dholmes ! src/share/vm/runtime/frame.cpp ! src/share/vm/runtime/globals.hpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/thread.hpp ! src/share/vm/runtime/vmStructs.cpp ! src/share/vm/runtime/vmThread.cpp ! src/share/vm/runtime/vmThread.hpp ! src/share/vm/utilities/vmError.cpp Changeset: 9127aa69352e Author: dcubed Date: 2009-12-14 09:51 -0700 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/9127aa69352e 6648438: 4/4 src/share/vm/prims/jvmtiEnv.cpp:457 assert(phase == JVMTI_PHASE_LIVE,"sanity check") Summary: Return error on invalid JVMTI_PHASE instead of asserting. Reviewed-by: dholmes, ohair ! src/share/vm/prims/jvmtiEnv.cpp Changeset: 98cd9901c161 Author: dcubed Date: 2009-12-14 10:05 -0700 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/98cd9901c161 6849968: 3/2 JVMTI tests fails on jdk5.0 with hs14 Summary: If a JVMTI agent asks for version 1.0, then it should get version 1.0 semantics. Reviewed-by: dholmes, ohair ! src/share/vm/prims/jvmtiEnv.cpp ! src/share/vm/prims/jvmtiEnvBase.cpp ! src/share/vm/prims/jvmtiEnvBase.hpp ! src/share/vm/prims/jvmtiExport.cpp ! src/share/vm/prims/jvmtiExport.hpp ! src/share/vm/prims/jvmtiHpp.xsl Changeset: dcb15a6f342d Author: dcubed Date: 2009-12-14 13:26 -0700 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/dcb15a6f342d Merge ! src/share/vm/prims/jvmtiEnv.cpp ! src/share/vm/prims/jvmtiEnvBase.cpp ! src/share/vm/prims/jvmtiEnvBase.hpp ! src/share/vm/prims/jvmtiExport.cpp Changeset: 167c2986d91b Author: phh Date: 2009-12-16 12:54 -0500 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/167c2986d91b 6843629: Make current hotspot build part of jdk5 control build Summary: Source changes for older compilers plus makefile changes. Reviewed-by: xlu ! make/linux/makefiles/debug.make ! make/linux/makefiles/fastdebug.make ! make/linux/makefiles/jsig.make ! make/linux/makefiles/jvmg.make ! make/linux/makefiles/launcher.make ! make/linux/makefiles/saproc.make ! make/linux/makefiles/vm.make ! make/solaris/makefiles/debug.make ! make/solaris/makefiles/dtrace.make ! make/solaris/makefiles/fastdebug.make ! make/solaris/makefiles/jsig.make ! make/solaris/makefiles/jvmg.make ! make/solaris/makefiles/launcher.make ! make/solaris/makefiles/saproc.make ! make/solaris/makefiles/sparcWorks.make ! make/solaris/makefiles/vm.make ! src/os/linux/vm/os_linux.cpp ! src/os/solaris/dtrace/libjvm_db.c ! src/os/solaris/vm/os_solaris.cpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/ci/bcEscapeAnalyzer.hpp ! src/share/vm/code/dependencies.cpp ! src/share/vm/code/dependencies.hpp ! src/share/vm/memory/heap.cpp ! src/share/vm/memory/referenceProcessor.cpp ! src/share/vm/oops/instanceRefKlass.cpp ! src/share/vm/oops/oop.hpp ! src/share/vm/runtime/os.hpp Changeset: 2e8bdfdd3ba2 Author: xlu Date: 2009-12-16 13:16 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/2e8bdfdd3ba2 6899467: System property java.class.version out-of-sync with VM for jdk 5.0 with HS 16 in nightly build Reviewed-by: kvn, never, dholmes, ysr ! src/share/vm/classfile/classFileParser.cpp Changeset: d48983315b71 Author: xlu Date: 2009-12-16 13:19 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/d48983315b71 Merge Changeset: 933a3e806ce6 Author: xlu Date: 2009-12-16 14:27 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/933a3e806ce6 6895168: JCK api/signaturetest/sigtest.basic.html#basic test fails for jdk 5.0 with HS 16 in nightly build Reviewed-by: dholmes, acorn, jrose ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/oops/instanceKlass.hpp ! src/share/vm/prims/jvm.cpp Changeset: ba60f0a5d714 Author: xlu Date: 2009-12-16 15:44 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/ba60f0a5d714 Merge Changeset: 6952ed8677bf Author: xlu Date: 2009-12-17 01:19 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/6952ed8677bf Merge Changeset: a5a6adfca6ec Author: trims Date: 2009-12-23 03:12 -0800 URL: http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/a5a6adfca6ec Merge ! src/share/vm/classfile/classFileParser.cpp ! src/share/vm/classfile/vmSymbols.hpp From jeff at cooljeff.co.uk Wed Dec 23 09:24:02 2009 From: jeff at cooljeff.co.uk (Jeffrey Sinclair) Date: Wed, 23 Dec 2009 17:24:02 +0000 Subject: Socket usage in PlainSocketImpl.initProto() Message-ID: <1261589042.16393.5.camel@Lini> hotspot-dev, I've been looking at the lsof output of my hotspot process and noticed the following: java 14429 jeffsinc 8r sock 0,4 3932632 can't identify protocol The above appears on the first ServerSocket that is ever opened and remains after all ServerSockets have been closed. After a little investigation I've found that the socket is opened in the initialization of the PlainSocketImpl class, specifically in the native initProto() method. I'm curious to know what is done in the network stack initialization phase that requires a socket to be opened as well as for the socket to remain open thereafter. Jeff From James.Melvin at Sun.COM Wed Dec 23 09:56:21 2009 From: James.Melvin at Sun.COM (James Melvin) Date: Wed, 23 Dec 2009 12:56:21 -0500 Subject: Socket usage in PlainSocketImpl.initProto() In-Reply-To: <1261589042.16393.5.camel@Lini> References: <1261589042.16393.5.camel@Lini> Message-ID: <4B3259C5.7070604@sun.com> Hi Jeff, Someone on the Libraries team might be in a better position to answer your question. I'll forward. - Jim Jeffrey Sinclair wrote: > hotspot-dev, > > I've been looking at the lsof output of my hotspot process and noticed > the following: > > java 14429 jeffsinc 8r sock 0,4 3932632 can't > identify protocol > > The above appears on the first ServerSocket that is ever opened and > remains after all ServerSockets have been closed. After a little > investigation I've found that the socket is opened in the initialization > of the PlainSocketImpl class, specifically in the native initProto() > method. > > I'm curious to know what is done in the network stack initialization > phase that requires a socket to be opened as well as for the socket to > remain open thereafter. > > Jeff > From Alan.Bateman at Sun.COM Wed Dec 23 11:18:33 2009 From: Alan.Bateman at Sun.COM (Alan Bateman) Date: Wed, 23 Dec 2009 19:18:33 +0000 Subject: Socket usage in PlainSocketImpl.initProto() In-Reply-To: <1261589042.16393.5.camel@Lini> References: <1261589042.16393.5.camel@Lini> Message-ID: <4B326D09.1020106@sun.com> Jeffrey Sinclair wrote: > hotspot-dev, > > I've been looking at the lsof output of my hotspot process and noticed > the following: > > java 14429 jeffsinc 8r sock 0,4 3932632 can't > identify protocol > > The above appears on the first ServerSocket that is ever opened and > remains after all ServerSockets have been closed. After a little > investigation I've found that the socket is opened in the initialization > of the PlainSocketImpl class, specifically in the native initProto() > method. > > I'm curious to know what is done in the network stack initialization > phase that requires a socket to be opened as well as for the socket to > remain open thereafter. > > Jeff > This sounds like the loopback connection that is used for the asynchronous close mechanism. You might want to bring this up on the net-dev mailing list to get more details. -Alan From dennisbyrne at apache.org Sat Dec 26 13:39:29 2009 From: dennisbyrne at apache.org (Dennis Byrne) Date: Sat, 26 Dec 2009 15:39:29 -0600 Subject: Trouble with hsdis on Itanium In-Reply-To: References: <446564320912180717r36a49dd2u47b9d6938b0a79be@mail.gmail.com> Message-ID: <446564320912261339k4b906487j81c9fdc7569b74ff@mail.gmail.com> Worked perfectly. Thanks ????. Dennis 2009/12/21 ???? ??????? : > > Dennis, > > Please see here: http://forums.sun.com/thread.jspa?messageID=10890826� > > > Oleg Oleinik > > > -----Original Message----- > From: Dennis Byrne > To: HotSpot Open Source Developers > Date: Fri, 18 Dec 2009 09:17:11 -0600 > Subject: Trouble with hsdis on Itanium > >> After compiling hsdis-ia64.so and running jdk1.6.0_17 with " -server >> -XX:+UnlockDiagnosticVMOptions >> -XX:PrintAssemblyOptions=hsdis-print-bytes" I am getting this error. >> Any help would be appreciated. ?Does "please port hsdis to this >> platform" mean I am SOL? ?Has anyone done this before? >> >> CompilerOracle: print WriterReader.write >> Compiled (c2) ? 1 ? nmethod WriterReader::write (10 bytes) >> ?total in heap ?[0x2000000001de6b50,0x2000000001de6db0] = 608 >> ?relocation ? ? [0x2000000001de6c88,0x2000000001de6c98] = 16 >> ?main code ? ? ?[0x2000000001de6ca0,0x2000000001de6d40] = 160 >> ?stub code ? ? ?[0x2000000001de6d40,0x2000000001de6d80] = 64 >> ?scopes data ? ?[0x2000000001de6d80,0x2000000001de6d88] = 8 >> ?scopes pcs ? ? [0x2000000001de6d88,0x2000000001de6da0] = 24 >> ?dependencies ? [0x2000000001de6da0,0x2000000001de6da8] = 8 >> ?oops ? ? ? ? ? [0x2000000001de6da8,0x2000000001de6db0] = 8 >> Loaded disassembler from hsdis-ia64.so >> Decoding compiled method 0x2000000001de6b50: >> Code: >> hsdis: bad native mach=architecture not set in Makefile!; please port >> hsdis to this platform >> hsdis output options: >> ? mach= ? select disassembly mode >> ? help ? ? ? ? ?print this message >> [Disassembling for mach='unknown'] >> OopMapSet contains 0 OopMaps >> >> -- >> Dennis Byrne >> > -- Dennis Byrne