RFR: 8212107: VMThread issues and cleanup [v6]

Robbin Ehn rehn at openjdk.java.net
Fri Sep 25 12:20:37 UTC 2020


On Thu, 24 Sep 2020 20:27:18 GMT, Daniel D. Daugherty <dcubed at openjdk.org> wrote:

>> Robbin Ehn has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Removed assert as suggested by David
>
> src/hotspot/share/runtime/vmThread.cpp line 354:
> 
>> 352:       // Wait to install this operation as the next operation in the VM Thread
>> 353:       log_trace(vmthread)("A VM operation already set, waiting");
>> 354:       ml.wait();
> 
> So instead of a thread enqueuing an operation on the VMop queue
> and then waiting for the operation to be executed, we have the thread
> waiting to enqueue the operation as the "next operation". It seems to
> me that the new algorithm means that the waiting thread will be
> woken up more often and then go back to wait()ing without progress.
> Perhaps this is mitigated by there being way fewer VM operations in
> the system, but I'm not sure.

What David said.
When I do stress test I have not been able to produce a thread printing "A VM operation already set, waiting" twice in
a row.

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

PR: https://git.openjdk.java.net/jdk/pull/228


More information about the hotspot-dev mailing list