xen/events: Use PIRQ instead of GSI value when unmapping MSI/MSI-X irqs.
When we allocate a vector for MSI/MSI-X we save away the PIRQ, and the vector value. When we unmap (de-allocate) the MSI/MSI-X vector(s) we need to provide the PIRQ and the vector value. What we did instead was to provide the GSI (which was zero) and the vector value, and we got these unhappy error messages: (XEN) irq.c:1575: dom0: pirq 0 not mapped [ 7.733415] unmap irq failed -22 This patches fixes this and we use the PIRQ value instead of the GSI value. CC: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
This commit is contained in:
parent
ec35a69c46
commit
1233471572
|
@ -755,7 +755,7 @@ int xen_destroy_irq(int irq)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
if (xen_initial_domain()) {
|
if (xen_initial_domain()) {
|
||||||
unmap_irq.pirq = info->u.pirq.gsi;
|
unmap_irq.pirq = info->u.pirq.pirq;
|
||||||
unmap_irq.domid = DOMID_SELF;
|
unmap_irq.domid = DOMID_SELF;
|
||||||
rc = HYPERVISOR_physdev_op(PHYSDEVOP_unmap_pirq, &unmap_irq);
|
rc = HYPERVISOR_physdev_op(PHYSDEVOP_unmap_pirq, &unmap_irq);
|
||||||
if (rc) {
|
if (rc) {
|
||||||
|
|
Loading…
Reference in New Issue