diff --git a/fuzzers/wcet_qemu_sys/src/bin/fuzzer.rs b/fuzzers/wcet_qemu_sys/src/bin/fuzzer.rs index bc046a7c30..1a44424d69 100644 --- a/fuzzers/wcet_qemu_sys/src/bin/fuzzer.rs +++ b/fuzzers/wcet_qemu_sys/src/bin/fuzzer.rs @@ -1,5 +1,6 @@ //! A singlethreaded QEMU fuzzer that can auto-restart. +use libafl::stats::SimpleStats; use wcet_qemu_sys::sysstate::feedbacks::HitSysStateFeedback; use wcet_qemu_sys::sysstate::MiniFreeRTOSSystemState; use libafl::corpus::QueueCorpusScheduler; @@ -73,7 +74,7 @@ use libafl_qemu::{ clock::ClockFeedback, clock::QemuClockIncreaseFeedback }; -use wcet_qemu_sys::worst::{SortedFeedback,HitFeedback,HitImprovingFeedback,LenTimeMaximizerCorpusScheduler}; +use wcet_qemu_sys::worst::{SortedFeedback,HitFeedback,HitImprovingFeedback,TimeStateMaximizerCorpusScheduler}; /// The fuzzer main diff --git a/fuzzers/wcet_qemu_sys/src/bin/showmap.rs b/fuzzers/wcet_qemu_sys/src/bin/showmap.rs index 772a117104..4180be6eeb 100644 --- a/fuzzers/wcet_qemu_sys/src/bin/showmap.rs +++ b/fuzzers/wcet_qemu_sys/src/bin/showmap.rs @@ -337,7 +337,7 @@ fn fuzz( ExitKind::Ok }; //======= Set System-State watchpoints - let system_state_filter = QemuInstrumentationFilter::AllowList(vec![svh..svh+1,systick_handler..systick_handler+1,svc_handle..svc_handle+1]); + let system_state_filter = QemuInstrumentationFilter::AllowList(vec![svh..svh+1]); //======= Construct the executor, including the Helpers. The edges_observer still contains the ref to EDGES_MAP let mut executor = QemuExecutor::new( diff --git a/fuzzers/wcet_qemu_sys/src/sysstate/observers.rs b/fuzzers/wcet_qemu_sys/src/sysstate/observers.rs index 30bbd5b7a7..8c5fdb12eb 100644 --- a/fuzzers/wcet_qemu_sys/src/sysstate/observers.rs +++ b/fuzzers/wcet_qemu_sys/src/sysstate/observers.rs @@ -113,7 +113,7 @@ fn tcb_list_to_vec_cached(list: List_t, dump: &mut HashMap) -> fn refine_system_states(input: &mut Vec) -> Vec { let mut ret = Vec::::new(); let mut start_tick : u64 = 0; -for i in input.into_iter() { +for mut i in input.drain(..) { let mut collector = Vec::::new(); for j in i.prio_ready_lists.into_iter().rev() { let mut tmp = tcb_list_to_vec_cached(j,&mut i.dumping_ground).iter().map(|x| MiniTCB::from_tcb(x)).collect();