On Fri, 20 Aug 2021 16:41:40 GMT, Coleen Phillimore <cole...@openjdk.org> wrote:

> I moved nonleaf ranked locks to be leaf (or leaf+something).  Many of the 
> leaf locks are safepoint_check_never.  Segregating this rank into safepoint 
> checking and non-safepoint checking is left for a future RFE.
> Tested with tier1-3.  Tier 4-6 testing in progress.

Hi Coleen,

Sorry I'm struggling to interpret exactly what these changes mean.  You're 
redefining the ranking for some locks so that you can then declare that nonleaf 
locks should not be safepoint-check-never. But in changing those rankings you 
are also potentially reducing the set of lock nestings that are permitted - so 
for example a lock that was Barrier and is now leaf+1 can no longer be locked 
before locking a leaf+2, 3...9. That might be valid but it is not at all 
obvious how to verify that - testing alone will only cover the common code 
paths, not necessarily those rarely taken e.g for debugging, logging, 
exceptional conditions, event processing, non-default flag values ...

It is not at all clear to me that the ranking strategy and the 
safepoint-checking strategy align in the way you are implying.

Could you elaborate on how you expect this to end up looking please.

Thanks,
David

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

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

Reply via email to