KVM: x86/xen: handle PV timers oneshot mode
If the guest has offloaded the timer virq, handle the following hypercalls for programming the timer: VCPUOP_set_singleshot_timer VCPUOP_stop_singleshot_timer set_timer_op(timestamp_ns) The event channel corresponding to the timer virq is then used to inject events once timer deadlines are met. For now we back the PV timer with hrtimer. [ dwmw2: Add save/restore, 32-bit compat mode, immediate delivery, don't check timer in kvm_vcpu_has_event() ] Signed-off-by:Joao Martins <joao.m.martins@oracle.com> Signed-off-by:
David Woodhouse <dwmw@amazon.co.uk> Signed-off-by:
Paolo Bonzini <pbonzini@redhat.com> Message-Id: <20220303154127.202856-13-dwmw2@infradead.org> Signed-off-by:
Paolo Bonzini <pbonzini@redhat.com>
Showing
- arch/x86/include/asm/kvm_host.h 4 additions, 0 deletionsarch/x86/include/asm/kvm_host.h
- arch/x86/kvm/irq.c 8 additions, 2 deletionsarch/x86/kvm/irq.c
- arch/x86/kvm/xen.c 211 additions, 0 deletionsarch/x86/kvm/xen.c
- arch/x86/kvm/xen.h 28 additions, 0 deletionsarch/x86/kvm/xen.h
- include/uapi/linux/kvm.h 6 additions, 0 deletionsinclude/uapi/linux/kvm.h
Loading
Please register or sign in to comment