DependableSystemsLab / LLFI

LLFI is an LLVM based fault injection tool, that injects faults into the LLVM IR of the application source code. The faults can be injected into specific program points, and the effect can be easily tracked back to the source code. Please refer to the paper below. NOTE: If you publish a paper using LLFI, please add it to PaperLLFI.bib
http://blogs.ubc.ca/karthik/2014/02/23/quantifying-the-accuracy-of-high-level-fault-injection-techniques/
Other
68 stars 35 forks source link

Inconsistency in fi_index #86

Closed Behroosh closed 8 years ago

Behroosh commented 8 years ago

The fi_index starts from 1 in the PROGRAM-faultinjection.ll and PROGRAM-llfi_index. However, the fi_index is counted from zero in files such as llfi.stat.trace.prof (golden run), llfi.stat.trace (fault injection run) and llfi.stat.fi.injectedfaults. This causes some inconsistency in the trace files and the instructions that have actually been targeted.

nankmr2012 commented 8 years ago

The issue was resolved by troubling shooting thr llvm_pass directory for index generating file (Utils.cpp), where one of the variable(fi_index) initial point was changed to one from zero. The same is corrected in gui directory in the instrument phase file (InstrumentController). Now the index for instruction starts one in all the file and matches. The regression test was conducted after implementing changes and found pass.

abrahamchan commented 8 years ago

I have successfully reviewed this fix with Nanda.