[Gems-users] Signature Conflict Detection


Date: Mon, 11 Feb 2008 14:21:29 -0500 (EST)
From: "Richard Yoo" <yoo@xxxxxxxxxxxxxx>
Subject: [Gems-users] Signature Conflict Detection
Hi,

I have a question regarding the
SimicsHypervisor::existSummarySignatureConflict() function in
SimicsHypervisor.C.

if(isRead) {
    // check Summary Write signature
    bool perfect_result =
xact_isol_mgr->isInSummaryWriteSetPerfectFilter(0, addr);
    bool imperfect_result = perfect_result;

    if(! PERFECT_SUMMARY_FILTER) {
        bool imperfect_result =
xact_isol_mgr->isInSummaryWriteSetFilter(0, addr);
        // no false negatives
        assert(!(perfect_result && !imperfect_result));
    }

    if (imperfect_result) {
        return CONFLICT_IS_READER | CONFLICT_WITH_SUMMARY_WRITE;
    } else {
        return 0;
    }
}

Following the above code, imperfect_result variable would always be equal
to perfect_result variable; which means we only use perfect signature in
conflict detection, regardless of whether PERFECT_SUMMARY_FILTER is set or
not.

Is this intentional?
Am I missing something?

Thanks in advance.


-Richard



[← Prev in Thread] Current Thread [Next in Thread→]