WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] Allow all unused GSI to be configured via

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] Allow all unused GSI to be configured via IO-APIC by new pv_ops dom0
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 05 Apr 2010 23:20:25 -0700
Delivery-date: Mon, 05 Apr 2010 23:21:09 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1270112127 -3600
# Node ID 5374514774693ed2710596b8d1931256c01b02ee
# Parent  0bbf5454cd14cbf8631ceb55860ee2643b5c2ea3
Allow all unused GSI to be configured via IO-APIC by new pv_ops dom0

Currently Xen disallows setting up any GSI < 16. This makes it
impossible by the kernel to use any PCI devices without ACPI override
but a mapping to this interrupts via IO-APIC.

The patch allows all unused interrupts to be setup via IO-APIC.

Signed-off-by: Bastian Blank <waldi@xxxxxxxxxx>
---
 xen/arch/x86/mpparse.c |    4 ++++
 xen/arch/x86/physdev.c |    8 ++------
 2 files changed, 6 insertions(+), 6 deletions(-)

diff -r 0bbf5454cd14 -r 537451477469 xen/arch/x86/mpparse.c
--- a/xen/arch/x86/mpparse.c    Thu Apr 01 09:47:49 2010 +0100
+++ b/xen/arch/x86/mpparse.c    Thu Apr 01 09:55:27 2010 +0100
@@ -1103,6 +1103,7 @@ int mp_register_gsi (u32 gsi, int trigge
        int                     ioapic = -1;
        int                     ioapic_pin = 0;
        int                     idx, bit = 0;
+
        /*
         * Mapping between Global System Interrups, which
         * represent all possible interrupts, and IRQs
@@ -1125,6 +1126,9 @@ int mp_register_gsi (u32 gsi, int trigge
 
        if (ioapic_renumber_irq)
                gsi = ioapic_renumber_irq(ioapic, gsi);
+
+       if (!(irq_to_desc(gsi)->status & IRQ_DISABLED))
+               return -EEXIST;
 
        /* 
         * Avoid pin reprogramming.  PRTs typically include entries  
diff -r 0bbf5454cd14 -r 537451477469 xen/arch/x86/physdev.c
--- a/xen/arch/x86/physdev.c    Thu Apr 01 09:47:49 2010 +0100
+++ b/xen/arch/x86/physdev.c    Thu Apr 01 09:55:27 2010 +0100
@@ -476,12 +476,8 @@ ret_t do_physdev_op(int cmd, XEN_GUEST_H
         ret = -EINVAL;
         if ( setup_gsi.gsi < 0 || setup_gsi.gsi >= nr_irqs_gsi )
             break;
-        /* GSI < 16 has been setup by hypervisor */
-        if ( setup_gsi.gsi >= 16 )
-            ret = mp_register_gsi(setup_gsi.gsi, setup_gsi.triggering,
-                            setup_gsi.polarity);
-        else 
-            ret = -EEXIST;
+        ret = mp_register_gsi(setup_gsi.gsi, setup_gsi.triggering,
+                              setup_gsi.polarity);
         break; 
     }
     default:

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] Allow all unused GSI to be configured via IO-APIC by new pv_ops dom0, Xen patchbot-unstable <=