[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH]vtd: Fix for irq bind failure after PCI attaching 32 times
vtd: Fix for irq bind failure after PCI attaching 32 times Originally when detaching a PCI device, pirq_to_emuirq and pirq_to_irq are freed via hypercall do_physdev_op. Now in function pt_irq_destroy_bind_vtd, duplicated logic is added to free pirq_to_emuirq, but not pirq_to_irq. This causes do_physdev_op fail to free both emuirq and irq. After attaching a PCI device for 32 times, irq resources run out. This patch removes the redundant logic. Signed-off-by: Fengzhe Zhang <fengzhe.zhang@xxxxxxxxx> diff -r 003acf02d416 xen/drivers/passthrough/io.c --- a/xen/drivers/passthrough/io.c Thu Jan 20 17:04:06 2011 +0000 +++ b/xen/drivers/passthrough/io.c Wed Jan 26 23:05:33 2011 +0800 @@ -375,7 +375,6 @@ hvm_irq_dpci->mirq[machine_gsi].dom = NULL; hvm_irq_dpci->mirq[machine_gsi].flags = 0; clear_bit(machine_gsi, hvm_irq_dpci->mapping); - unmap_domain_pirq_emuirq(d, machine_gsi); } } spin_unlock(&d->event_lock); Attachment:
irq_bind_failure_after_pci-attach_32_times_fix.patch _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |