All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] x86: remove left over files
@ 2009-01-30  3:29 Yinghai Lu
  2009-01-30  3:30 ` [PATCH] x86: fix compiling with 64bit with def_to_bigsmp Yinghai Lu
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Yinghai Lu @ 2009-01-30  3:29 UTC (permalink / raw)
  To: Ingo Molnar, Thomas Gleixner, H. Peter Anvin, Andrew Morton
  Cc: linux-kernel@vger.kernel.org


Impact: cleanup

remove deaf files

Signed-off-by: Yinghai Lu <yinghai@kernel.org>

---
 arch/x86/include/asm/bigsmp/apic.h    |  138 ----------------------------------
 arch/x86/include/asm/bigsmp/apicdef.h |    9 --
 arch/x86/include/asm/bigsmp/ipi.h     |   22 -----
 arch/x86/mach-default/Makefile        |    5 -
 4 files changed, 174 deletions(-)

Index: linux-2.6/arch/x86/include/asm/bigsmp/apic.h
===================================================================
--- linux-2.6.orig/arch/x86/include/asm/bigsmp/apic.h
+++ /dev/null
@@ -1,138 +0,0 @@
-#ifndef __ASM_MACH_APIC_H
-#define __ASM_MACH_APIC_H
-
-#define xapic_phys_to_log_apicid(cpu) (per_cpu(x86_bios_cpu_apicid, cpu))
-
-static inline int bigsmp_apic_id_registered(void)
-{
-	return 1;
-}
-
-static inline const cpumask_t *bigsmp_target_cpus(void)
-{
-#ifdef CONFIG_SMP
-	return &cpu_online_map;
-#else
-	return &cpumask_of_cpu(0);
-#endif
-}
-
-#define APIC_DFR_VALUE		(APIC_DFR_FLAT)
-
-static inline unsigned long
-bigsmp_check_apicid_used(physid_mask_t bitmap, int apicid)
-{
-	return 0;
-}
-
-static inline unsigned long bigsmp_check_apicid_present(int bit)
-{
-	return 1;
-}
-
-static inline unsigned long calculate_ldr(int cpu)
-{
-	unsigned long val, id;
-	val = apic_read(APIC_LDR) & ~APIC_LDR_MASK;
-	id = xapic_phys_to_log_apicid(cpu);
-	val |= SET_APIC_LOGICAL_ID(id);
-	return val;
-}
-
-/*
- * Set up the logical destination ID.
- *
- * Intel recommends to set DFR, LDR and TPR before enabling
- * an APIC.  See e.g. "AP-388 82489DX User's Manual" (Intel
- * document number 292116).  So here it goes...
- */
-static inline void bigsmp_init_apic_ldr(void)
-{
-	unsigned long val;
-	int cpu = smp_processor_id();
-
-	apic_write(APIC_DFR, APIC_DFR_VALUE);
-	val = calculate_ldr(cpu);
-	apic_write(APIC_LDR, val);
-}
-
-static inline void bigsmp_setup_apic_routing(void)
-{
-	printk("Enabling APIC mode:  %s.  Using %d I/O APICs\n",
-		"Physflat", nr_ioapics);
-}
-
-static inline int bigsmp_apicid_to_node(int logical_apicid)
-{
-	return apicid_2_node[hard_smp_processor_id()];
-}
-
-static inline int bigsmp_cpu_present_to_apicid(int mps_cpu)
-{
-	if (mps_cpu < nr_cpu_ids)
-		return (int) per_cpu(x86_bios_cpu_apicid, mps_cpu);
-
-	return BAD_APICID;
-}
-
-static inline physid_mask_t bigsmp_apicid_to_cpu_present(int phys_apicid)
-{
-	return physid_mask_of_physid(phys_apicid);
-}
-
-extern u8 cpu_2_logical_apicid[];
-/* Mapping from cpu number to logical apicid */
-static inline int bigsmp_cpu_to_logical_apicid(int cpu)
-{
-	if (cpu >= nr_cpu_ids)
-		return BAD_APICID;
-	return cpu_physical_id(cpu);
-}
-
-static inline physid_mask_t bigsmp_ioapic_phys_id_map(physid_mask_t phys_map)
-{
-	/* For clustered we don't have a good way to do this yet - hack */
-	return physids_promote(0xFFL);
-}
-
-static inline void bigsmp_setup_portio_remap(void)
-{
-}
-
-static inline int bigsmp_check_phys_apicid_present(int boot_cpu_physical_apicid)
-{
-	return 1;
-}
-
-/* As we are using single CPU as destination, pick only one CPU here */
-static inline unsigned int bigsmp_cpu_mask_to_apicid(const cpumask_t *cpumask)
-{
-	return bigsmp_cpu_to_logical_apicid(first_cpu(*cpumask));
-}
-
-static inline unsigned int
-bigsmp_cpu_mask_to_apicid_and(const struct cpumask *cpumask,
-			      const struct cpumask *andmask)
-{
-	int cpu;
-
-	/*
-	 * We're using fixed IRQ delivery, can only return one phys APIC ID.
-	 * May as well be the first.
-	 */
-	for_each_cpu_and(cpu, cpumask, andmask) {
-		if (cpumask_test_cpu(cpu, cpu_online_mask))
-			break;
-	}
-	if (cpu < nr_cpu_ids)
-		return bigsmp_cpu_to_logical_apicid(cpu);
-
-	return BAD_APICID;
-}
-
-static inline int bigsmp_phys_pkg_id(int cpuid_apic, int index_msb)
-{
-	return cpuid_apic >> index_msb;
-}
-
-#endif /* __ASM_MACH_APIC_H */
Index: linux-2.6/arch/x86/include/asm/bigsmp/apicdef.h
===================================================================
--- linux-2.6.orig/arch/x86/include/asm/bigsmp/apicdef.h
+++ /dev/null
@@ -1,9 +0,0 @@
-#ifndef __ASM_MACH_APICDEF_H
-#define __ASM_MACH_APICDEF_H
-
-static inline unsigned bigsmp_get_apic_id(unsigned long x)
-{
-	return (x >> 24) & 0xFF;
-}
-
-#endif
Index: linux-2.6/arch/x86/include/asm/bigsmp/ipi.h
===================================================================
--- linux-2.6.orig/arch/x86/include/asm/bigsmp/ipi.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#ifndef __ASM_MACH_IPI_H
-#define __ASM_MACH_IPI_H
-
-void default_send_IPI_mask_sequence(const struct cpumask *mask, int vector);
-void default_send_IPI_mask_allbutself(const struct cpumask *mask, int vector);
-
-static inline void default_send_IPI_mask(const struct cpumask *mask, int vector)
-{
-	default_send_IPI_mask_sequence(mask, vector);
-}
-
-static inline void bigsmp_send_IPI_allbutself(int vector)
-{
-	default_send_IPI_mask_allbutself(cpu_online_mask, vector);
-}
-
-static inline void bigsmp_send_IPI_all(int vector)
-{
-	default_send_IPI_mask(cpu_online_mask, vector);
-}
-
-#endif /* __ASM_MACH_IPI_H */
Index: linux-2.6/arch/x86/mach-default/Makefile
===================================================================
--- linux-2.6.orig/arch/x86/mach-default/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-#
-# Makefile for the linux kernel.
-#
-
-obj-y				:= setup.o

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] x86: fix compiling with 64bit with def_to_bigsmp
  2009-01-30  3:29 [PATCH] x86: remove left over files Yinghai Lu
@ 2009-01-30  3:30 ` Yinghai Lu
  2009-01-30 14:22   ` Ingo Molnar
  2009-01-30  3:31 ` [PATCH] x86: seperate default_send_IPI_mask_sequence/allbutself with logical Yinghai Lu
  2009-01-30 14:21 ` [PATCH] x86: remove left over files Ingo Molnar
  2 siblings, 1 reply; 6+ messages in thread
From: Yinghai Lu @ 2009-01-30  3:30 UTC (permalink / raw)
  To: Ingo Molnar, Thomas Gleixner, H. Peter Anvin, Andrew Morton
  Cc: linux-kernel@vger.kernel.org


Impact: fic compiling

only need to do cut off with 32bit

Signed-off-by: Yinghai Lu <yinghai@kernel.org>

---
 arch/x86/kernel/smpboot.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-2.6/arch/x86/kernel/smpboot.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/smpboot.c
+++ linux-2.6/arch/x86/kernel/smpboot.c
@@ -1000,7 +1000,7 @@ static int __init smp_sanity_check(unsig
 {
 	preempt_disable();
 
-#ifndef CONFIG_X86_BIGSMP
+#if !defined(CONFIG_X86_BIGSMP) && defined(CONFIG_X86_32)
 	if (def_to_bigsmp && nr_cpu_ids > 8) {
 		unsigned int cpu;
 		unsigned nr;

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH] x86: seperate default_send_IPI_mask_sequence/allbutself with logical
  2009-01-30  3:29 [PATCH] x86: remove left over files Yinghai Lu
  2009-01-30  3:30 ` [PATCH] x86: fix compiling with 64bit with def_to_bigsmp Yinghai Lu
