X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=README.md;h=fa54aca1b964ba5e030c8a089793bdddc8e01029;hb=d6662bef9d7005a467299d48d786e1861af08e6b;hp=39484eab55e82969c91e2e50ae7dbc1e11393699;hpb=ac726a52e92302014d59ab18d0439325a3cfcaff;p=model-checker.git diff --git a/README.md b/README.md index 39484ea..fa54aca 100644 --- a/README.md +++ b/README.md @@ -257,8 +257,8 @@ vector consists of the following values: CV[0] = 0, CV[1] = 7, CV[2] = 0, CV[3] = 10 -Other Notes ------------ +Other Notes and Pitfalls +------------------------ * Deadlock detection: CDSChecker can detect deadlocks. For instance, try the following test program. @@ -278,6 +278,31 @@ Other Notes division by 0, for instance). In such programs, you might consider running CDSChecker with the `-u num` option. +* Related to the previous point, CDSChecker may report more than one bug for a + particular candidate execution. This is because some bugs may not be + reportable until CDSChecker has explored more of the program, and in the + time between initial discovery and final assessment of the bug, CDSChecker may + discover another bug. + +* Data races may be reported as multiple bugs, one for each byte-address of the + data race in question. See, for example, this run: + + $ ./run.sh test/releaseseq.o + ... + Bug report: 4 bugs detected + [BUG] Data race detected @ address 0x601078: + Access 1: write in thread 2 @ clock 4 + Access 2: read in thread 3 @ clock 9 + [BUG] Data race detected @ address 0x601079: + Access 1: write in thread 2 @ clock 4 + Access 2: read in thread 3 @ clock 9 + [BUG] Data race detected @ address 0x60107a: + Access 1: write in thread 2 @ clock 4 + Access 2: read in thread 3 @ clock 9 + [BUG] Data race detected @ address 0x60107b: + Access 1: write in thread 2 @ clock 4 + Access 2: read in thread 3 @ clock 9 + See Also --------