# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1227879081 0
# Node ID 2892ca2b9c17857f6922e803406711881988d850
# Parent 39a8680e7a70a28ce639c507fb6a9bc0aa7d8f14
linux/x86: cleanup IO-APIC code
- get 32-bit code in sync with 64-bit wrt ExtINT pin detection being
unnecessary
- eliminate build warnings resulting from c/s 725
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
---
arch/i386/kernel/io_apic-xen.c | 14 ++++++++++++--
arch/x86_64/kernel/io_apic-xen.c | 6 ++++--
2 files changed, 16 insertions(+), 4 deletions(-)
diff -r 39a8680e7a70 -r 2892ca2b9c17 arch/i386/kernel/io_apic-xen.c
--- a/arch/i386/kernel/io_apic-xen.c Fri Nov 28 13:30:58 2008 +0000
+++ b/arch/i386/kernel/io_apic-xen.c Fri Nov 28 13:31:21 2008 +0000
@@ -87,8 +87,10 @@ int (*ioapic_renumber_irq)(int ioapic, i
int (*ioapic_renumber_irq)(int ioapic, int irq);
atomic_t irq_mis_count;
+#ifndef CONFIG_XEN
/* Where if anywhere is the i8259 connect in external int mode */
static struct { int pin, apic; } ioapic_i8259 = { -1, -1 };
+#endif
static DEFINE_SPINLOCK(ioapic_lock);
static DEFINE_SPINLOCK(vector_lock);
@@ -793,6 +795,7 @@ static int find_irq_entry(int apic, int
return -1;
}
+#ifndef CONFIG_XEN
/*
* Find the pin to which IRQ[irq] (ISA) is connected
*/
@@ -842,6 +845,7 @@ static int __init find_isa_irq_apic(int
return -1;
}
+#endif
/*
* Find a specific PCI IRQ entry.
@@ -1687,7 +1691,9 @@ static void __init enable_IO_APIC(void)
static void __init enable_IO_APIC(void)
{
union IO_APIC_reg_01 reg_01;
+#ifndef CONFIG_XEN
int i8259_apic, i8259_pin;
+#endif
int i, apic;
unsigned long flags;
@@ -1708,6 +1714,7 @@ static void __init enable_IO_APIC(void)
spin_unlock_irqrestore(&ioapic_lock, flags);
nr_ioapic_registers[apic] = reg_01.bits.entries+1;
}
+#ifndef CONFIG_XEN
for(apic = 0; apic < nr_ioapics; apic++) {
int pin;
/* See if any of the pins is in ExtINT mode */
@@ -1749,6 +1756,7 @@ static void __init enable_IO_APIC(void)
{
printk(KERN_WARNING "ExtINT in hardware and MP table differ\n");
}
+#endif
/*
* Do not trust the IO-APIC being empty at bootup
@@ -2517,6 +2525,8 @@ static int __init io_apic_bug_finalize(v
late_initcall(io_apic_bug_finalize);
+#ifndef CONFIG_XEN
+
struct sysfs_ioapic_data {
struct sys_device dev;
struct IO_APIC_route_entry entry[0];
@@ -2570,10 +2580,8 @@ static int ioapic_resume(struct sys_devi
static struct sysdev_class ioapic_sysdev_class = {
set_kset_name("ioapic"),
-#ifndef CONFIG_XEN
.suspend = ioapic_suspend,
.resume = ioapic_resume,
-#endif
};
static int __init ioapic_init_sysfs(void)
@@ -2611,6 +2619,8 @@ static int __init ioapic_init_sysfs(void
device_initcall(ioapic_init_sysfs);
+#endif /* CONFIG_XEN */
+
/* --------------------------------------------------------------------------
ACPI-based IOAPIC Configuration
--------------------------------------------------------------------------
*/
diff -r 39a8680e7a70 -r 2892ca2b9c17 arch/x86_64/kernel/io_apic-xen.c
--- a/arch/x86_64/kernel/io_apic-xen.c Fri Nov 28 13:30:58 2008 +0000
+++ b/arch/x86_64/kernel/io_apic-xen.c Fri Nov 28 13:31:21 2008 +0000
@@ -2054,6 +2054,8 @@ void __init setup_IO_APIC(void)
print_IO_APIC();
}
+#ifndef CONFIG_XEN
+
struct sysfs_ioapic_data {
struct sys_device dev;
struct IO_APIC_route_entry entry[0];
@@ -2107,10 +2109,8 @@ static int ioapic_resume(struct sys_devi
static struct sysdev_class ioapic_sysdev_class = {
set_kset_name("ioapic"),
-#ifndef CONFIG_XEN
.suspend = ioapic_suspend,
.resume = ioapic_resume,
-#endif
};
static int __init ioapic_init_sysfs(void)
@@ -2148,6 +2148,8 @@ static int __init ioapic_init_sysfs(void
device_initcall(ioapic_init_sysfs);
+#endif /* CONFIG_XEN */
+
/* --------------------------------------------------------------------------
ACPI-based IOAPIC Configuration
--------------------------------------------------------------------------
*/
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|