-void v3_update_time(struct guest_info * info, ullong_t cycles) {
+void v3_update_time(struct guest_info * info, uint64_t cycles) {
struct vm_timer * tmp_timer;
-
+
+ // cycles *= 8;
+
+// cycles /= 150;
+
info->time_state.guest_tsc += cycles;
list_for_each_entry(tmp_timer, &(info->time_state.timers), timer_link) {
- tmp_timer->ops->update_time(cycles, info->time_state.cpu_freq, tmp_timer->private_data);
+ tmp_timer->ops->update_time(info, cycles, info->time_state.cpu_freq, tmp_timer->private_data);
}
//info->time_state.pending_cycles = 0;
}
+
+void v3_advance_time(struct guest_info * core) {
+ struct vm_timer * tmp_timer;
+
+
+ list_for_each_entry(tmp_timer, &(core->time_state.timers), timer_link) {
+ tmp_timer->ops->advance_timer(core, tmp_timer->private_data);
+ }
+
+
+
+}