Request for Review (xs) - 8159073: Error handling incomplete when creating GC threads lazily

Jon Masamitsu jon.masamitsu at oracle.com
Thu Jul 28 21:54:21 UTC 2016


I still need one more.

http://cr.openjdk.java.net/~jmasa/8159073/webrev_delta_03_04/

Thanks.

Jon

On 07/26/2016 08:36 AM, Jon Masamitsu wrote:
> Thomas,
>
> Thanks.
>
> Jon
>
> On 7/26/2016 1:36 AM, Thomas Schatzl wrote:
>> Hi Jon,
>>
>> On Mon, 2016-07-25 at 15:43 -0700, Jon Masamitsu wrote:
>>>
>>> On 07/21/2016 06:57 AM, Thomas Schatzl wrote:
>>>> Hi Jon,
>>>>
>>>>
>> [...]
>>>>> Delta: http://cr.openjdk.java.net/~jmasa/8159073/webrev_delta_02_
>>>>> 03/
>>>>> Full: http://cr.openjdk.java.net/~jmasa/8159073/webrev.03/
>>>>>
>>>>> Thanks.
>>>>    looks good, ship it :)
>>>   When I ran tests which injected  thread creation failure, this
>>> guarantee failed.
>>>
>>> diff --git a/src/share/vm/gc/shared/workgroup.cpp
>>> b/src/share/vm/gc/shared/workgroup.cpp
>>> --- a/src/share/vm/gc/shared/workgroup.cpp
>>> +++ b/src/share/vm/gc/shared/workgroup.cpp
>>> @@ -276,7 +276,6 @@
>>>     guarantee(num_workers > 0, "Trying to execute task %s with zero
>>> workers", task->name());
>>>     uint old_num_workers = _active_workers;
>>>     update_active_workers(num_workers);
>>> -  guarantee(_active_workers == num_workers, "active workers %u
>>> num_workers %u", _active_workers, num_workers);
>>>     _dispatcher->coordinator_execute_on_workers(task, num_workers);
>>>     update_active_workers(old_num_workers);
>>>   }
>>>
>>> "num_workers" was 2 and the update_active_workers() failed to create
>>> an
>>> additional thread so "_active_workers" remained at 1.  I deleted the
>>> guarantee.
>>>
>>> http://cr.openjdk.java.net/~jmasa/8159073/webrev_delta_03_04/
>>    looks good.
>>
>> Thomas
>>
>




More information about the hotspot-gc-dev mailing list