Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c

2020-11-05 Thread Aleksey Shipilev
On Thu, 5 Nov 2020 02:11:23 GMT, Chris Plummer wrote: >> Apply patch suggested by @cl4es in the bug report. Passes >> linux-x86-open,linux-x64-open,linux-s390x-open,linux-arm32-debug,linux-ppc64le-debug >> builds with this patch, and tier1. >> >> thanks, >> Coleen > >> Where did the magic num

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c

2020-11-05 Thread Claes Redestad
On Thu, 5 Nov 2020 09:12:54 GMT, Aleksey Shipilev wrote: >>> Where did the magic numbers in >>> >>> "%.19s.%.3d %.50s" >>> >>> come from? >> >> The first argument is a char[DT_SIZE], which is MAXLEN_DT+1, which is 20. >> The +1 is probably for a null. The 3rd argument is char[TZ_SIZE], which

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c

2020-11-05 Thread Coleen Phillimore
On Thu, 5 Nov 2020 11:18:04 GMT, Claes Redestad wrote: >> Please make sure `linux-x86` jobs pass in GH actions. I think you can >> navigate to https://github.com/coleenp/jdk/runs/1355854648 -- and press >> "Re-run jobs" at top right. > > FWIW I don't think I intended the workaround of specifyin

Re: RFR: 8212879: Make JVMTI TagMap table concurrent [v4]

2020-11-05 Thread Coleen Phillimore
On Wed, 4 Nov 2020 09:27:39 GMT, Kim Barrett wrote: >> I didn't say it "doesn't work for shenandoah", I said it wouldn't have >> worked with the old shenandoah barriers without additional work, like adding >> calls to resolve. I understand the design intent of notifying the table >> managemen

Re: RFR: 8212879: Make JVMTI TagMap table concurrent [v5]

2020-11-05 Thread Coleen Phillimore
On Wed, 4 Nov 2020 08:56:54 GMT, Kim Barrett wrote: >> Coleen Phillimore has updated the pull request incrementally with one >> additional commit since the last revision: >> >> Code review comments from Kim and Albert. > > src/hotspot/share/prims/jvmtiTagMapTable.hpp line 36: > >> 34: class

Re: RFR: 8212879: Make JVMTI TagMap table concurrent [v3]

2020-11-05 Thread Coleen Phillimore
On Wed, 4 Nov 2020 07:42:36 GMT, Kim Barrett wrote: >>> Ok, so I'm not sure what to do with this: >>> >>> enum Phase { >>> // Serial phase. >>> JVMTI_ONLY(jvmti) >>> // Additional implicit phase values follow for oopstorages. >>> `};` >>> >>> I've removed the only thing in this enum. >> >> Enu

Re: RFR: 8212879: Make JVMTI TagMap table concurrent [v4]

2020-11-05 Thread Coleen Phillimore
On Wed, 4 Nov 2020 10:05:29 GMT, Kim Barrett wrote: >> The comment is trying to describe the situation like: >> 1. mark-end pause (WeakHandle.peek() returns NULL because object A is >> unmarked) >> 2. safepoint for heap walk >>2a. Need to post ObjectFree event for object A before the heap wa

Re: RFR: 8212879: Make JVMTI TagMap table concurrent [v6]

2020-11-05 Thread Coleen Phillimore
On Wed, 4 Nov 2020 22:09:21 GMT, Serguei Spitsyn wrote: >> Coleen Phillimore has updated the pull request incrementally with two >> additional commits since the last revision: >> >> - Add back WeakProcessorPhases::Phase enum. >> - Serguei 1. > > Thank you for the update, Coleen! > I leave it

Re: RFR: 8212879: Make JVMTI TagMap table concurrent [v4]

2020-11-05 Thread Erik Österlund
On Tue, 3 Nov 2020 21:14:04 GMT, Coleen Phillimore wrote: >> src/hotspot/share/prims/jvmtiTagMap.cpp line 3018: >> >>> 3016: } >>> 3017: // Later GC code will relocate the oops, so defer rehashing >>> until then. >>> 3018: tag_map->_needs_rehashing = true; >> >> This is

Re: RFR: 8212879: Make JVMTI TagMap table concurrent [v4]

2020-11-05 Thread Erik Österlund
On Wed, 4 Nov 2020 13:32:07 GMT, Coleen Phillimore wrote: >> I know of nothing that leads to "presumably during GC" being a requirement. >> Having all pending events of some type occur before that type of event is >> disabled seems like a reasonable requirement, but just means that event >> di

Re: RFR: 8212879: Make JVMTI TagMap table concurrent [v4]

2020-11-05 Thread Erik Österlund
On Wed, 4 Nov 2020 13:22:57 GMT, Coleen Phillimore wrote: >> For the GCs that call the num_dead notification in a pause it is much worse >> than what we had. As I pointed out elsewhere, it used to be that tagmap >> processing was all-in-one, as a single serial subtask taken by the first >> thr

Re: RFR: 8212879: Make JVMTI TagMap table concurrent [v5]

2020-11-05 Thread Coleen Phillimore
On Wed, 4 Nov 2020 13:19:21 GMT, Coleen Phillimore wrote: >> src/hotspot/share/prims/jvmtiTagMapTable.hpp line 36: >> >>> 34: class JvmtiTagMapEntryClosure; >>> 35: >>> 36: class JvmtiTagMapEntry : public HashtableEntry>> mtServiceability> { >> >> By using utilities/hashtable this buys into ha

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c

2020-11-05 Thread Claes Redestad
On Thu, 5 Nov 2020 00:37:15 GMT, Coleen Phillimore wrote: > Apply patch suggested by @cl4es in the bug report. Passes > linux-x86-open,linux-x64-open,linux-s390x-open,linux-arm32-debug,linux-ppc64le-debug > builds with this patch, and tier1. > > thanks, > Coleen While you might want to wait

Integrated: 8255452: Doing GC during JVMTI MethodExit event posting breaks return oop

2020-11-05 Thread Erik Österlund
On Thu, 29 Oct 2020 12:44:58 GMT, Erik Österlund wrote: > The imasm::remove_activation() call does not deal with safepoints very well. > However, when the MethodExit JVMTI event is being called, we call into the > runtime in the middle of remove_activation(). If the value being returned is > a

RFR: 8253064: monitor list simplifications and getting rid of TSM

2020-11-05 Thread Daniel D . Daugherty
Changes from @fisk and @dcubed-ojdk to: - simplify ObjectMonitor list management - get rid of Type-Stable Memory (TSM) This change has been tested with Mach5 Tier[1-3],4,5,6,7,8; no new regressions. Aurora Perf runs have also been done (DaCapo-h2, Quick Startup/Footprint, SPECjbb2015-Tuned-G1, SP

Re: RFR: 8253064: monitor list simplifications and getting rid of TSM

2020-11-05 Thread Daniel D . Daugherty
On Mon, 2 Nov 2020 22:13:41 GMT, Daniel D. Daugherty wrote: >> Self review done. > > ### Gory details about these changes from @fisk and @dcubed-ojdk: > > ### Simplify `ObjectMonitor` List Management: > > - delete per-thread in-use and free-lists. > - delete global free-list and global wait-lis

Re: RFR: 8253064: monitor list simplifications and getting rid of TSM

2020-11-05 Thread Daniel D . Daugherty
On Tue, 13 Oct 2020 20:31:44 GMT, Daniel D. Daugherty wrote: > Changes from @fisk and @dcubed-ojdk to: > > - simplify ObjectMonitor list management > - get rid of Type-Stable Memory (TSM) > > This change has been tested with Mach5 Tier[1-3],4,5,6,7,8; no new > regressions. > Aurora Perf runs

Re: RFR: 8253064: monitor list simplifications and getting rid of TSM

2020-11-05 Thread Daniel D . Daugherty
On Mon, 2 Nov 2020 22:13:30 GMT, Daniel D. Daugherty wrote: >> Changes from @fisk and @dcubed-ojdk to: >> >> - simplify ObjectMonitor list management >> - get rid of Type-Stable Memory (TSM) >> >> This change has been tested with Mach5 Tier[1-3],4,5,6,7,8; no new >> regressions. >> Aurora Perf

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c

2020-11-05 Thread Chris Plummer
On Thu, 5 Nov 2020 15:52:59 GMT, Claes Redestad wrote: >> Apply patch suggested by @cl4es in the bug report. Passes >> linux-x86-open,linux-x64-open,linux-s390x-open,linux-arm32-debug,linux-ppc64le-debug >> builds with this patch, and tier1. >> >> thanks, >> Coleen > > While you might want to

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c

2020-11-05 Thread Claes Redestad
On Thu, 5 Nov 2020 17:26:50 GMT, Chris Plummer wrote: > I don't think this is the case. If you assume the arguments are not null > terminated, then there is no limit to how long the string could be, where-as > the error messages are very specific with the (incorrectly) calculated range > of po

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c

2020-11-05 Thread Thomas Stuefe
On Thu, 5 Nov 2020 17:57:29 GMT, Claes Redestad wrote: >>> While it's possible that these warnings on 32-bit builds is just a matter >>> of the compiler being wrong, it could also be that it can't determine all >>> arguments are null-terminated. Specifying max string length in format >>> speci

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c

2020-11-05 Thread Thomas Stuefe
On Thu, 5 Nov 2020 18:22:56 GMT, Thomas Stuefe wrote: >>> I don't think this is the case. If you assume the arguments are not null >>> terminated, then there is no limit to how long the string could be, >>> where-as the error messages are very specific with the (incorrectly) >>> calculated ran

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c

2020-11-05 Thread Claes Redestad
On Thu, 5 Nov 2020 18:35:52 GMT, Thomas Stuefe wrote: > ... so the problem would be that the compiler does not believe us that > millisecs will be always <1000. And there is no way to truncate output for > numerical format specifiers. Interesting, and a reasonable explanation. Odd this doesn't

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v2]

2020-11-05 Thread Coleen Phillimore
> Apply patch suggested by @cl4es in the bug report. Passes > linux-x86-open,linux-x64-open,linux-s390x-open,linux-arm32-debug,linux-ppc64le-debug > builds with this patch, and tier1. > > thanks, > Coleen Coleen Phillimore has updated the pull request incrementally with one additional commit

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v2]

