From: Yang Zhang <yang.z.zhang@intel.com>
To: kvm@vger.kernel.org
Cc: gleb@redhat.com, mtosatti@redhat.com, xiantao.zhang@intel.com,
Yang Zhang <yang.z.zhang@Intel.com>
Subject: [PATCH v7 0/7] Use eoi to track RTC interrupt delivery status
Date: Mon, 1 Apr 2013 08:40:09 +0800 [thread overview]
Message-ID: <1364776816-30772-1-git-send-email-yang.z.zhang@intel.com> (raw)
From: Yang Zhang <yang.z.zhang@Intel.com>
Current interrupt coalescing logci which only used by RTC has conflict
with Posted Interrupt.
This patch introduces a new mechinism to use eoi to track interrupt:
When delivering an interrupt to vcpu, the pending_eoi set to number of
vcpu that received the interrupt. And decrease it when each vcpu writing
eoi. No subsequent RTC interrupt can deliver to vcpu until all vcpus
write eoi.
Changes from v6 to v7
* Only track the RTC interrupt when userspace uses *_LINE_* ioctl.
* Call rtc_irq_restore() after lapic is restored.
* Rebase on top of KVM.
Changes from v5 to v6
* Move set dest_map logic into __apic_accept_irq().
* Use RTC_GSI to distinguish different platform, and drop all CONFIG_X86.
* Rebase on top of KVM.
Changes from v4 to v5
* Calculate destination vcpu on interrupt injection not hook into ioapic
modification.
* Rebase on top of KVM.
Yang Zhang (7):
KVM: Add vcpu info to ioapic_update_eoi()
KVM: Introduce struct rtc_status
KVM : Return destination vcpu on interrupt injection
KVM: Add reset/restore rtc_status support
KVM : Force vmexit with virtual interrupt delivery
KVM: Let ioapic know the irq line status
KVM: Use eoi to track RTC interrupt delivery status
arch/x86/kvm/i8254.c | 4 +-
arch/x86/kvm/lapic.c | 36 ++++++++++----
arch/x86/kvm/lapic.h | 7 ++-
arch/x86/kvm/x86.c | 6 ++-
include/linux/kvm_host.h | 11 +++--
virt/kvm/assigned-dev.c | 13 +++--
virt/kvm/eventfd.c | 15 ++++--
virt/kvm/ioapic.c | 115 +++++++++++++++++++++++++++++++++++++++------
virt/kvm/ioapic.h | 20 +++++++-
virt/kvm/irq_comm.c | 31 +++++++-----
virt/kvm/kvm_main.c | 3 +-
11 files changed, 196 insertions(+), 65 deletions(-)
next reply other threads:[~2013-04-01 0:44 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-01 0:40 Yang Zhang [this message]
2013-04-01 0:40 ` [PATCH v7 1/7] KVM: Add vcpu info to ioapic_update_eoi() Yang Zhang
2013-04-01 0:40 ` [PATCH v7 2/7] KVM: Introduce struct rtc_status Yang Zhang
2013-04-01 0:40 ` [PATCH v7 3/7] KVM : Return destination vcpu on interrupt injection Yang Zhang
2013-04-01 0:40 ` [PATCH v7 4/7] KVM: Add reset/restore rtc_status support Yang Zhang
2013-04-04 11:58 ` Gleb Natapov
2013-04-07 2:30 ` Zhang, Yang Z
2013-04-07 9:17 ` Gleb Natapov
2013-04-07 12:39 ` Zhang, Yang Z
2013-04-07 12:42 ` Gleb Natapov
2013-04-07 13:05 ` Zhang, Yang Z
2013-04-07 13:08 ` Gleb Natapov
2013-04-07 13:16 ` Zhang, Yang Z
2013-04-07 13:32 ` Gleb Natapov
2013-04-07 13:46 ` Zhang, Yang Z
2013-04-07 13:55 ` Gleb Natapov
2013-04-08 11:21 ` Zhang, Yang Z
2013-04-08 12:45 ` Gleb Natapov
2013-04-08 13:12 ` Zhang, Yang Z
2013-04-01 0:40 ` [PATCH v7 5/7] KVM : Force vmexit with virtual interrupt delivery Yang Zhang
2013-04-01 0:40 ` [PATCH v7 6/7] KVM: Let ioapic know the irq line status Yang Zhang
2013-04-01 0:40 ` [PATCH v7 7/7] KVM: Use eoi to track RTC interrupt delivery status Yang Zhang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1364776816-30772-1-git-send-email-yang.z.zhang@intel.com \
--to=yang.z.zhang@intel.com \
--cc=gleb@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=mtosatti@redhat.com \
--cc=xiantao.zhang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox