< prev index next >

src/share/vm/gc/cms/concurrentMarkSweepGeneration.cpp

Print this page

        

*** 2285,2305 **** if (CMSRemarkVerifyVariant == 1) { // In this first variant of verification, we complete // all marking, then check if the new marks-vector is // a subset of the CMS marks-vector. verify_after_remark_work_1(); ! } else if (CMSRemarkVerifyVariant == 2) { // In this second variant of verification, we flag an error // (i.e. an object reachable in the new marks-vector not reachable // in the CMS marks-vector) immediately, also indicating the // identify of an object (A) that references the unmarked object (B) -- // presumably, a mutation to A failed to be picked up by preclean/remark? verify_after_remark_work_2(); - } else { - warning("Unrecognized value " UINTX_FORMAT " for CMSRemarkVerifyVariant", - CMSRemarkVerifyVariant); } return true; } void CMSCollector::verify_after_remark_work_1() { ResourceMark rm; --- 2285,2304 ---- if (CMSRemarkVerifyVariant == 1) { // In this first variant of verification, we complete // all marking, then check if the new marks-vector is // a subset of the CMS marks-vector. verify_after_remark_work_1(); ! } else { ! guarantee(CMSRemarkVerifyVariant == 2, "Range checking for CMSRemarkVerifyVariant should guarantee 1 or 2"); // In this second variant of verification, we flag an error // (i.e. an object reachable in the new marks-vector not reachable // in the CMS marks-vector) immediately, also indicating the // identify of an object (A) that references the unmarked object (B) -- // presumably, a mutation to A failed to be picked up by preclean/remark? verify_after_remark_work_2(); } + return true; } void CMSCollector::verify_after_remark_work_1() { ResourceMark rm;
< prev index next >