Thanks robin, these updates seem fine to me.
David
On 14/10/2017 12:56 AM, Robin Westberg wrote:
Hi again,
Here’s an updated version that adds a separate event for the
self-revocation path. It’s a new event class as it is a bit different
from the non-self-revocation path, it does not have any relevant
safepoint ID for example.
Webrev:
http://cr.openjdk.java.net/~egahlin/8187042_2/
Third, I would have expected to see more detail in the event such as
which thread (id) the object was biased to and which thread revoked
the bias. Even perhaps some notion of which instance was involved
(though that's harder to shows).
Right, I’ve been looking at capturing which thread the object was
biased towards, but I was afraid of the possible races there as the
thread pointer in the mark would have to be saved before executing
the VM operation. For that to work 100% reliably I suspect it would
have to be done inside the safepoint.
Right the thread holding the bias may not even exist any more! This
may need to utilise the new Thread-SMR work (as a future RFE of
course). :)
Ah yeah, that may be an effective way of doing it. Another idea
suggested by Markus Grönlund was to capture the thread’s id inside the
operation and propagate it through an additional field in the VM
operation class. But anyway, I’ll file a separate RFE for investigating
that improvement.
Best regards,
Robin
I will create an updated webrev after looking into adding an event
for the self-revocation path.
Thanks,
David
Best regards,
Robin