@ 2009-01-30  3:31 ` Yinghai Lu
  2009-01-30 14:22   ` Ingo Molnar
  2009-01-30 14:21 ` [PATCH] x86: remove left over files Ingo Molnar
  2 siblings, 1 reply; 6+ messages in thread
From: Yinghai Lu @ 2009-01-30  3:31 UTC (permalink / raw)
  To: Ingo Molnar, Thomas Gleixner, H. Peter Anvin, Andrew Morton
  Cc: linux-kernel@vger.kernel.org


Impact: 32bit should logical version

there are two version: for default_send_IPI_mask_sequence/allbutself
one in ipi.h and one in ipi.c for 32bit

it seems .h version overwrite ipi.c for a while.

restore it so 32 bit could use it's old logical version.
also remove dupicated functions in .c

Signed-off-by: Yinghai Lu <yinghai@kernel.org>

---
 arch/x86/include/asm/ipi.h        |   71 ++++++++++++++++---
 arch/x86/kernel/bigsmp_32.c       |    8 --
 arch/x86/kernel/es7000_32.c       |    4 -
 arch/x86/kernel/genapic_flat_64.c |    6 -
 arch/x86/kernel/ipi.c             |  139 --------------------------------------
 arch/x86/kernel/numaq_32.c        |    8 --
 arch/x86/kernel/probe_32.c        |    4 -
 arch/x86/kernel/summit_32.c       |    6 -
 8 files changed, 77 insertions(+), 169 deletions(-)

Index: linux-2.6/arch/x86/include/asm/ipi.h
===================================================================
--- linux-2.6.orig/arch/x86/include/asm/ipi.h
+++ linux-2.6/arch/x86/include/asm/ipi.h
@@ -120,7 +120,7 @@ static inline void
 }
 
 static inline void
-default_send_IPI_mask_sequence(const struct cpumask *mask, int vector)
+default_send_IPI_mask_sequence_phys(const struct cpumask *mask, int vector)
 {
 	unsigned long query_cpu;
 	unsigned long flags;
@@ -139,7 +139,7 @@ default_send_IPI_mask_sequence(const str
 }
 
 static inline void
-default_send_IPI_mask_allbutself(const struct cpumask *mask, int vector)
+default_send_IPI_mask_allbutself_phys(const struct cpumask *mask, int vector)
 {
 	unsigned int this_cpu = smp_processor_id();
 	unsigned int query_cpu;
@@ -157,23 +157,72 @@ default_send_IPI_mask_allbutself(const s
 	local_irq_restore(flags);
 }
 
+#include <asm/genapic.h>
+
+static inline void
+default_send_IPI_mask_sequence_logical(const struct cpumask *mask, int vector)
+{
+	unsigned long flags;
+	unsigned int query_cpu;
+
+	/*
+	 * Hack. The clustered APIC addressing mode doesn't allow us to send
+	 * to an arbitrary mask, so I do a unicasts to each CPU instead. This
+	 * should be modified to do 1 message per cluster ID - mbligh
+	 */
+
+	local_irq_save(flags);
+	for_each_cpu(query_cpu, mask)
+		__default_send_IPI_dest_field(
+			apic->cpu_to_logical_apicid(query_cpu), vector,
+			apic->dest_logical);
+	local_irq_restore(flags);
+}
+
+static inline void
+default_send_IPI_mask_allbutself_logical(const struct cpumask *mask, int vector)
+{
+	unsigned long flags;
+	unsigned int query_cpu;
+	unsigned int this_cpu = smp_processor_id();
+
+	/* See Hack comment above */
+
+	local_irq_save(flags);
+	for_each_cpu(query_cpu, mask) {
+		if (query_cpu == this_cpu)
+			continue;
+		__default_send_IPI_dest_field(
+			apic->cpu_to_logical_apicid(query_cpu), vector,
+			apic->dest_logical);
+		}
+	local_irq_restore(flags);
+}
 
 /* Avoid include hell */
 #define NMI_VECTOR 0x02
 
-void default_send_IPI_mask_bitmask(const struct cpumask *mask, int vector);
-void default_send_IPI_mask_allbutself(const struct cpumask *mask, int vector);
-
 extern int no_broadcast;
 
-#ifdef CONFIG_X86_64
-#include <asm/genapic.h>
-#else
-static inline void default_send_IPI_mask(const struct cpumask *mask, int vector)
+#ifndef CONFIG_X86_64
+/*
+ * This is only used on smaller machines.
+ */
+static inline void default_send_IPI_mask_bitmask_logical(const struct cpumask *cpumask, int vector)
+{
+	unsigned long mask = cpumask_bits(cpumask)[0];
+	unsigned long flags;
+
+	local_irq_save(flags);
+	WARN_ON(mask & ~cpumask_bits(cpu_online_mask)[0]);
+	__default_send_IPI_dest_field(mask, vector, apic->dest_logical);
+	local_irq_restore(flags);
+}
+
+static inline void default_send_IPI_mask_logical(const struct cpumask *mask, int vector)
 {
-	default_send_IPI_mask_bitmask(mask, vector);
+	default_send_IPI_mask_bitmask_logical(mask, vector);
 }
-void default_send_IPI_mask_allbutself(const struct cpumask *mask, int vector);
 #endif
 
 static inline void __default_local_send_IPI_allbutself(int vector)
Index: linux-2.6/arch/x86/kernel/bigsmp_32.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/bigsmp_32.c
+++ linux-2.6/arch/x86/kernel/bigsmp_32.c
@@ -9,6 +9,7 @@
 #include <asm/genapic.h>
 #include <asm/fixmap.h>
 #include <asm/apicdef.h>
+#include <asm/ipi.h>
 #include <linux/kernel.h>
 #include <linux/init.h>
 #include <linux/dmi.h>
@@ -154,17 +155,14 @@ static inline int bigsmp_phys_pkg_id(int
 	return cpuid_apic >> index_msb;
 }
 
-void default_send_IPI_mask_sequence(const struct cpumask *mask, int vector);
-void default_send_IPI_mask_allbutself(const struct cpumask *mask, int vector);
-
 static inline void bigsmp_send_IPI_mask(const struct cpumask *mask, int vector)
 {
-	default_send_IPI_mask_sequence(mask, vector);
+	default_send_IPI_mask_sequence_phys(mask, vector);
 }
 
 static inline void bigsmp_send_IPI_allbutself(int vector)
 {
-	default_send_IPI_mask_allbutself(cpu_online_mask, vector);
+	default_send_IPI_mask_allbutself_phys(cpu_online_mask, vector);
 }
 
 static inline void bigsmp_send_IPI_all(int vector)
Index: linux-2.6/arch/x86/kernel/es7000_32.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/es7000_32.c
+++ linux-2.6/arch/x86/kernel/es7000_32.c
@@ -451,12 +451,12 @@ static int es7000_check_dsdt(void)
 
 static void es7000_send_IPI_mask(const struct cpumask *mask, int vector)
 {
-	default_send_IPI_mask_sequence(mask, vector);
+	default_send_IPI_mask_sequence_phys(mask, vector);
 }
 
 static void es7000_send_IPI_allbutself(int vector)
 {
-	default_send_IPI_mask_allbutself(cpu_online_mask, vector);
+	default_send_IPI_mask_allbutself_phys(cpu_online_mask, vector);
 }
 
 static void es7000_send_IPI_all(int vector)
Index: linux-2.6/arch/x86/kernel/genapic_flat_64.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/genapic_flat_64.c
+++ linux-2.6/arch/x86/kernel/genapic_flat_64.c
@@ -267,18 +267,18 @@ static void physflat_vector_allocation_d
 
 static void physflat_send_IPI_mask(const struct cpumask *cpumask, int vector)
 {
-	default_send_IPI_mask_sequence(cpumask, vector);
+	default_send_IPI_mask_sequence_phys(cpumask, vector);
 }
 
 static void physflat_send_IPI_mask_allbutself(const struct cpumask *cpumask,
 					      int vector)
 {
-	default_send_IPI_mask_allbutself(cpumask, vector);
+	default_send_IPI_mask_allbutself_phys(cpumask, vector);
 }
 
 static void physflat_send_IPI_allbutself(int vector)
 {
-	default_send_IPI_mask_allbutself(cpu_online_mask, vector);
+	default_send_IPI_mask_allbutself_phys(cpu_online_mask, vector);
 }
 
 static void physflat_send_IPI_all(int vector)
Index: linux-2.6/arch/x86/kernel/ipi.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/ipi.c
+++ linux-2.6/arch/x86/kernel/ipi.c
@@ -17,148 +17,13 @@
 #include <asm/mmu_context.h>
 #include <asm/apic.h>
 #include <asm/proto.h>
+#include <asm/ipi.h>
 
 #ifdef CONFIG_X86_32
-#include <asm/genapic.h>
-
-/*
- * the following functions deal with sending IPIs between CPUs.
- *
- * We use 'broadcast', CPU->CPU IPIs and self-IPIs too.
- */
-
-static inline int __prepare_ICR(unsigned int shortcut, int vector)
-{
-	unsigned int icr = shortcut | apic->dest_logical;
-
-	switch (vector) {
-	default:
-		icr |= APIC_DM_FIXED | vector;
-		break;
-	case NMI_VECTOR:
-		icr |= APIC_DM_NMI;
-		break;
-	}
-	return icr;
-}
-
-static inline int __prepare_ICR2(unsigned int mask)
-{
-	return SET_APIC_DEST_FIELD(mask);
-}
-
-void __default_send_IPI_shortcut(unsigned int shortcut, int vector)
-{
-	/*
-	 * Subtle. In the case of the 'never do double writes' workaround
-	 * we have to lock out interrupts to be safe.  As we don't care
-	 * of the value read we use an atomic rmw access to avoid costly
-	 * cli/sti.  Otherwise we use an even cheaper single atomic write
-	 * to the APIC.
-	 */
-	unsigned int cfg;
-
-	/*
-	 * Wait for idle.
-	 */
-	apic_wait_icr_idle();
-
-	/*
-	 * No need to touch the target chip field
-	 */
-	cfg = __prepare_ICR(shortcut, vector);
-
-	/*
-	 * Send the IPI. The write to APIC_ICR fires this off.
-	 */
-	apic_write(APIC_ICR, cfg);
-}
 
 void default_send_IPI_self(int vector)
 {
-	__default_send_IPI_shortcut(APIC_DEST_SELF, vector);
-}
-
-/*
- * This is used to send an IPI with no shorthand notation (the destination is
- * specified in bits 56 to 63 of the ICR).
- */
-static inline void __default_send_IPI_dest_field(unsigned long mask, int vector)
-{
-	unsigned long cfg;
-
-	/*
-	 * Wait for idle.
-	 */
-	if (unlikely(vector == NMI_VECTOR))
-		safe_apic_wait_icr_idle();
-	else
-		apic_wait_icr_idle();
-
-	/*
-	 * prepare target chip field
-	 */
-	cfg = __prepare_ICR2(mask);
-	apic_write(APIC_ICR2, cfg);
-
-	/*
-	 * program the ICR
-	 */
-	cfg = __prepare_ICR(0, vector);
-
-	/*
-	 * Send the IPI. The write to APIC_ICR fires this off.
-	 */
-	apic_write(APIC_ICR, cfg);
-}
-
-/*
- * This is only used on smaller machines.
- */
-void default_send_IPI_mask_bitmask(const struct cpumask *cpumask, int vector)
-{
-	unsigned long mask = cpumask_bits(cpumask)[0];
-	unsigned long flags;
-
-	local_irq_save(flags);
-	WARN_ON(mask & ~cpumask_bits(cpu_online_mask)[0]);
-	__default_send_IPI_dest_field(mask, vector);
-	local_irq_restore(flags);
-}
-
-void default_send_IPI_mask_sequence(const struct cpumask *mask, int vector)
-{
-	unsigned long flags;
-	unsigned int query_cpu;
-
-	/*
-	 * Hack. The clustered APIC addressing mode doesn't allow us to send
-	 * to an arbitrary mask, so I do a unicasts to each CPU instead. This
-	 * should be modified to do 1 message per cluster ID - mbligh
-	 */
-
-	local_irq_save(flags);
-	for_each_cpu(query_cpu, mask)
-		__default_send_IPI_dest_field(apic->cpu_to_logical_apicid(query_cpu), vector);
-	local_irq_restore(flags);
-}
-
-void default_send_IPI_mask_allbutself(const struct cpumask *mask, int vector)
-{
-	unsigned long flags;
-	unsigned int query_cpu;
-	unsigned int this_cpu = smp_processor_id();
-
-	/* See Hack comment above */
-
-	local_irq_save(flags);
-	for_each_cpu(query_cpu, mask) {
-		if (query_cpu == this_cpu)
-			continue;
-		__default_send_IPI_dest_field(
-			apic->cpu_to_logical_apicid(query_cpu), vector);
-	}
-	local_irq_restore(flags);
+	__default_send_IPI_shortcut(APIC_DEST_SELF, vector, apic->dest_logical);
 }
 
 /* must come after the send_IPI functions above for inlining */
Index: linux-2.6/arch/x86/kernel/numaq_32.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/numaq_32.c
+++ linux-2.6/arch/x86/kernel/numaq_32.c
@@ -302,6 +302,7 @@ int __init get_memcfg_numaq(void)
 #include <asm/genapic.h>
 #include <asm/fixmap.h>
 #include <asm/apicdef.h>
+#include <asm/ipi.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
 #include <linux/init.h>
@@ -319,17 +320,14 @@ static inline unsigned int numaq_get_api
 	return (x >> 24) & 0x0F;
 }
 
-void default_send_IPI_mask_sequence(const struct cpumask *mask, int vector);
-void default_send_IPI_mask_allbutself(const struct cpumask *mask, int vector);
-
 static inline void numaq_send_IPI_mask(const struct cpumask *mask, int vector)
 {
-	default_send_IPI_mask_sequence(mask, vector);
+	default_send_IPI_mask_sequence_logical(mask, vector);
 }
 
 static inline void numaq_send_IPI_allbutself(int vector)
 {
-	default_send_IPI_mask_allbutself(cpu_online_mask, vector);
+	default_send_IPI_mask_allbutself_logical(cpu_online_mask, vector);
 }
 
 static inline void numaq_send_IPI_all(int vector)
Index: linux-2.6/arch/x86/kernel/probe_32.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/probe_32.c
+++ linux-2.6/arch/x86/kernel/probe_32.c
@@ -112,8 +112,8 @@ struct genapic apic_default = {
 	.cpu_mask_to_apicid		= default_cpu_mask_to_apicid,
 	.cpu_mask_to_apicid_and		= default_cpu_mask_to_apicid_and,
 
-	.send_IPI_mask			= default_send_IPI_mask,
-	.send_IPI_mask_allbutself	= default_send_IPI_mask_allbutself,
+	.send_IPI_mask			= default_send_IPI_mask_logical,
+	.send_IPI_mask_allbutself	= default_send_IPI_mask_allbutself_logical,
 	.send_IPI_allbutself		= default_send_IPI_allbutself,
 	.send_IPI_all			= default_send_IPI_all,
 	.send_IPI_self			= NULL,
Index: linux-2.6/arch/x86/kernel/summit_32.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/summit_32.c
+++ linux-2.6/arch/x86/kernel/summit_32.c
@@ -43,6 +43,7 @@
 #include <asm/genapic.h>
 #include <asm/fixmap.h>
 #include <asm/apicdef.h>
+#include <asm/ipi.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
 #include <linux/init.h>
@@ -54,12 +55,9 @@ static inline unsigned summit_get_apic_i
 	return (x >> 24) & 0xFF;
 }
 
-void default_send_IPI_mask_sequence(const cpumask_t *mask, int vector);
-void default_send_IPI_mask_allbutself(const cpumask_t *mask, int vector);
-
 static inline void summit_send_IPI_mask(const cpumask_t *mask, int vector)
 {
-	default_send_IPI_mask_sequence(mask, vector);
+	default_send_IPI_mask_sequence_logical(mask, vector);
 }
 
 static inline void summit_send_IPI_allbutself(int vector)

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: remove left over files
  2009-01-30  3:29 [PATCH] x86: remove left over files Yinghai Lu
  2009-01-30  3:30 ` [PATCH] x86: fix compiling with 64bit with def_to_bigsmp Yinghai Lu
  2009-01-30  3:31 ` [PATCH] x86: seperate default_send_IPI_mask_sequence/allbutself with logical Yinghai Lu
@ 2009-01-30 14:21 ` Ingo Molnar
  2 siblings, 0 replies; 6+ messages in thread
From: Ingo Molnar @ 2009-01-30 14:21 UTC (permalink / raw)
  To: Yinghai Lu
  Cc: Thomas Gleixner, H. Peter Anvin, Andrew Morton,
	linux-kernel@vger.kernel.org


* Yinghai Lu <yinghai@kernel.org> wrote:

> 
> Impact: cleanup
> 
> remove deaf files
> 
> Signed-off-by: Yinghai Lu <yinghai@kernel.org>
> 
> ---
>  arch/x86/include/asm/bigsmp/apic.h    |  138 ----------------------------------
>  arch/x86/include/asm/bigsmp/apicdef.h |    9 --
>  arch/x86/include/asm/bigsmp/ipi.h     |   22 -----
>  arch/x86/mach-default/Makefile        |    5 -
>  4 files changed, 174 deletions(-)

Applied to tip/x86/apic, thanks Yinghai!

	Ingo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: fix compiling with 64bit with def_to_bigsmp
  2009-01-30  3:30 ` [PATCH] x86: fix compiling with 64bit with def_to_bigsmp Yinghai Lu
@ 2009-01-30 14:22   ` Ingo Molnar
  0 siblings, 0 replies; 6+ messages in thread
From: Ingo Molnar @ 2009-01-30 14:22 UTC (permalink / raw)
  To: Yinghai Lu
  Cc: Thomas Gleixner, H. Peter Anvin, Andrew Morton,
	linux-kernel@vger.kernel.org