2020-11-05 Thread Coleen Phillimore
On Thu, 5 Nov 2020 19:41:25 GMT, Claes Redestad wrote: >> ... so the problem would be that the compiler does not believe us that >> millisecs will be always <1000. And there is no way to truncate output for >> numerical format specifiers. >> >> One solution could be to first print the millisec

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v2]

2020-11-05 Thread Chris Plummer
On Thu, 5 Nov 2020 18:35:52 GMT, Thomas Stuefe wrote: >> Hi, >> >> I think the compiler is correct. The 3 in "%.3d" of the second argument is >> precision, not scale. Which is the *minimum* numbers of digits to be printed. >> >> So we get: >> >> (void)snprintf(tbuf, ltbuf, >>

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v3]

2020-11-05 Thread Claes Redestad
On Thu, 5 Nov 2020 20:30:05 GMT, Coleen Phillimore wrote: >> Apply patch suggested by @cl4es in the bug report. Passes >> linux-x86-open,linux-x64-open,linux-s390x-open,linux-arm32-debug,linux-ppc64le-debug >> builds with this patch, and tier1. >> >> thanks, >> Coleen > > Coleen Phillimore ha

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v3]

2020-11-05 Thread Coleen Phillimore
> Apply patch suggested by @cl4es in the bug report. Passes > linux-x86-open,linux-x64-open,linux-s390x-open,linux-arm32-debug,linux-ppc64le-debug > builds with this patch, and tier1. > > thanks, > Coleen Coleen Phillimore has updated the pull request incrementally with one additional commit

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v2]

