diff --git a/src/experiments/l4-sys/experimentPreparation.cc b/src/experiments/l4-sys/experimentPreparation.cc index 644de464..5d50a23c 100644 --- a/src/experiments/l4-sys/experimentPreparation.cc +++ b/src/experiments/l4-sys/experimentPreparation.cc @@ -89,7 +89,11 @@ void L4SysExperiment::collectInstructionTrace(fail::BPSingleListener* bp) bp->setWatchInstructionPointer(ANY_ADDR); map times_called_map; - bool injecting = false; + /* We run until the IP reaches func_entry. We will not + * reach the same IP again. So, if filter and func entry are + * equal, then we have to enable injections. + */ + bool injecting = conf.filter_entry == conf.func_entry; while (bp->getTriggerInstructionPointer() != conf.func_exit) { fail::BaseListener *res = simulator.resume();