Displaying 3 results from an estimated 3 matches for "map_pirq_type_gsi".
2011 Sep 21
0
[PATCH] x86: IO-APIC code has no dependency on PCI
...;asm/mc146818rtc.h>
#include <asm/smp.h>
@@ -2493,12 +2491,10 @@ int ioapic_guest_write(unsigned long phy
add_pin_to_irq(irq, apic, pin);
}
- spin_lock(&pcidevs_lock);
spin_lock(&dom0->event_lock);
ret = map_domain_pirq(dom0, pirq, irq,
MAP_PIRQ_TYPE_GSI, NULL);
spin_unlock(&dom0->event_lock);
- spin_unlock(&pcidevs_lock);
if ( ret < 0 )
return ret;
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -1661,10 +1661,7 @@ int map_domain_pirq(
struct pirq *info;
struct irq_desc *desc;
unsigned long...
2013 May 21
12
[PATCH] fix XSA-46 regression with xend/xm
...om>
Tested-by: Andreas Falck <falck.andreas.lists@gmail.com> (on 4.1)
Tested-by: Gordan Bobic <gordan@bobich.net> (on 4.2)
--- a/tools/libxc/xc_physdev.c
+++ b/tools/libxc/xc_physdev.c
@@ -49,7 +49,7 @@ int xc_physdev_map_pirq(xc_interface *xc
map.domid = domid;
map.type = MAP_PIRQ_TYPE_GSI;
map.index = index;
- map.pirq = *pirq;
+ map.pirq = *pirq < 0 ? index : *pirq;
rc = do_physdev_op(xch, PHYSDEVOP_map_pirq, &map, sizeof(map));
--- a/tools/python/xen/xend/server/pciif.py
+++ b/tools/python/xen/xend/server/pciif.py
@@ -340,7 +340,7 @@ class PciController(...
2008 Sep 26
2
RE: [Xen-changelog] [xen-unstable] x86: Properly synchronise updates to pirq-to-vector mapping.
...n struct hw_interrupt_type pci_msi_type;
-
static int get_free_pirq(struct domain *d, int type, int index)
{
int i;
- if ( d == NULL )
- return -EINVAL;
-
- ASSERT(spin_is_locked(&d->arch.irq_lock));
+ ASSERT(spin_is_locked(&d->evtchn_lock));
if ( type == MAP_PIRQ_TYPE_GSI )
{
@@ -64,11 +58,10 @@ static int map_domain_pirq(struct domain
int ret = 0;
int old_vector, old_pirq;
struct msi_info msi;
-
- if ( d == NULL )
- return -EINVAL;
-
- ASSERT(spin_is_locked(&d->arch.irq_lock));
+ irq_desc_t *desc;
+ unsigned long flags;...