X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fvmm_time.c;h=44d5d02488eea32a86ff8beb341b7ffbd993019b;hb=e4bc6022970d0f8252e1f2ac512f7d977b40e51b;hp=319d1585cc50965fce08751df237ef5687ee944a;hpb=123a1ba27ea09c8fa77a1b36ce625b43d7c48b14;p=palacios.git diff --git a/palacios/src/palacios/vmm_time.c b/palacios/src/palacios/vmm_time.c index 319d158..44d5d02 100644 --- a/palacios/src/palacios/vmm_time.c +++ b/palacios/src/palacios/vmm_time.c @@ -60,16 +60,32 @@ int v3_remove_timer(struct guest_info * info, struct vm_timer * timer) { -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); + } + + + +}