diff options
author | Jan Beulich <JBeulich@suse.com> | 2013-04-03 10:52:50 -0400 |
---|---|---|
committer | Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> | 2013-04-16 15:05:45 -0400 |
commit | dec02dea1c159b69aa88cbfe9c89b2b46eadd28f (patch) | |
tree | 7b4af6d6ddd44347d6abb44f9bb034620645220f | |
parent | 96f28bc66adb1414cfc9405ff80cfffdc44edd84 (diff) |
xen: drop tracking of IRQ vector
For quite a few Xen versions, this wasn't the IRQ vector anymore
anyway, and it is not being used by the kernel for anything. Hence
drop the field from struct irq_info, and respective function
parameters.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
-rw-r--r-- | arch/x86/pci/xen.c | 6 | ||||
-rw-r--r-- | drivers/xen/events.c | 13 | ||||
-rw-r--r-- | include/xen/events.h | 3 |
3 files changed, 8 insertions, 14 deletions
diff --git a/arch/x86/pci/xen.c b/arch/x86/pci/xen.c index 94e76620460f..4a9be6ddf054 100644 --- a/arch/x86/pci/xen.c +++ b/arch/x86/pci/xen.c | |||
@@ -177,7 +177,7 @@ static int xen_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) | |||
177 | goto error; | 177 | goto error; |
178 | i = 0; | 178 | i = 0; |
179 | list_for_each_entry(msidesc, &dev->msi_list, list) { | 179 | list_for_each_entry(msidesc, &dev->msi_list, list) { |
180 | irq = xen_bind_pirq_msi_to_irq(dev, msidesc, v[i], 0, | 180 | irq = xen_bind_pirq_msi_to_irq(dev, msidesc, v[i], |
181 | (type == PCI_CAP_ID_MSIX) ? | 181 | (type == PCI_CAP_ID_MSIX) ? |
182 | "pcifront-msi-x" : | 182 | "pcifront-msi-x" : |
183 | "pcifront-msi", | 183 | "pcifront-msi", |
@@ -244,7 +244,7 @@ static int xen_hvm_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) | |||
244 | dev_dbg(&dev->dev, | 244 | dev_dbg(&dev->dev, |
245 | "xen: msi already bound to pirq=%d\n", pirq); | 245 | "xen: msi already bound to pirq=%d\n", pirq); |
246 | } | 246 | } |
247 | irq = xen_bind_pirq_msi_to_irq(dev, msidesc, pirq, 0, | 247 | irq = xen_bind_pirq_msi_to_irq(dev, msidesc, pirq, |
248 | (type == PCI_CAP_ID_MSIX) ? | 248 | (type == PCI_CAP_ID_MSIX) ? |
249 | "msi-x" : "msi", | 249 | "msi-x" : "msi", |
250 | DOMID_SELF); | 250 | DOMID_SELF); |
@@ -326,7 +326,7 @@ static int xen_initdom_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) | |||
326 | } | 326 | } |
327 | 327 | ||
328 | ret = xen_bind_pirq_msi_to_irq(dev, msidesc, | 328 | ret = xen_bind_pirq_msi_to_irq(dev, msidesc, |
329 | map_irq.pirq, map_irq.index, | 329 | map_irq.pirq, |
330 | (type == PCI_CAP_ID_MSIX) ? | 330 | (type == PCI_CAP_ID_MSIX) ? |
331 | "msi-x" : "msi", | 331 | "msi-x" : "msi", |
332 | domid); | 332 | domid); |
diff --git a/drivers/xen/events.c b/drivers/xen/events.c index aa85881d17b2..bb65f75e40a5 100644 --- a/drivers/xen/events.c +++ b/drivers/xen/events.c | |||
@@ -85,8 +85,7 @@ enum xen_irq_type { | |||
85 | * event channel - irq->event channel mapping | 85 | * event channel - irq->event channel mapping |
86 | * cpu - cpu this event channel is bound to | 86 | * cpu - cpu this event channel is bound to |
87 | * index - type-specific information: | 87 | * index - type-specific information: |
88 | * PIRQ - vector, with MSB being "needs EIO", or physical IRQ of the HVM | 88 | * PIRQ - physical IRQ, GSI, flags, and owner domain |
89 | * guest, or GSI (real passthrough IRQ) of the device. | ||
90 | * VIRQ - virq number | 89 | * VIRQ - virq number |
91 | * IPI - IPI vector | 90 | * IPI - IPI vector |
92 | * EVTCHN - | 91 | * EVTCHN - |
@@ -105,7 +104,6 @@ struct irq_info { | |||
105 | struct { | 104 | struct { |
106 | unsigned short pirq; | 105 | unsigned short pirq; |
107 | unsigned short gsi; | 106 | unsigned short gsi; |
108 | unsigned char vector; | ||
109 | unsigned char flags; | 107 | unsigned char flags; |
110 | uint16_t domid; | 108 | uint16_t domid; |
111 | } pirq; | 109 | } pirq; |
@@ -211,7 +209,6 @@ static void xen_irq_info_pirq_init(unsigned irq, | |||
211 | unsigned short evtchn, | 209 | unsigned short evtchn, |
212 | unsigned short pirq, | 210 | unsigned short pirq, |
213 | unsigned short gsi, | 211 | unsigned short gsi, |
214 | unsigned short vector, | ||
215 | uint16_t domid, | 212 | uint16_t domid, |
216 | unsigned char flags) | 213 | unsigned char flags) |
217 | { | 214 | { |
@@ -221,7 +218,6 @@ static void xen_irq_info_pirq_init(unsigned irq, | |||
221 | 218 | ||
222 | info->u.pirq.pirq = pirq; | 219 | info->u.pirq.pirq = pirq; |
223 | info->u.pirq.gsi = gsi; | 220 | info->u.pirq.gsi = gsi; |
224 | info->u.pirq.vector = vector; | ||
225 | info->u.pirq.domid = domid; | 221 | info->u.pirq.domid = domid; |
226 | info->u.pirq.flags = flags; | 222 | info->u.pirq.flags = flags; |
227 | } | 223 | } |
@@ -714,7 +710,7 @@ int xen_bind_pirq_gsi_to_irq(unsigned gsi, | |||
714 | goto out; | 710 | goto out; |
715 | } | 711 | } |
716 | 712 | ||
717 | xen_irq_info_pirq_init(irq, 0, pirq, gsi, irq_op.vector, DOMID_SELF, | 713 | xen_irq_info_pirq_init(irq, 0, pirq, gsi, DOMID_SELF, |
718 | shareable ? PIRQ_SHAREABLE : 0); | 714 | shareable ? PIRQ_SHAREABLE : 0); |
719 | 715 | ||
720 | pirq_query_unmask(irq); | 716 | pirq_query_unmask(irq); |
@@ -762,8 +758,7 @@ int xen_allocate_pirq_msi(struct pci_dev *dev, struct msi_desc *msidesc) | |||
762 | } | 758 | } |
763 | 759 | ||
764 | int xen_bind_pirq_msi_to_irq(struct pci_dev *dev, struct msi_desc *msidesc, | 760 | int xen_bind_pirq_msi_to_irq(struct pci_dev *dev, struct msi_desc *msidesc, |
765 | int pirq, int vector, const char *name, | 761 | int pirq, const char *name, domid_t domid) |
766 | domid_t domid) | ||
767 | { | 762 | { |
768 | int irq, ret; | 763 | int irq, ret; |
769 | 764 | ||
@@ -776,7 +771,7 @@ int xen_bind_pirq_msi_to_irq(struct pci_dev *dev, struct msi_desc *msidesc, | |||
776 | irq_set_chip_and_handler_name(irq, &xen_pirq_chip, handle_edge_irq, | 771 | irq_set_chip_and_handler_name(irq, &xen_pirq_chip, handle_edge_irq, |
777 | name); | 772 | name); |
778 | 773 | ||
779 | xen_irq_info_pirq_init(irq, 0, pirq, 0, vector, domid, 0); | 774 | xen_irq_info_pirq_init(irq, 0, pirq, 0, domid, 0); |
780 | ret = irq_set_msi_desc(irq, msidesc); | 775 | ret = irq_set_msi_desc(irq, msidesc); |
781 | if (ret < 0) | 776 | if (ret < 0) |
782 | goto error_irq; | 777 | goto error_irq; |
diff --git a/include/xen/events.h b/include/xen/events.h index c6bfe01acf6b..b2b27c6a0f7b 100644 --- a/include/xen/events.h +++ b/include/xen/events.h | |||
@@ -90,8 +90,7 @@ int xen_bind_pirq_gsi_to_irq(unsigned gsi, | |||
90 | int xen_allocate_pirq_msi(struct pci_dev *dev, struct msi_desc *msidesc); | 90 | int xen_allocate_pirq_msi(struct pci_dev *dev, struct msi_desc *msidesc); |
91 | /* Bind an PSI pirq to an irq. */ | 91 | /* Bind an PSI pirq to an irq. */ |
92 | int xen_bind_pirq_msi_to_irq(struct pci_dev *dev, struct msi_desc *msidesc, | 92 | int xen_bind_pirq_msi_to_irq(struct pci_dev *dev, struct msi_desc *msidesc, |
93 | int pirq, int vector, const char *name, | 93 | int pirq, const char *name, domid_t domid); |
94 | domid_t domid); | ||
95 | #endif | 94 | #endif |
96 | 95 | ||
97 | /* De-allocates the above mentioned physical interrupt. */ | 96 | /* De-allocates the above mentioned physical interrupt. */ |