* Yinghai Lu <yinghai@kernel.org> wrote:

> Impact: fic compiling
> 
> only need to do cut off with 32bit
> 
> Signed-off-by: Yinghai Lu <yinghai@kernel.org>
> 
> ---
>  arch/x86/kernel/smpboot.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied to tip/x86/apic, thanks!

	Ingo

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] x86: seperate default_send_IPI_mask_sequence/allbutself with logical
  2009-01-30  3:31 ` [PATCH] x86: seperate default_send_IPI_mask_sequence/allbutself with logical Yinghai Lu
@ 2009-01-30 14:22   ` Ingo Molnar
  0 siblings, 0 replies; 6+ messages in thread
From: Ingo Molnar @ 2009-01-30 14:22 UTC (permalink / raw)
  To: Yinghai Lu
  Cc: Thomas Gleixner, H. Peter Anvin, Andrew Morton,
	linux-kernel@vger.kernel.org


* Yinghai Lu <yinghai@kernel.org> wrote:

> 
> Impact: 32bit should logical version
> 
> there are two version: for default_send_IPI_mask_sequence/allbutself
> one in ipi.h and one in ipi.c for 32bit
> 
> it seems .h version overwrite ipi.c for a while.
> 
> restore it so 32 bit could use it's old logical version.
> also remove dupicated functions in .c
> 
> Signed-off-by: Yinghai Lu <yinghai@kernel.org>
> 
> ---
>  arch/x86/include/asm/ipi.h        |   71 ++++++++++++++++---
>  arch/x86/kernel/bigsmp_32.c       |    8 --
>  arch/x86/kernel/es7000_32.c       |    4 -
>  arch/x86/kernel/genapic_flat_64.c |    6 -
>  arch/x86/kernel/ipi.c             |  139 --------------------------------------
>  arch/x86/kernel/numaq_32.c        |    8 --
>  arch/x86/kernel/probe_32.c        |    4 -
>  arch/x86/kernel/summit_32.c       |    6 -
>  8 files changed, 77 insertions(+), 169 deletions(-)

Applied to tip/x86/apic, thanks!

	Ingo

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2009-01-30 14:22 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-30  3:29 [PATCH] x86: remove left over files Yinghai Lu
2009-01-30  3:30 ` [PATCH] x86: fix compiling with 64bit with def_to_bigsmp Yinghai Lu
2009-01-30 14:22   ` Ingo Molnar
2009-01-30  3:31 ` [PATCH] x86: seperate default_send_IPI_mask_sequence/allbutself with logical Yinghai Lu
2009-01-30 14:22   ` Ingo Molnar
2009-01-30 14:21 ` [PATCH] x86: remove left over files Ingo Molnar

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.