[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH 0/5] x86/vlapic: implement EOI callbacks
Hello, The following series attempts to implement EOI callbacks for vlapic injected vectors, this allows to remove the hardcoded callbacks in vlapic_handle_EOI. Instead a new vlapic vector injection helper is provided, that takes two extra parameters in order to pass a callback and an opaque data blob that will be called once the vector is EOI'ed by the guest. My plan with this is to be able to provide EOI callbacks for all interrupt types that we inject to the guest, this is only the first step of that work by changing the emulated lapic to use this model. The IO-APIC and PIC still need to be switched to a similar model. Long term having such callbacks would greatly simplify the virtual periodic timers code, as being able to get a callback when the injected interrupt is EOI'ed simplifies the handling of missed ticks, as we would no longer need to check at each vmentry whether a virtual interrupt timer is being injected. Thanks, Roger. Roger Pau Monne (5): x86/hvm: change EOI exit bitmap helper parameter x86/vlapic: introduce an EOI callback mechanism x86/vmsi: use the newly introduced EOI callbacks x86/viridian: switch synic to use the new EOI callback x86/vioapic: switch to use the EOI callback mechanism xen/arch/x86/hvm/vioapic.c | 90 +++++++++++++++--------------- xen/arch/x86/hvm/viridian/synic.c | 28 +++++----- xen/arch/x86/hvm/vlapic.c | 61 ++++++++++++++++---- xen/arch/x86/hvm/vmsi.c | 36 +++++++----- xen/arch/x86/hvm/vmx/vmx.c | 4 +- xen/drivers/passthrough/io.c | 4 +- xen/include/asm-x86/hvm/hvm.h | 2 +- xen/include/asm-x86/hvm/io.h | 2 +- xen/include/asm-x86/hvm/viridian.h | 1 - xen/include/asm-x86/hvm/vlapic.h | 10 ++++ 10 files changed, 150 insertions(+), 88 deletions(-) -- 2.28.0
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |