pci-assign: Fix transition MSI->INTx
PATCH 1/1 pci-assign: Fix transition MSI->INTx
From: Jan Kiszka <[email protected]>
Make sure to re-register the IRQ of an assigned device as INTx when the guest disables MSI[X] mode again.
--- hw/device-assignment.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)
hw/device-assignment.c +6 -0
@@ -1192,7 +1192,10 @@ static void assigned_dev_update_msi(PCIDevice *pci_dev, unsigned int ctrl_pos)if (kvm_assign_irq (kvm_context, &assigned_irq_data) <0 )perror ("assigned_dev_enable_msi: assign irq" ); + assigned_dev->girq =-1 ; assigned_dev->irq_requested_type = assigned_irq_data.flags; + }else { +assign_irq (assigned_dev); } }#endif
@@ -1332,7 +1335,10 @@ static void assigned_dev_update_msix(PCIDevice *pci_dev, unsigned int ctrl_pos)perror ("assigned_dev_enable_msix: assign irq" ); return; } + assigned_dev->girq =-1 ; assigned_dev->irq_requested_type = assigned_irq_data.flags; + }else { +assign_irq (assigned_dev); } }#endif
Signature · 1 line
1.7.1
Quoted 6 lines · Jan Kiszka
From: Jan Kiszka<[email protected]>
Make sure to re-register the IRQ of an assigned device as INTx when the guest disables MSI[X] mode again.
Signed-off-by Jan Kiszka<[email protected]>
Quoted 30 lines
--- hw/device-assignment.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)hw/device-assignment.c +6
-0@@ -1192,7 +1192,10 @@ static void assigned_dev_update_msi(PCIDevice *pci_dev, unsigned int ctrl_pos)if (kvm_assign_irq (kvm_context,&assigned_irq_data)<0 )perror ("assigned_dev_enable_msi: assign irq" ); + assigned_dev->girq =-1 ; assigned_dev->irq_requested_type = assigned_irq_data.flags; + }else { +assign_irq (assigned_dev); } }#endif @@ -1332,7 +1335,10 @@ static void assigned_dev_update_msix(PCIDevice *pci_dev, unsigned int ctrl_pos)perror ("assigned_dev_enable_msix: assign irq" ); return; } + assigned_dev->girq =-1 ; assigned_dev->irq_requested_type = assigned_irq_data.flags; + }else { +assign_irq (assigned_dev); } }#endif
Signature · 1 line
error compiling committee.c: too many arguments to function
Alex Williamson
Acked-byQuoted 9 lines · Avi Kivity
Quoted 6 lines · Jan Kiszka
From: Jan Kiszka<[email protected]>
Make sure to re-register the IRQ of an assigned device as INTx when the guest disables MSI[X] mode again.
Signed-off-by Jan Kiszka<[email protected]>Cc More Reviewers
Looks fine to me.
Quoted 32 lines
Quoted 30 lines
--- hw/device-assignment.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)hw/device-assignment.c +6
-0@@ -1192,7 +1192,10 @@ static void assigned_dev_update_msi(PCIDevice *pci_dev, unsigned int ctrl_pos)if (kvm_assign_irq (kvm_context,&assigned_irq_data)<0 )perror ("assigned_dev_enable_msi: assign irq" ); + assigned_dev->girq =-1 ; assigned_dev->irq_requested_type = assigned_irq_data.flags; + }else { +assign_irq (assigned_dev); } }#endif @@ -1332,7 +1335,10 @@ static void assigned_dev_update_msix(PCIDevice *pci_dev, unsigned int ctrl_pos)perror ("assigned_dev_enable_msix: assign irq" ); return; } + assigned_dev->girq =-1 ; assigned_dev->irq_requested_type = assigned_irq_data.flags; + }else { +assign_irq (assigned_dev); } }#endif
Quoted 6 lines · Jan Kiszka
From: Jan Kiszka <[email protected]>
Make sure to re-register the IRQ of an assigned device as INTx when the guest disables MSI[X] mode again.
Signed-off-by Jan Kiszka <[email protected]>
Quoted 36 lines
--- hw/device-assignment.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)hw/device-assignment.c +6
-0@@ -1192,7 +1192,10 @@ static void assigned_dev_update_msi(PCIDevice *pci_dev, unsigned int ctrl_pos)if (kvm_assign_irq (kvm_context, &assigned_irq_data) <0 )perror ("assigned_dev_enable_msi: assign irq" ); + assigned_dev->girq =-1 ; assigned_dev->irq_requested_type = assigned_irq_data.flags; + }else { +assign_irq (assigned_dev); } }#endif @@ -1332,7 +1335,10 @@ static void assigned_dev_update_msix(PCIDevice *pci_dev, unsigned int ctrl_pos)perror ("assigned_dev_enable_msix: assign irq" ); return; } + assigned_dev->girq =-1 ; assigned_dev->irq_requested_type = assigned_irq_data.flags; + }else { +assign_irq (assigned_dev); } }#endif Signature · 5 lines
1.7.1 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Marcelo Tosatti
AppliedQuoted 9 lines · Jan Kiszka
From: Jan Kiszka <[email protected]>
Make sure to re-register the IRQ of an assigned device as INTx when the guest disables MSI[X] mode again.
Signed-off-by Jan Kiszka <[email protected]>--- hw/device-assignment.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)
Applied, thanks.