On Tue, 29 Oct 2024 04:31:28 GMT, Chris Plummer <cjplum...@openjdk.org> wrote:

>> The fix cleans up code to support list of JVMTI breakpoints.
>> - classes required to supports cache of byte code pointers (GrowableElement, 
>> GrowableCache, JvmtiBreakpointCache) are dropped;
>> - class JvmtiCurrentBreakpoints (JvmtiBreakpoints factory) is left as is, 
>> dropped unused code;
>> - fixed race in JvmtiCurrentBreakpoints::get_jvmti_breakpoints() (fix for 
>> JDK-8210637);
>> - JvmtiBreakpoint:JvmtiBreakpoint() + JvmtiBreakpoint::copy(JvmtiBreakpoint& 
>> bp) are replaced with copy ctor;
>> - JvmtiBreakpoints::clearall_in_class_at_safepoint() is simplified to do a 
>> single pass;
>> 
>> Testing: tier1..tier6
>
> src/hotspot/share/prims/jvmtiImpl.cpp line 208:
> 
>> 206: 
>> 207: JvmtiBreakpoints::JvmtiBreakpoints()
>> 208:     : _elements(5, mtServiceability) {
> 
> Do we have tests that create more than 5 breakpoints? I just want to make 
> sure the array growing code is exercised. You could stress it by testing with 
> the initial size set to 1.

This is the same we had before (in `GrowableCache::initialize`, old line 142):
`_elements       = new (mtServiceability) GrowableArray<GrowableElement*>(5, 
mtServiceability);`
I set the initial size to 1,  JDI tests (some of them have more than 1 
breakpoint) passed

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/21675#discussion_r1821413575

Reply via email to