EVALUATION
ChangeSet=http://hg.openjdk.java.net/jdk7/hotspot-gc/hotspot/rev/6484c4ee11cb,ChangeRequest=6904516
|
|
|
SUGGESTED FIX
Here's a [reliminary but not as yet complete webrev:-
http://analemma.sfbay.sun.com/net/neeraja/export/ysr/barriers/webrev
|
|
|
SUGGESTED FIX
Code review and inspection found other places that could be similarly vulnerable and
need to be fixed, so the above suggested fix is incomplete. Indeed, more extensive
fixes are needed to address the marking of extra cards (which is mostly benign from
a correctness standpoint, but not always) when using compressed oops. These should
also be fixed. Missing pre-barriers needed for G1 also came to light during this
code inspection and should be fixed. Whether all of these fixes should form part
of this CR or of other ne CRs etc. will need to be a pragmatic decision based
on product release dates, I am assuming. Watch this space.
|
|
|
EVALUATION
More extensive issues were found that need to be fixed via more
extensive changes to some of the barrier set interfaces; however, a small
essential subset which fix the essential unsafety have been moved to
a new CR 6906727, so as to mitigate the risk of the more extensive
fixes which latter are targeted for hs17 as part of fixing CR 6904516.
See display 16 of Comments section.
|
|
|
EVALUATION
Object array updates with compressed oops could, under suitable circumstances (see
Comments section for details) miss marking the last card because of an off-by-one
error when computing the range of cards to mark.
|
|
|
SUGGESTED FIX
< remove obsolete entry >
|
|
|
WORK AROUND
-XX:-UseCompressedOops
|
|
|