|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH 21/24] x86: type-correct last parameter of map_domain_pirq()
This was meant to allow for non-MSI data to be passed if necessary, but
the way XSM/Flask uses the (propagated) argument that's not going to work
anyway without further adjustments. As no secondary use has surfaced in
many years, switch to using the correct type.
Leave XSM alone, as that'll be changed subsequently anyway (to then also
no longer use plain void).
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
--- a/xen/arch/x86/include/asm/irq.h
+++ b/xen/arch/x86/include/asm/irq.h
@@ -27,6 +27,7 @@ typedef struct {
} vmask_t;
struct irq_desc;
+struct msi_info;
/*
* Xen logic for moving interrupts around CPUs allows manipulating interrupts
@@ -161,7 +162,7 @@ struct arch_pirq {
int pirq_shared(struct domain *d , int pirq);
int map_domain_pirq(struct domain *d, int pirq, int irq, int type,
- void *data);
+ struct msi_info *msi);
int unmap_domain_pirq(struct domain *d, int pirq);
int get_free_pirq(struct domain *d, int type);
int get_free_pirqs(struct domain *d, unsigned int nr);
--- a/xen/arch/x86/irq.c
+++ b/xen/arch/x86/irq.c
@@ -2180,7 +2180,7 @@ int get_free_pirqs(struct domain *d, uns
#define MAX_MSI_IRQS 32 /* limited by MSI capability struct properties */
int map_domain_pirq(
- struct domain *d, int pirq, int irq, int type, void *data)
+ struct domain *d, int pirq, int irq, int type, struct msi_info *msi)
{
int ret = 0;
int old_irq, old_pirq;
@@ -2214,7 +2214,7 @@ int map_domain_pirq(
return 0;
}
- ret = xsm_map_domain_irq(XSM_HOOK, d, irq, data);
+ ret = xsm_map_domain_irq(XSM_HOOK, d, irq, msi);
if ( ret )
{
dprintk(XENLOG_G_ERR, "dom%d: could not permit access to irq %d
mapping to pirq %d\n",
@@ -2245,7 +2245,6 @@ int map_domain_pirq(
if ( type == MAP_PIRQ_TYPE_MSI || type == MAP_PIRQ_TYPE_MULTI_MSI )
{
- struct msi_info *msi = (struct msi_info *)data;
struct msi_desc *msi_desc;
struct pci_dev *pdev;
unsigned int nr = 0;
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |