[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] More acpi cleanups. Fix 'acpi=ht'.



ChangeSet 1.1445, 2005/05/06 09:24:37+01:00, kaf24@xxxxxxxxxxxxxxxxxxxx

        More acpi cleanups. Fix 'acpi=ht'.
        Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>



 acpi/Makefile |    4 ++++
 acpi/boot.c   |    6 ------
 mpparse.c     |   13 ++++++++++++-
 setup.c       |    8 ++++----
 4 files changed, 20 insertions(+), 11 deletions(-)


diff -Nru a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/Makefile 
b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/Makefile
--- a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/Makefile        
2005-05-06 05:03:04 -04:00
+++ b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/Makefile        
2005-05-06 05:03:04 -04:00
@@ -7,3 +7,7 @@
 $(patsubst %.o,$(obj)/%.c,$(c-obj-y) $(c-link)):
        @ln -fsn $(srctree)/arch/i386/kernel/acpi/$(notdir $@) $@
 
+obj-y  += $(c-obj-y) $(s-obj-y)
+
+clean-files += $(patsubst %.o,%.c,$(c-obj-y) $(c-obj-) $(c-link))
+clean-files += $(patsubst %.o,%.S,$(s-obj-y) $(s-obj-) $(s-link))
diff -Nru a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/boot.c 
b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/boot.c
--- a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/boot.c  2005-05-06 
05:03:04 -04:00
+++ b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/acpi/boot.c  2005-05-06 
05:03:04 -04:00
@@ -672,10 +672,6 @@
 {
        int count;
 
-#ifdef CONFIG_XEN
-       return 0;
-#endif
-
        /* 
         * Note that the LAPIC address is obtained from the MADT (32-bit value)
         * and (optionally) overriden by a LAPIC_ADDR_OVR entry (64-bit value).
@@ -871,9 +867,7 @@
        }
 
 #ifdef __i386__
-#ifndef CONFIG_XEN
        check_acpi_pci();
-#endif
 #endif
 
        acpi_table_parse(ACPI_BOOT, acpi_parse_sbf);
diff -Nru a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/mpparse.c 
b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/mpparse.c
--- a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/mpparse.c    2005-05-06 
05:03:04 -04:00
+++ b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/mpparse.c    2005-05-06 
05:03:04 -04:00
@@ -109,7 +109,7 @@
 {
        return hweight_long(apicid & 0xf) == 1 && (apicid >> 4) != 0xf;
 }
-#else
+#elif !defined(CONFIG_XEN)
 static int MP_valid_apicid(int apicid, int version)
 {
        if (version >= 0x14)
@@ -119,6 +119,7 @@
 }
 #endif
 
+#ifndef CONFIG_XEN
 void __init MP_processor_info (struct mpc_config_processor *m)
 {
        int ver, apicid;
@@ -217,6 +218,12 @@
        apic_version[m->mpc_apicid] = ver;
        bios_cpu_apicid[num_processors - 1] = m->mpc_apicid;
 }
+#else
+void __init MP_processor_info (struct mpc_config_processor *m)
+{
+       num_processors++;
+}
+#endif /* CONFIG_XEN */
 
 static void __init MP_bus_info (struct mpc_config_bus *m)
 {
@@ -816,12 +823,14 @@
 void __init mp_register_lapic_address (
        u64                     address)
 {
+#ifndef CONFIG_XEN
        mp_lapic_addr = (unsigned long) address;
 
        if (boot_cpu_physical_apicid == -1U)
                boot_cpu_physical_apicid = GET_APIC_ID(apic_read(APIC_ID));
 
        Dprintk("Boot CPU = %d\n", boot_cpu_physical_apicid);
+#endif
 }
 
 
@@ -841,6 +850,7 @@
        if (id == boot_cpu_physical_apicid)
                boot_cpu = 1;
 
+#ifndef CONFIG_XEN
        processor.mpc_type = MP_PROCESSOR;
        processor.mpc_apicid = id;
        processor.mpc_apicver = GET_APIC_VERSION(apic_read(APIC_LVR));
@@ -851,6 +861,7 @@
        processor.mpc_featureflag = boot_cpu_data.x86_capability[0];
        processor.mpc_reserved[0] = 0;
        processor.mpc_reserved[1] = 0;
+#endif
 
        MP_processor_info(&processor);
 }
diff -Nru a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/setup.c 
b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/setup.c
--- a/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/setup.c      2005-05-06 
05:03:04 -04:00
+++ b/linux-2.6.11-xen-sparse/arch/xen/i386/kernel/setup.c      2005-05-06 
05:03:04 -04:00
@@ -1567,6 +1567,10 @@
        if (efi_enabled)
                efi_map_memmap();
 
+       op.cmd             = PHYSDEVOP_SET_IOPL;
+       op.u.set_iopl.iopl = current->thread.io_pl = 1;
+       HYPERVISOR_physdev_op(&op);
+
        /*
         * Parse the ACPI tables for possible boot-time SMP configuration.
         */
@@ -1583,10 +1587,6 @@
        noirqdebug_setup("");
 
        register_memory();
-
-       op.cmd             = PHYSDEVOP_SET_IOPL;
-       op.u.set_iopl.iopl = current->thread.io_pl = 1;
-       HYPERVISOR_physdev_op(&op);
 
        if (xen_start_info.flags & SIF_INITDOMAIN) {
                if (!(xen_start_info.flags & SIF_PRIVILEGED))

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.