RFR: 8280828: Improve invariants in NonblockingQueue::append
    Kim Barrett 
    kbarrett at openjdk.java.net
       
    Thu Jan 27 21:06:38 UTC 2022
    
    
  
Please review this change to NonblockingQueue to improve invariants in the
append operation by making a change in try_pop.
When taking the last entry in the queue, try_pop needs to do some cleanup of
the queue fields, setting them to NULL.  The order of those cleanups doesn't
matter for correctness.  However, setting first _head then _tail permits
append to assert that _head is NULL when it finds _tail was NULL.  The current
order (set _tail first, then _head) doesn't permit such an assertion.
Testing:
mach5 tier1-3
I also did lots of testing with this change included while investigating
JDK-8273383.
-------------
Commit messages:
 - append invariant
Changes: https://git.openjdk.java.net/jdk/pull/7250/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=7250&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8280828
  Stats: 44 lines in 1 file changed: 19 ins; 6 del; 19 mod
  Patch: https://git.openjdk.java.net/jdk/pull/7250.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/7250/head:pull/7250
PR: https://git.openjdk.java.net/jdk/pull/7250
    
    
More information about the hotspot-dev
mailing list