United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6855115 G1: Fix for 6850869 is incorrect
JDK-6855115 : G1: Fix for 6850869 is incorrect

Details
Type:
Bug
Submit Date:
2009-06-25
Status:
Resolved
Updated Date:
2010-04-04
Project Name:
JDK
Resolved Date:
2009-07-15
Component:
hotspot
OS:
generic
Sub-Component:
gc
CPU:
generic
Priority:
P3
Resolution:
Fixed
Affected Versions:
hs16
Fixed Versions:
hs16 (b06)

Related Reports
Backport:
Backport:
Relates:

Sub Tasks

Description
My fix for 6850869 is actually incorrect (and thanks to Ramki for spotting it).

                                    

Comments
SUGGESTED FIX

See Evaluation
                                     
2009-06-25
EVALUATION

The bug is in the following code:

1258       size_t end_index = index + 1;
1259       while (index < g1h->n_regions()) {
1260         HeapRegion* chr = g1h->region_at(index);
1261         if (!chr->continuesHumongous()) {
1262           break;
1263         }
1264         end_index += 1;
1265       }
1266       _region_bm->par_at_put_range((BitMap::idx_t) index,
1267                                    (BitMap::idx_t) end_index, true);

On lines 1259 and 1260, index should have been end_index.
                                     
2009-06-25
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-gc/hotspot/rev/3eb9872b10ce
                                     
2009-06-29



Hardware and Software, Engineered to Work Together