Skip to content

ALFA-group/RaceInjector-counterexamples

Repository files navigation

RaceInjector-counterexamples

This repository contains counterexamples described in RaceInjector: Injecting Races To Evaluate And Learn Dynamic Race Detection Algorithms by Michael Wang, Shashank Srikant, Malavika Samak, Una-May O'Reilly, 2023.

Link to paper - [link]

Citation

@inproceedings{
	[citation]
}

The counterexamples, which are generated by our method RaceInjector, are program execution traces with a guaranteed race condition in them which recent race detection algorithms fail to detect.

For clarifications, please contact Michael ([email protected]) or Shashank ([email protected]).

Folder structure

treeset_orig, arraylist_orig, and jigsaw_orig are the original base traces collected by Calfuzzer [link].

These traces correspond to the following program benchmarks:

The race detection algorithms evaluated are:

  • Happens-Before (HB; Lamport, 1976) [link]
  • Schedulable Happens-Before (SHB; Mathur et al., 2018) [link]
  • Weak Causally Precedes (WCP; Kini et al., 2017) [link]
  • SyncP (Mathur et al., 2021) [link]

The folder ./{algorithm}_missed contains counterexamples generated for each program benchmark corresponding to the algorithm.
For example, syncp_missed/treeset contains all the traces generated from the TreeSet base trace that each contain a RaceInjector-injected race condition which SyncP fails to detect.

About

[SOAP 2023, PLDI] Counterexamples generated by RaceInjector

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published