RFR: 8079315: UseCondCardMark broken in conjunction with CMS	precleaning
    Andrew Haley 
    aph at redhat.com
       
    Tue May  5 19:34:23 UTC 2015
    
    
  
On 05/05/2015 05:53 PM, Aleksey Shipilev wrote:
> 
> But I am suspicious about the whole interaction between mutator and collector. Cautiously speaking, every time I see a conditional update in a concurrent code, I expect some form of atomic CAS that provides a global order w.r.t. the particular memory location.
> 
> What exactly happens when collector transits card to "clean"? How does the mutator sees the proper "clean" value for the card mark? Can it miss the card mark update with UseCondCardMark because it saw the "outdated" card mark value?
That's what worries me too.  But my attitude is coloured by some of
the hardware I've been using recently, where some stale values in
cache I've seen can only be explained by missing updates that happened
not microseconds nor even milliseconds, but actual seconds ago.  And
so I know this: whatever is not forbidden will happen, and more often
than I expect!
Andrew.
    
    
More information about the hotspot-dev
mailing list