All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] Clean up and enable MSI support for assigned device(v2)
@ 2008-10-08  8:38 Sheng Yang
  2008-10-08  8:38 ` [PATCH 1/4] Separate update irq to a single function Sheng Yang
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Sheng Yang @ 2008-10-08  8:38 UTC (permalink / raw)
  To: Avi Kivity; +Cc: kvm

Hi, Avi

Here is the update of MSI support. The main change is to move
kvm_register_irq_ack_notifier() to common code rather than keep it in
update_irq(), for it's the basic request of assigned device.

Thanks!
--
regards
Yang, Sheng

^ permalink raw reply	[flat|nested] 10+ messages in thread
* [PATCH 2/4] KVM: x86: Replace irq_requested with guest_intr_type
@ 2008-09-26  5:17 Sheng Yang
  0 siblings, 0 replies; 10+ messages in thread
From: Sheng Yang @ 2008-09-26  5:17 UTC (permalink / raw)
  To: Avi Kivity; +Cc: kvm, Weidong", Allen M", Sheng Yang


Signed-off-by: Sheng Yang <sheng.yang@intel.com>
---
 arch/x86/kvm/x86.c       |    8 ++++----
 include/linux/kvm_host.h |    3 ++-
 2 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 43fb049..4836323 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -170,7 +170,7 @@ static void kvm_free_assigned_device(struct kvm *kvm,
 				     struct kvm_assigned_dev_kernel
 				     *assigned_dev)
 {
-	if (irqchip_in_kernel(kvm) && assigned_dev->irq_requested)
+	if (irqchip_in_kernel(kvm) && assigned_dev->guest_intr_type)
 		free_irq(assigned_dev->host_irq, (void *)assigned_dev);
 
 	kvm_unregister_irq_ack_notifier(kvm, &assigned_dev->ack_notifier);
@@ -209,7 +209,7 @@ static int assigned_device_update_irq(struct kvm *kvm,
 			struct kvm_assigned_dev_kernel *assigned_dev,
 			struct kvm_assigned_irq *assigned_irq)
 {
-	if (assigned_dev->irq_requested) {
+	if (assigned_dev->guest_intr_type == KVM_ASSIGNED_DEV_INTR) {
 		assigned_dev->guest_irq = assigned_irq->guest_irq;
 		assigned_dev->ack_notifier.gsi = assigned_irq->guest_irq;
 		return 0;
@@ -236,7 +236,7 @@ static int assigned_device_update_irq(struct kvm *kvm,
 				0, "kvm_assigned_device", (void *)assigned_dev))
 			return -EIO;
 	}
-	assigned_dev->irq_requested = true;
+	assigned_dev->guest_intr_type = KVM_ASSIGNED_DEV_INTR;
 
 	return 0;
 }
@@ -257,7 +257,7 @@ static int kvm_vm_ioctl_assign_irq(struct kvm *kvm,
 		return -EINVAL;
 	}
 
-	if (!match->irq_requested)
+	if (!match->guest_intr_type)
 		INIT_WORK(&match->interrupt_work,
 				kvm_assigned_dev_interrupt_work_handler);
 
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
index 6252802..e24280b 100644
--- a/include/linux/kvm_host.h
+++ b/include/linux/kvm_host.h
@@ -301,7 +301,8 @@ struct kvm_assigned_dev_kernel {
 	int host_devfn;
 	int host_irq;
 	int guest_irq;
-	int irq_requested;
+#define KVM_ASSIGNED_DEV_INTR	1
+	int guest_intr_type;
 	struct pci_dev *dev;
 	struct kvm *kvm;
 };
-- 
1.5.4.5


^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2008-10-08 10:28 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-10-08  8:38 [PATCH 0/4] Clean up and enable MSI support for assigned device(v2) Sheng Yang
2008-10-08  8:38 ` [PATCH 1/4] Separate update irq to a single function Sheng Yang
2008-10-08 10:27   ` Sheng Yang
2008-10-08  8:38 ` [PATCH 2/4] KVM: x86: Replace irq_requested with guest_intr_type Sheng Yang
2008-10-08  8:38 ` [PATCH 3/4] x86: Add MSI delivery mode mask Sheng Yang
2008-10-08  8:48   ` Zhang, Xiantao
2008-10-08  8:52     ` Sheng Yang
2008-10-08  9:06       ` Zhang, Xiantao
2008-10-08  8:38 ` [PATCH 4/4] KVM: Enable MSI for device assignment Sheng Yang
  -- strict thread matches above, loose matches on Subject: below --
2008-09-26  5:17 [PATCH 2/4] KVM: x86: Replace irq_requested with guest_intr_type Sheng Yang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.