Re: RFR(S): JDK-8054194 jstack crash: assert(handle != NULL) failed: JNI handle should not be null
Dmitry, Your changes look good (except missing spaces after commas). But what I do not understand is how this relates to the bug. The code in setImageAndSymbolPath() is not looking at the remote process, it’s just setting up data in the jstack process. How does killing the remote process affect this code? What am I missing? /Staffan On 21 aug 2014, at 14:56, Dmitry Samersoff dmitry.samers...@oracle.com wrote: Hi Everyone, Please review small agent changes: http://cr.openjdk.java.net/~dsamersoff/JDK-8054194/webrev.01/ Under windows, If jstack attempts to attach to java process that is being killed by someone else, GetStaticObjectField might return NULL. -Dmitry -- Dmitry Samersoff Oracle Java development team, Saint Petersburg, Russia * I would love to change the world, but they won't give me the sources.
Re: RFR(S): JDK-8029172: warnings from b117 for hotspot.agent.src.os.linux: JNI exception pending
Looks good! Thanks, /Staffan On 10 aug 2014, at 11:32, Dmitry Samersoff dmitry.samers...@oracle.com wrote: Please review: http://cr.openjdk.java.net/~dsamersoff/JDK-8029172/webrev.01/ Added more exception checks to agent/src/os/linux/LinuxDebuggerLocal.c -- Dmitry Samersoff Oracle Java development team, Saint Petersburg, Russia * I would love to change the world, but they won't give me the sources.
Re: RFR(S): URG! JDK-8049226 com/sun/jdi/OptionTest.java test times out again
Dmitry, One problem with this fix is that debugInit_exit() is used from many places in the JDWP code. For some of these I think it still does make sense to receive a core dump for analysis. I agree that when parsing options, we do not need a core dump. /Staffan On 20 aug 2014, at 17:55, Dmitry Samersoff dmitry.samers...@oracle.com wrote: Serguei, After some additional testing I changed the fix a bit. Please take a look at new version. http://cr.openjdk.java.net/~dsamersoff/JDK-8049226/webrev.02/ New version reports JVMTI error to stderr. Also jniFatalError is not referenced any more so I remove it. -Dmitry On 2014-08-20 12:08, serguei.spit...@oracle.com wrote: Ok. Thank you for the explanation! Serguei On 8/20/14 1:01 AM, Dmitry Samersoff wrote: Serguei, 1. Historically JDI test-suite had no tests for failed transport initialization behavior and invalid parameters handling. 2. As a part of JDWP hardening work I added couple of such tests to OptionTest.java - these tests pass invalid parameters to dt_socket transport to make sure that transport doesn't crash (one such crash was discovered and fixed) but just return non-zero exit code to upper level. 3. After fix for JDK-6694099 any non-zero exit code from transport cause VM to coredump. Dumping multiple cores on busy machine takes a time so harness kills the test by timeout. We can just increase timeout for this test but I don't think it's a good idea to dump core when invalid parameters passed to transport. So there is the fix. 4. After the fix tests for negative parameters will return non-zero exit code as expected but will not dump the core. -Dmitry On 2014-08-20 00:54, serguei.spit...@oracle.com wrote: Hi Dmitry, The fix seems to be Ok. Just want to make it clear... This fix just changes the bug pattern. It a case of incorrect transport parameters the test is still going to fail but without crash, right? Thanks, Serguei On 8/19/14 12:09 PM, Dmitry Samersoff wrote: Hi Everybody, Please review the fix: http://cr.openjdk.java.net/~dsamersoff/JDK-8049226/webrev.01/ JDWP call jniFatalError if transport can't be initialized (e.g. wrong parameters) and jniFatalError call os::abort(). Therefor all transport initialization errors cause vm to coredump. I see no reason for debugInit_exit to call jniFatalError so remove this code. -Dmitry -- Dmitry Samersoff Oracle Java development team, Saint Petersburg, Russia * I would love to change the world, but they won't give me the sources.
Re: RFR(S): URG! JDK-8049226 com/sun/jdi/OptionTest.java test times out again
This is a valid concern. Sorry, I did not catch it. Thanks, Serguei On 8/25/14 4:26 AM, Staffan Larsen wrote: Dmitry, One problem with this fix is that debugInit_exit() is used from many places in the JDWP code. For some of these I think it still does make sense to receive a core dump for analysis. I agree that when parsing options, we do not need a core dump. /Staffan On 20 aug 2014, at 17:55, Dmitry Samersoff dmitry.samers...@oracle.com wrote: Serguei, After some additional testing I changed the fix a bit. Please take a look at new version. http://cr.openjdk.java.net/~dsamersoff/JDK-8049226/webrev.02/ New version reports JVMTI error to stderr. Also jniFatalError is not referenced any more so I remove it. -Dmitry On 2014-08-20 12:08, serguei.spit...@oracle.com wrote: Ok. Thank you for the explanation! Serguei On 8/20/14 1:01 AM, Dmitry Samersoff wrote: Serguei, 1. Historically JDI test-suite had no tests for failed transport initialization behavior and invalid parameters handling. 2. As a part of JDWP hardening work I added couple of such tests to OptionTest.java - these tests pass invalid parameters to dt_socket transport to make sure that transport doesn't crash (one such crash was discovered and fixed) but just return non-zero exit code to upper level. 3. After fix for JDK-6694099 any non-zero exit code from transport cause VM to coredump. Dumping multiple cores on busy machine takes a time so harness kills the test by timeout. We can just increase timeout for this test but I don't think it's a good idea to dump core when invalid parameters passed to transport. So there is the fix. 4. After the fix tests for negative parameters will return non-zero exit code as expected but will not dump the core. -Dmitry On 2014-08-20 00:54, serguei.spit...@oracle.com wrote: Hi Dmitry, The fix seems to be Ok. Just want to make it clear... This fix just changes the bug pattern. It a case of incorrect transport parameters the test is still going to fail but without crash, right? Thanks, Serguei On 8/19/14 12:09 PM, Dmitry Samersoff wrote: Hi Everybody, Please review the fix: http://cr.openjdk.java.net/~dsamersoff/JDK-8049226/webrev.01/ JDWP call jniFatalError if transport can't be initialized (e.g. wrong parameters) and jniFatalError call os::abort(). Therefor all transport initialization errors cause vm to coredump. I see no reason for debugInit_exit to call jniFatalError so remove this code. -Dmitry -- Dmitry Samersoff Oracle Java development team, Saint Petersburg, Russia * I would love to change the world, but they won't give me the sources.
Re: RFR(S): URG! JDK-8049226 com/sun/jdi/OptionTest.java test times out again
On 25 aug 2014, at 13:33, Dmitry Samersoff dmitry.samers...@oracle.com wrote: Staffan, On 2014-08-25 15:26, Staffan Larsen wrote: Dmitry, One problem with this fix is that debugInit_exit() is used from many places in the JDWP code. For some of these I think it still does make sense to receive a core dump for analysis. I agree that when parsing options, we do not need a core dump. jdwp has explicit option to request a coredump at debugInit_exit(). Is it enough or I should create a more sophisticated fix ? I don’t think that is enough. Often a problem will happen and will not be reproducible. Maybe this code: if ((arg.error != JDWP_ERROR(NONE)) (arg.startCount == 0) initOnStartup) { EXIT_ERROR(map2jvmtiError(arg.error), No transports initialized); } can use some variant of EXIT_ERROR that does not call fatalError() ? /Staffan Actually, I don't think that coredump on every call to jni_FatalError() (see jni.cpp:726) is necessary but this hotspot code is here for 6 years and changing it probably out of scope of this fix. -Dmitry /Staffan On 20 aug 2014, at 17:55, Dmitry Samersoff dmitry.samers...@oracle.com wrote: Serguei, After some additional testing I changed the fix a bit. Please take a look at new version. http://cr.openjdk.java.net/~dsamersoff/JDK-8049226/webrev.02/ New version reports JVMTI error to stderr. Also jniFatalError is not referenced any more so I remove it. -Dmitry On 2014-08-20 12:08, serguei.spit...@oracle.com wrote: Ok. Thank you for the explanation! Serguei On 8/20/14 1:01 AM, Dmitry Samersoff wrote: Serguei, 1. Historically JDI test-suite had no tests for failed transport initialization behavior and invalid parameters handling. 2. As a part of JDWP hardening work I added couple of such tests to OptionTest.java - these tests pass invalid parameters to dt_socket transport to make sure that transport doesn't crash (one such crash was discovered and fixed) but just return non-zero exit code to upper level. 3. After fix for JDK-6694099 any non-zero exit code from transport cause VM to coredump. Dumping multiple cores on busy machine takes a time so harness kills the test by timeout. We can just increase timeout for this test but I don't think it's a good idea to dump core when invalid parameters passed to transport. So there is the fix. 4. After the fix tests for negative parameters will return non-zero exit code as expected but will not dump the core. -Dmitry On 2014-08-20 00:54, serguei.spit...@oracle.com wrote: Hi Dmitry, The fix seems to be Ok. Just want to make it clear... This fix just changes the bug pattern. It a case of incorrect transport parameters the test is still going to fail but without crash, right? Thanks, Serguei On 8/19/14 12:09 PM, Dmitry Samersoff wrote: Hi Everybody, Please review the fix: http://cr.openjdk.java.net/~dsamersoff/JDK-8049226/webrev.01/ JDWP call jniFatalError if transport can't be initialized (e.g. wrong parameters) and jniFatalError call os::abort(). Therefor all transport initialization errors cause vm to coredump. I see no reason for debugInit_exit to call jniFatalError so remove this code. -Dmitry -- Dmitry Samersoff Oracle Java development team, Saint Petersburg, Russia * I would love to change the world, but they won't give me the sources. -- Dmitry Samersoff Oracle Java development team, Saint Petersburg, Russia * I would love to change the world, but they won't give me the sources.
Re: RFR(S): URG! JDK-8049226 com/sun/jdi/OptionTest.java test times out again
Staffan, OK. Will create better fix. -Dmitry On 2014-08-25 15:53, Staffan Larsen wrote: On 25 aug 2014, at 13:33, Dmitry Samersoff dmitry.samers...@oracle.com mailto:dmitry.samers...@oracle.com wrote: Staffan, On 2014-08-25 15:26, Staffan Larsen wrote: Dmitry, One problem with this fix is that debugInit_exit() is used from many places in the JDWP code. For some of these I think it still does make sense to receive a core dump for analysis. I agree that when parsing options, we do not need a core dump. jdwp has explicit option to request a coredump at debugInit_exit(). Is it enough or I should create a more sophisticated fix ? I don’t think that is enough. Often a problem will happen and will not be reproducible. Maybe this code: if ((arg.error != JDWP_ERROR(NONE)) (arg.startCount == 0) initOnStartup) { EXIT_ERROR(map2jvmtiError(arg.error), No transports initialized); } can use some variant of EXIT_ERROR that does not call fatalError() ? /Staffan Actually, I don't think that coredump on every call to jni_FatalError() (see jni.cpp:726) is necessary but this hotspot code is here for 6 years and changing it probably out of scope of this fix. -Dmitry /Staffan On 20 aug 2014, at 17:55, Dmitry Samersoff dmitry.samers...@oracle.com mailto:dmitry.samers...@oracle.com wrote: Serguei, After some additional testing I changed the fix a bit. Please take a look at new version. http://cr.openjdk.java.net/~dsamersoff/JDK-8049226/webrev.02/ New version reports JVMTI error to stderr. Also jniFatalError is not referenced any more so I remove it. -Dmitry On 2014-08-20 12:08, serguei.spit...@oracle.com wrote: Ok. Thank you for the explanation! Serguei On 8/20/14 1:01 AM, Dmitry Samersoff wrote: Serguei, 1. Historically JDI test-suite had no tests for failed transport initialization behavior and invalid parameters handling. 2. As a part of JDWP hardening work I added couple of such tests to OptionTest.java - these tests pass invalid parameters to dt_socket transport to make sure that transport doesn't crash (one such crash was discovered and fixed) but just return non-zero exit code to upper level. 3. After fix for JDK-6694099 any non-zero exit code from transport cause VM to coredump. Dumping multiple cores on busy machine takes a time so harness kills the test by timeout. We can just increase timeout for this test but I don't think it's a good idea to dump core when invalid parameters passed to transport. So there is the fix. 4. After the fix tests for negative parameters will return non-zero exit code as expected but will not dump the core. -Dmitry On 2014-08-20 00:54, serguei.spit...@oracle.com wrote: Hi Dmitry, The fix seems to be Ok. Just want to make it clear... This fix just changes the bug pattern. It a case of incorrect transport parameters the test is still going to fail but without crash, right? Thanks, Serguei On 8/19/14 12:09 PM, Dmitry Samersoff wrote: Hi Everybody, Please review the fix: http://cr.openjdk.java.net/~dsamersoff/JDK-8049226/webrev.01/ JDWP call jniFatalError if transport can't be initialized (e.g. wrong parameters) and jniFatalError call os::abort(). Therefor all transport initialization errors cause vm to coredump. I see no reason for debugInit_exit to call jniFatalError so remove this code. -Dmitry -- Dmitry Samersoff Oracle Java development team, Saint Petersburg, Russia * I would love to change the world, but they won't give me the sources. -- Dmitry Samersoff Oracle Java development team, Saint Petersburg, Russia * I would love to change the world, but they won't give me the sources. -- Dmitry Samersoff Oracle Java development team, Saint Petersburg, Russia * I would love to change the world, but they won't give me the sources.
RFRF: 8043936 Drop HPROF as demo, keep as HPROF agent shipped with JDK
Please review the following change to remove hprof as part of the demo package. Instead, the source code has been moved to the jdk.hprof.agent module. bug: https://bugs.openjdk.java.net/browse/JDK-8043936 webrev: http://cr.openjdk.java.net/~sla/8043936/webrev.00/ Thanks, /Staffan
RFR: JDK-8043981 Remove the JPDA demo
Please review this change to remove the legacy JPDA demos. These demos are quite dated at this point and the included instructions are incomplete. In addition the example/demo JPDA code does not fit well into the new modular structure because the source code is used for both jdb and for the demo. bug: https://bugs.openjdk.java.net/browse/JDK-8043981 webrev: http://cr.openjdk.java.net/~sla/8043981/webrev.00/ Thanks, /Staffan
Re: RFR: JDK-8043981 Remove the JPDA demo
On 25/08/2014 14:48, Staffan Larsen wrote: Please review this change to remove the legacy JPDA demos. These demos are quite dated at this point and the included instructions are incomplete. In addition the example/demo JPDA code does not fit well into the new modular structure because the source code is used for both jdb and for the demo. bug: https://bugs.openjdk.java.net/browse/JDK-8043981 webrev: http://cr.openjdk.java.net/~sla/8043981/webrev.00/ Good to see this going away, it also addresses one of Magnus' recent comments here about jpda/src.zip being built from sources in two locations (a consequence of the code being used for two things). The changes looks okay to me. A passing comment is that the move of Expr.jj is a reminder that we have generated code checked-in but that has been the case for a long time. -Alan.
Re: RFR: JDK-8043981 Remove the JPDA demo
On 25 aug 2014, at 15:59, Alan Bateman alan.bate...@oracle.com wrote: On 25/08/2014 14:48, Staffan Larsen wrote: Please review this change to remove the legacy JPDA demos. These demos are quite dated at this point and the included instructions are incomplete. In addition the example/demo JPDA code does not fit well into the new modular structure because the source code is used for both jdb and for the demo. bug: https://bugs.openjdk.java.net/browse/JDK-8043981 webrev: http://cr.openjdk.java.net/~sla/8043981/webrev.00/ Good to see this going away, it also addresses one of Magnus' recent comments here about jpda/src.zip being built from sources in two locations (a consequence of the code being used for two things). The changes looks okay to me. A passing comment is that the move of Expr.jj is a reminder that we have generated code checked-in but that has been the case for a long time. Thanks Alan. Yes, Ideally we should run JavaCC during the build on Expr.jj, but that adds a dependency and execution time for something that is very rarely changed. /Staffan -Alan.
Re: RFRF: 8043936 Drop HPROF as demo, keep as HPROF agent shipped with JDK
Build changes look ok to me. /Erik On 2014-08-25 15:35, Staffan Larsen wrote: Please review the following change to remove hprof as part of the demo package. Instead, the source code has been moved to the jdk.hprof.agent module. bug: https://bugs.openjdk.java.net/browse/JDK-8043936 webrev: http://cr.openjdk.java.net/~sla/8043936/webrev.00/ Thanks, /Staffan
Re: RFRF: 8043936 Drop HPROF as demo, keep as HPROF agent shipped with JDK
On 25 aug 2014, at 16:15, Alan Bateman alan.bate...@oracle.com wrote: On 25/08/2014 14:35, Staffan Larsen wrote: Please review the following change to remove hprof as part of the demo package. Instead, the source code has been moved to the jdk.hprof.agent module. bug: https://bugs.openjdk.java.net/browse/JDK-8043936 webrev: http://cr.openjdk.java.net/~sla/8043936/webrev.00/ The move of the source code to native/libhprof looks good. Having the README and manual in the same directory is probably okay as it has always lived in the same directory as the source code. One thing is check is the contents of manual.html as there is at least one place where it references the directory demo/jvmti/hprof. Good point. I have removed the section about Source Code in the latest version since all OpenJDK source code can be found at the same place: http://cr.openjdk.java.net/~sla/8043936/webrev.01/ I plan to push this version tomorrow unless someone shouts ;) Thanks, /Staffan I assume Erik or Magnus will check the make changes, I don't see any issues. -Alan
Re: RFRF: 8043936 Drop HPROF as demo, keep as HPROF agent shipped with JDK
On 25/08/2014 15:38, Staffan Larsen wrote: On 25 aug 2014, at 16:15, Alan Bateman alan.bate...@oracle.com wrote: : Having the README and manual in the same directory is probably okay as it has always lived in the same directory as the source code. One thing is check is the contents of manual.html as there is at least one place where it references the directory demo/jvmti/hprof. Good point. I have removed the section about Source Code in the latest version since all OpenJDK source code can be found at the same place: http://cr.openjdk.java.net/~sla/8043936/webrev.01/ The update to the manual looks good. -Alan
RFR: JDK-8055845 - Add trace event for promoted objects
Hi, Could I please get reviews for this RFE that adds a trace event for aging and promotion for young collections in G1, CMS and Parallel GC. It works similarly to allocation events, and generates the event on the slow path when either a direct copy occurs or a new PLAB is request. Since I'm adding an event I cc:ed the serviceability list in case anyone has any comments on the event and changes to trace.xml. RFE: https://bugs.openjdk.java.net/browse/JDK-8055845 Webrev: http://cr.openjdk.java.net/~brutisso/8055845/webrev.00 Bengt has been kind and agreed to both sponsor and host the the webrev. Thanks, Staffan
Re: RFR: JDK-8055845 - Add trace event for promoted objects
Did you manage to call the field class? It's a reserved word in C++, so we had to use klass in the past Descriptions with only one sentence shouldn't end with . How is Object Age measured? As a user, I would expect the number to be in seconds/minutes/hours, but that is not the case. Perhaps an explanation in the description and/or a field name that better reflects what we really mean with age. Otherwise trace.xml looks good! Erik Staffan Friberg skrev 25/08/14 18:28: Hi, Could I please get reviews for this RFE that adds a trace event for aging and promotion for young collections in G1, CMS and Parallel GC. It works similarly to allocation events, and generates the event on the slow path when either a direct copy occurs or a new PLAB is request. Since I'm adding an event I cc:ed the serviceability list in case anyone has any comments on the event and changes to trace.xml. RFE: https://bugs.openjdk.java.net/browse/JDK-8055845 Webrev: http://cr.openjdk.java.net/~brutisso/8055845/webrev.00 Bengt has been kind and agreed to both sponsor and host the the webrev. Thanks, Staffan
RFR 8037082: java/lang/instrument/NativeMethodPrefixAgent.java failing
Please, review the following test fix. Issue : https://bugs.openjdk.java.net/browse/JDK-8037082 Webrev: http://cr.openjdk.java.net/~jbachorik/8037082/webrev.00 As Staffan mentions in the issue comments - The two tests NativeMethodPrefixAgent and RetransformAgent use their own byte code instrumentation library in jdk/test/java/lang/instrument/ilib/. These tests need to be rewritten to use ASM instead so that we don't have to maintain the ilib library. This patch is intended to remove the ilib library and replace the usages with an ASM5 alternative. Only the currently used features of the ilib library are being ported. Thanks, -JB-
Re: RFR: JDK-8055845 - Add trace event for promoted objects
Hi Erik, No issue with naming the field class, since the event is similar to the Allocation event I used that as a starting point and it also uses class as name together with a couple of other events. Will go through the descriptions and remove periods. Object age is basically the how many times an object has been kept in survivor region, it is incremented each time a YC happens and the object is aged. Will see how I can update the description to make it clearer. Calling the field tenuringAge might help? From the documentation, http://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html -XX:MaxTenuringThreshold=/threshold/ Sets the maximum tenuring threshold for use in adaptive GC sizing. The largest value is 15. The default value is 15 for the parallel (throughput) collector, and 6 for the CMS collector. The following example shows how to set the maximum tenuring threshold to 10: -XX:MaxTenuringThreshold=10 -XX:+PrintTenuringDistribution Enables printing of tenuring age information. The following is an example of the output: Desired survivor size 48286924 bytes, new threshold 10 (max 10) - age 1: 28992024 bytes, 28992024 total - age 2: 1366864 bytes, 3035 total - age 3: 1425912 bytes, 31784800 total ... Age 1 objects are the youngest survivors (they were created after the previous scavenge, survived the latest scavenge, and moved from eden to survivor space). Age 2 objects have survived two scavenges (during the second scavenge they were copied from one survivor space to the next). And so on. In the preceding example, 28 992 024 bytes survived one scavenge and were copied from eden to survivor space, 1 366 864 bytes are occupied by age 2 objects, etc. The third value in each row is the cumulative size of objects of age n or less. By default, this option is disabled. Thanks for the comments, Staffan On 08/25/2014 09:55 AM, Erik Gahlin wrote: Did you manage to call the field class? It's a reserved word in C++, so we had to use klass in the past Descriptions with only one sentence shouldn't end with . How is Object Age measured? As a user, I would expect the number to be in seconds/minutes/hours, but that is not the case. Perhaps an explanation in the description and/or a field name that better reflects what we really mean with age. Otherwise trace.xml looks good! Erik Staffan Friberg skrev 25/08/14 18:28: Hi, Could I please get reviews for this RFE that adds a trace event for aging and promotion for young collections in G1, CMS and Parallel GC. It works similarly to allocation events, and generates the event on the slow path when either a direct copy occurs or a new PLAB is request. Since I'm adding an event I cc:ed the serviceability list in case anyone has any comments on the event and changes to trace.xml. RFE: https://bugs.openjdk.java.net/browse/JDK-8055845 Webrev: http://cr.openjdk.java.net/~brutisso/8055845/webrev.00 Bengt has been kind and agreed to both sponsor and host the the webrev. Thanks, Staffan
Re: RFR 8037082: java/lang/instrument/NativeMethodPrefixAgent.java failing
Thanks for taking on this one! The code looks good. Just two small things below. Have you tested with -Xverify:all, just to see if there are any byte code problems? Could fix the auto-naming of the params in this code? 131 @Override 132 public void visit(int i, int i1, String className, String string1, String string2, String[] strings) { 133 this.className = className; 134 super.visit(i, i1, className, string1, string2, strings); 135 } nit: let’s ClassWriter to deal - let ClassWriter deal 163 mv.visitMaxs(1, 1); // dummy call; let's ClassWriter to deal with this Thanks, /Staffan On 25 aug 2014, at 19:16, Jaroslav Bachorik jaroslav.bacho...@oracle.com wrote: Please, review the following test fix. Issue : https://bugs.openjdk.java.net/browse/JDK-8037082 Webrev: http://cr.openjdk.java.net/~jbachorik/8037082/webrev.00 As Staffan mentions in the issue comments - The two tests NativeMethodPrefixAgent and RetransformAgent use their own byte code instrumentation library in jdk/test/java/lang/instrument/ilib/. These tests need to be rewritten to use ASM instead so that we don't have to maintain the ilib library. This patch is intended to remove the ilib library and replace the usages with an ASM5 alternative. Only the currently used features of the ilib library are being ported. Thanks, -JB-
Re: RFR 8040692: [TESTBUG] sun/management/jmxremote/bootstrap/JvmstatCountersTest.java requires -XX:+UsePerfData option to pass on embedded platforms
On 21/08/2014 10:44 PM, Jaroslav Bachorik wrote: Please, review this simple fix. Issue : https://bugs.openjdk.java.net/browse/JDK-8040692 Webrev: http://cr.openjdk.java.net/~jbachorik/8040692/webrev.00 On embedded platforms it is necessary to provide -XX:+UsePerfData flag in order to make the performance counters accessible. This fix does this for the tests which need to access the performance counters. Looks fine to me - except for the sources.list file ?? :) Thanks, David Thanks, -JB-
Review request: 8055230: Rename attach provider implementation class
Webrev: http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8055230/ This patch renames the class name of attach provider implementation class to be the same for all platforms. This simplifies the build logic and removes the need for generating the service config file at build time. The files renamed are unix/classes/sun/tools/attach/${OS}VirtualMachine.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java unix/classes/sun/tools/attach/${OS}AttachProvider.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java ${OS}/classes/sun/tools/attach/${OS}VirtualMachine.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java ${OS}/classes/sun/tools/attach/${OS}AttachProvider.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java and also corresponding native files. Mandy
Re: Review request: 8055230: Rename attach provider implementation class
I like this change! :) Looks good to me. Thanks Mandy! David - On 26/08/2014 2:29 PM, Mandy Chung wrote: Webrev: http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8055230/ This patch renames the class name of attach provider implementation class to be the same for all platforms. This simplifies the build logic and removes the need for generating the service config file at build time. The files renamed are unix/classes/sun/tools/attach/${OS}VirtualMachine.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java unix/classes/sun/tools/attach/${OS}AttachProvider.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java ${OS}/classes/sun/tools/attach/${OS}VirtualMachine.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java ${OS}/classes/sun/tools/attach/${OS}AttachProvider.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java and also corresponding native files. Mandy
Re: Review request: 8055230: Rename attach provider implementation class
Ahh. The simplicity! Looks good! Thanks, /Staffan On 26 aug 2014, at 06:29, Mandy Chung mandy.ch...@oracle.com wrote: Webrev: http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8055230/ This patch renames the class name of attach provider implementation class to be the same for all platforms. This simplifies the build logic and removes the need for generating the service config file at build time. The files renamed are unix/classes/sun/tools/attach/${OS}VirtualMachine.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java unix/classes/sun/tools/attach/${OS}AttachProvider.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java ${OS}/classes/sun/tools/attach/${OS}VirtualMachine.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java ${OS}/classes/sun/tools/attach/${OS}AttachProvider.java - ${OS}/classes/sun/tools/attach/VirtualMachineImpl.java and also corresponding native files. Mandy