I am working on a software-based fault injection technique based on gdb to inject faults (bit flip) into a running program (c code). I have developed a tool to perform fault injecting at run-time. When I inject, for example, 1000 faults, the program produce 1000 log files. In the final step, we should analyze these files to produce fault injection results. the content of log files may be:

  • correct results, exited normally
  • exited normally, but result is wrong
  • nothing
  • program received SIGSEGV
  • program received SIGILL
  • program received SIGTRAP

How to produce an accurate results? sometimes: I found in log file a strange error message from gdb environment

how to analyze these log files? can I analyze these results for the following categories:

  • Exception
  • time-out (hung)
  • correct
  • incorrect

For time out (hung) sometimes I found in log files a SIGHUG. In another experiment, log is empty.

Sometimes the log file contains an output like this:

[setting tty state failed in terminal_inferior: Input/output error]
[tcsetpgrp failed in terminal_inferior: Inappropriate ioctl for device]

what this message means? the program crash? in what category should I put such result?

closed as too broad by muru, Philip Couling, Jeff Schaller Jun 7 at 19:18

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.