test an irq patch in xen.pcifront.fixes.patch

This commit is contained in:
Michael Young 2010-12-14 21:51:11 +00:00
parent 8807475c83
commit a9d2ae6c02
2 changed files with 47 additions and 2 deletions

View File

@ -721,7 +721,7 @@ Patch12421: orinoco-initialise-priv_hw-before-assigning-the-interrupt.patch
Patch20000: xen.next-2.6.37.patch
#Patch20001: xen.upstream.core.patch
# git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git branches
#Patch20005: xen.pcifront.fixes.patch
Patch20005: xen.pcifront.fixes.patch
# git://xenbits.xen.org/people/sstabellini/linux-pvhvm branches
#Patch20010: xen.pvhvm.fixes.patch
@ -1333,7 +1333,7 @@ ApplyPatch orinoco-initialise-priv_hw-before-assigning-the-interrupt.patch
# Xen patches
ApplyPatch xen.next-2.6.37.patch
#ApplyPatch xen.upstream.core.patch
#ApplyPatch xen.pcifront.fixes.patch
ApplyPatch xen.pcifront.fixes.patch
#ApplyPatch xen.pvhvm.fixes.patch
# END OF PATCH APPLICATIONS
@ -1949,6 +1949,9 @@ fi
# || ||
%changelog
* Tue Dec 14 2010 Michael Young <m.a.young@durham.ac.uk>
- test an irq patch in xen.pcifront.fixes.patch
* Fri Dec 10 2010 Kyle McMartin <kyle@redhat.com>
- Another patch from mjg59: Set _OSC supported field correctly (#638912)

42
xen.pcifront.fixes.patch Normal file
View File

@ -0,0 +1,42 @@
commit be72548ffe8618c3141c050400306b93f40a107a
Author: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Date: Tue Dec 14 11:43:40 2010 -0500
Revert "xen: Find an unbound irq number in reverse order (high to low)."
This reverts commit 482839e7b96098f678d0404ec4dd321419ab3ea7.
Conflicts:
drivers/xen/events.c
diff --git a/drivers/xen/events.c b/drivers/xen/events.c
index 0380664..8889e7f 100644
--- a/drivers/xen/events.c
+++ b/drivers/xen/events.c
@@ -401,11 +401,9 @@ static int find_unbound_irq(void)
int irq, res;
int start = get_nr_hw_irqs();
- if (start == nr_irqs)
- goto no_irqs;
/* nr_irqs is a magic value. Must not use it.*/
- for (irq = nr_irqs-1; irq > start; irq--) {
+ for (irq = start; irq < nr_irqs; irq++) {
data = irq_get_irq_data(irq);
/* only 0->15 have init'd desc; handle irq > 16 */
if (!data)
@@ -414,11 +412,8 @@ static int find_unbound_irq(void)
break;
if (data->chip != &xen_dynamic_chip)
continue;
- if (irq_info[irq].type == IRQT_UNBOUND)
- return irq;
}
-
- if (irq == start)
+ if (irq == nr_irqs)
goto no_irqs;
res = irq_alloc_desc_at(irq, -1);