2020-11-05 Thread Chris Plummer
On Thu, 5 Nov 2020 20:12:06 GMT, Coleen Phillimore wrote: >> Apply patch suggested by @cl4es in the bug report. Passes >> linux-x86-open,linux-x64-open,linux-s390x-open,linux-arm32-debug,linux-ppc64le-debug >> builds with this patch, and tier1. >> >> thanks, >> Coleen > > Coleen Phillimore ha

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v2]

2020-11-05 Thread Coleen Phillimore
On Thu, 5 Nov 2020 20:27:11 GMT, Chris Plummer wrote: >> Coleen Phillimore has updated the pull request incrementally with one >> additional commit since the last revision: >> >> Use Thomas's fix instead. > > src/jdk.jdwp.agent/share/native/libjdwp/log_messages.c line 85: > >> 83:

Re: RFR: 8255706: The JDWP debug agent unecessarily checks for JVMTI_ERROR_INTERRUPT after calling RawMonitorEnter

2020-11-05 Thread Chris Plummer
On Tue, 3 Nov 2020 07:20:34 GMT, Alan Bateman wrote: >> Remove code that retries if RawMonitorEnter is interrupted since that can't >> happen: >> >> https://docs.oracle.com/en/java/javase/14/docs/specs/jvmti.html#RawMonitorEnter > > Marked as reviewed by alanb (Reviewer). Ping! I could use one

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v3]

2020-11-05 Thread David Holmes
On Thu, 5 Nov 2020 20:33:08 GMT, Coleen Phillimore wrote: >> Apply patch suggested by @cl4es in the bug report. Passes >> linux-x86-open,linux-x64-open,linux-s390x-open,linux-arm32-debug,linux-ppc64le-debug >> builds with this patch, and tier1. >> >> thanks, >> Coleen > > Coleen Phillimore ha

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v3]

2020-11-05 Thread Claes Redestad
On Thu, 5 Nov 2020 22:11:44 GMT, David Holmes wrote: >> Coleen Phillimore has updated the pull request incrementally with one >> additional commit since the last revision: >> >> Use Thomas's fix instead. > > src/jdk.jdwp.agent/share/native/libjdwp/log_messages.c line 82: > >> 80:

Re: RFR: 8255706: The JDWP debug agent unecessarily checks for JVMTI_ERROR_INTERRUPT after calling RawMonitorEnter

2020-11-05 Thread David Holmes
On Mon, 2 Nov 2020 22:11:48 GMT, Chris Plummer wrote: > Remove code that retries if RawMonitorEnter is interrupted since that can't > happen: > > https://docs.oracle.com/en/java/javase/14/docs/specs/jvmti.html#RawMonitorEnter LGTM! Thanks, David - Marked as reviewed by dholmes (

Re: RFR: 8255706: The JDWP debug agent unecessarily checks for JVMTI_ERROR_INTERRUPT after calling RawMonitorEnter

2020-11-05 Thread Serguei Spitsyn
On Mon, 2 Nov 2020 22:11:48 GMT, Chris Plummer wrote: > Remove code that retries if RawMonitorEnter is interrupted since that can't > happen: > > https://docs.oracle.com/en/java/javase/14/docs/specs/jvmti.html#RawMonitorEnter LGTM++ - Marked as reviewed by sspitsyn (Reviewer). P

Integrated: 8255706: The JDWP debug agent unecessarily checks for JVMTI_ERROR_INTERRUPT after calling RawMonitorEnter

2020-11-05 Thread Chris Plummer
On Mon, 2 Nov 2020 22:11:48 GMT, Chris Plummer wrote: > Remove code that retries if RawMonitorEnter is interrupted since that can't > happen: > > https://docs.oracle.com/en/java/javase/14/docs/specs/jvmti.html#RawMonitorEnter This pull request has now been integrated. Changeset: e42c1340 Auth

Re: RFR: 8254864: vmTestbase/nsk/jvmti/ResourceExhausted/resexhausted001/TestDescription.java timed out

2020-11-05 Thread Alex Menkov
On Wed, 4 Nov 2020 21:44:09 GMT, Chris Plummer wrote: > > > > Had to implement runtime check (instead of using @requires) because > > resexhausted001 is also called by resexhausted004. > > So does that mean you do or don't want resexhausted004 disabled on windows? > If yes, there's no reason

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v3]

2020-11-05 Thread Coleen Phillimore
On Thu, 5 Nov 2020 22:22:24 GMT, Claes Redestad wrote: >> src/jdk.jdwp.agent/share/native/libjdwp/log_messages.c line 82: >> >>> 80: "%Z", localtime(&t)); >>> 81: // Truncate milliseconds in buffer large enough to hold the >>> 82: // value which is always < 1000 >> >> I

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v3]

2020-11-05 Thread Coleen Phillimore
On Fri, 6 Nov 2020 00:55:22 GMT, Coleen Phillimore wrote: >> Right, `snprintf(tmp, sizeof(tmp), "%d", millisecs);` needs to be >> `snprintf(tmp, sizeof(tmp), "%.3d", millisecs);` to pad it out correctly. > > timestamp 05.11.2020 19:54:13.100 EST > > This is what I get (in a small test program)

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v4]

2020-11-05 Thread Coleen Phillimore
> Apply patch suggested by @cl4es in the bug report. Passes > linux-x86-open,linux-x64-open,linux-s390x-open,linux-arm32-debug,linux-ppc64le-debug > builds with this patch, and tier1. > > thanks, > Coleen Coleen Phillimore has updated the pull request incrementally with one additional commit

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v3]

2020-11-05 Thread Chris Plummer
On Fri, 6 Nov 2020 00:58:01 GMT, Coleen Phillimore wrote: >> timestamp 05.11.2020 19:54:13.100 EST >> >> This is what I get (in a small test program) for 100 ms with the existing >> code. Is this not right? > > char tmp[10 + 1]; > snprintf(tmp, sizeof(tmp), "%.3d", millisecs); > snprin

Re: RFR: 8254864: vmTestbase/nsk/jvmti/ResourceExhausted/resexhausted001/TestDescription.java timed out

2020-11-05 Thread Chris Plummer
On Tue, 3 Nov 2020 23:16:50 GMT, Alex Menkov wrote: > - Fixed synchronization logic in resexhausted001; > - On Windows JVM cannot produce OOM caused by thread creation failure. > Massive thread creation causes big system (not VM) memory consumption, as a > result test host dramatically slows do

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v4]

2020-11-05 Thread David Holmes
On Fri, 6 Nov 2020 01:04:09 GMT, Coleen Phillimore wrote: >> Apply patch suggested by @cl4es in the bug report. Passes >> linux-x86-open,linux-x64-open,linux-s390x-open,linux-arm32-debug,linux-ppc64le-debug >> builds with this patch, and tier1. >> >> thanks, >> Coleen > > Coleen Phillimore ha

Re: RFR: 8253064: monitor list simplifications and getting rid of TSM

2020-11-05 Thread David Holmes
On Tue, 13 Oct 2020 20:31:44 GMT, Daniel D. Daugherty wrote: > Changes from @fisk and @dcubed-ojdk to: > > - simplify ObjectMonitor list management > - get rid of Type-Stable Memory (TSM) > > This change has been tested with Mach5 Tier[1-3],4,5,6,7,8; no new > regressions. > Aurora Perf runs

Re: RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v4]

2020-11-05 Thread Thomas Stuefe
On Fri, 6 Nov 2020 01:04:09 GMT, Coleen Phillimore wrote: >> Apply patch suggested by @cl4es in the bug report. Passes >> linux-x86-open,linux-x64-open,linux-s390x-open,linux-arm32-debug,linux-ppc64le-debug >> builds with this patch, and tier1. >> >> thanks, >> Coleen > > Coleen Phillimore ha