r3375 - branches/linux-kernel-2.6.12/debian/patches-debian

Dann Frazier dannf@costa.debian.org
Mon, 20 Jun 2005 15:48:11 +0000


Author: dannf
Date: 2005-06-20 15:48:10 +0000 (Mon, 20 Jun 2005)
New Revision: 3375

Removed:
   branches/linux-kernel-2.6.12/debian/patches-debian/ia64-generic-nosmp.patch
Log:
drop this patch; will update with a new version from kernel-source-2.6.12


Deleted: branches/linux-kernel-2.6.12/debian/patches-debian/ia64-generic-nosmp.patch
===================================================================
--- branches/linux-kernel-2.6.12/debian/patches-debian/ia64-generic-nosmp.patch	2005-06-20 15:46:11 UTC (rev 3374)
+++ branches/linux-kernel-2.6.12/debian/patches-debian/ia64-generic-nosmp.patch	2005-06-20 15:48:10 UTC (rev 3375)
@@ -1,326 +0,0 @@
-#! /bin/sh -e
-## DP: Description: Fix ia64 generic UP builds
-## DP: Patch author: Jesse Barnes <jbarnes@engr.sgi.com>, dann frazier <dannf@debian.org>
-## DP: Upstream status: Submitted
-
-. $(dirname $0)/DPATCH
-
-@DPATCH@
-
-diff -urN linux-2.6.12.orig/arch/ia64/kernel/Makefile linux-2.6.12/arch/ia64/kernel/Makefile
---- linux-2.6.12.orig/arch/ia64/kernel/Makefile	2005-06-17 13:48:29.000000000 -0600
-+++ linux-2.6.12/arch/ia64/kernel/Makefile	2005-06-18 22:14:35.000000000 -0600
-@@ -17,6 +17,7 @@
- obj-$(CONFIG_IOSAPIC)		+= iosapic.o
- obj-$(CONFIG_MODULES)		+= module.o
- obj-$(CONFIG_SMP)		+= smp.o smpboot.o domain.o
-+obj-$(CONFIG_NUMA)		+= numa.o
- obj-$(CONFIG_PERFMON)		+= perfmon_default_smpl.o
- obj-$(CONFIG_IA64_CYCLONE)	+= cyclone.o
- obj-$(CONFIG_IA64_MCA_RECOVERY)	+= mca_recovery.o
-diff -urN linux-2.6.12.orig/arch/ia64/kernel/acpi.c linux-2.6.12/arch/ia64/kernel/acpi.c
---- linux-2.6.12.orig/arch/ia64/kernel/acpi.c	2005-06-17 13:48:29.000000000 -0600
-+++ linux-2.6.12/arch/ia64/kernel/acpi.c	2005-06-18 22:14:35.000000000 -0600
-@@ -642,9 +642,11 @@
- 			if (smp_boot_data.cpu_phys_id[cpu] != hard_smp_processor_id())
- 				node_cpuid[i++].phys_id = smp_boot_data.cpu_phys_id[cpu];
- 	}
--	build_cpu_to_node_map();
- # endif
- #endif
-+#ifdef CONFIG_ACPI_NUMA
-+	build_cpu_to_node_map();
-+#endif
- 	/* Make boot-up look pretty */
- 	printk(KERN_INFO "%d CPUs available, %d CPUs total\n", available_cpus, total_cpus);
- 	return 0;
-diff -urN linux-2.6.12.orig/arch/ia64/kernel/numa.c linux-2.6.12/arch/ia64/kernel/numa.c
---- linux-2.6.12.orig/arch/ia64/kernel/numa.c	1969-12-31 17:00:00.000000000 -0700
-+++ linux-2.6.12/arch/ia64/kernel/numa.c	2005-06-18 22:14:35.000000000 -0600
-@@ -0,0 +1,57 @@
-+/*
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-+ *
-+ * ia64 kernel NUMA specific stuff
-+ *
-+ * Copyright (C) 2002 Erich Focht <efocht@ess.nec.de>
-+ * Copyright (C) 2004 Silicon Graphics, Inc.
-+ *   Jesse Barnes <jbarnes@sgi.com>
-+ */
-+#include <linux/config.h>
-+#include <linux/topology.h>
-+#include <linux/module.h>
-+#include <asm/processor.h>
-+#include <asm/smp.h>
-+
-+u8 cpu_to_node_map[NR_CPUS] __cacheline_aligned;
-+EXPORT_SYMBOL(cpu_to_node_map);
-+
-+cpumask_t node_to_cpu_mask[MAX_NUMNODES] __cacheline_aligned;
-+
-+/**
-+ * build_cpu_to_node_map - setup cpu to node and node to cpumask arrays
-+ *
-+ * Build cpu to node mapping and initialize the per node cpu masks using
-+ * info from the node_cpuid array handed to us by ACPI.
-+ */
-+void __init build_cpu_to_node_map(void)
-+{
-+	int cpu, i, node;
-+
-+	for(node=0; node < MAX_NUMNODES; node++)
-+		cpus_clear(node_to_cpu_mask[node]);
-+
-+	for(cpu = 0; cpu < NR_CPUS; ++cpu) {
-+		node = -1;
-+		for (i = 0; i < NR_CPUS; ++i)
-+			if (cpu_physical_id(cpu) == node_cpuid[i].phys_id) {
-+				node = node_cpuid[i].nid;
-+				break;
-+			}
-+		cpu_to_node_map[cpu] = (node >= 0) ? node : 0;
-+		if (node >= 0)
-+			cpu_set(cpu, node_to_cpu_mask[node]);
-+	}
-+}
-diff -urN linux-2.6.12.orig/arch/ia64/kernel/smpboot.c linux-2.6.12/arch/ia64/kernel/smpboot.c
---- linux-2.6.12.orig/arch/ia64/kernel/smpboot.c	2005-06-17 13:48:29.000000000 -0600
-+++ linux-2.6.12/arch/ia64/kernel/smpboot.c	2005-06-18 22:14:35.000000000 -0600
-@@ -524,47 +524,6 @@
- 	}
- }
- 
--#ifdef CONFIG_NUMA
--
--/* on which node is each logical CPU (one cacheline even for 64 CPUs) */
--u8 cpu_to_node_map[NR_CPUS] __cacheline_aligned;
--EXPORT_SYMBOL(cpu_to_node_map);
--/* which logical CPUs are on which nodes */
--cpumask_t node_to_cpu_mask[MAX_NUMNODES] __cacheline_aligned;
--
--/*
-- * Build cpu to node mapping and initialize the per node cpu masks.
-- */
--void __init
--build_cpu_to_node_map (void)
--{
--	int cpu, i, node;
--
--	for(node=0; node<MAX_NUMNODES; node++)
--		cpus_clear(node_to_cpu_mask[node]);
--	for(cpu = 0; cpu < NR_CPUS; ++cpu) {
--		/*
--		 * All Itanium NUMA platforms I know use ACPI, so maybe we
--		 * can drop this ifdef completely.                    [EF]
--		 */
--#ifdef CONFIG_ACPI_NUMA
--		node = -1;
--		for (i = 0; i < NR_CPUS; ++i)
--			if (cpu_physical_id(cpu) == node_cpuid[i].phys_id) {
--				node = node_cpuid[i].nid;
--				break;
--			}
--#else
--#		error Fixme: Dunno how to build CPU-to-node map.
--#endif
--		cpu_to_node_map[cpu] = (node >= 0) ? node : 0;
--		if (node >= 0)
--			cpu_set(cpu, node_to_cpu_mask[node]);
--	}
--}
--
--#endif /* CONFIG_NUMA */
--
- /*
-  * Cycle through the APs sending Wakeup IPIs to boot each.
-  */
-diff -urN linux-2.6.12.orig/arch/ia64/mm/discontig.c linux-2.6.12/arch/ia64/mm/discontig.c
---- linux-2.6.12.orig/arch/ia64/mm/discontig.c	2005-06-17 13:48:29.000000000 -0600
-+++ linux-2.6.12/arch/ia64/mm/discontig.c	2005-06-18 22:14:35.000000000 -0600
-@@ -274,6 +274,33 @@
- }
- 
- /**
-+ * per_cpu_node_setup - setup per-cpu areas on each node
-+ * @cpu_data: per-cpu area on this node
-+ * @node: node to setup
-+ *
-+ * Copy the static per-cpu data into the region we just set aside and then
-+ * setup __per_cpu_offset for each CPU on this node.  Return a pointer to
-+ * the end of the area.
-+ */
-+static void *per_cpu_node_setup(void *cpu_data, int node)
-+{
-+#ifdef CONFIG_SMP
-+	int cpu;
-+
-+	for (cpu = 0; cpu < NR_CPUS; cpu++) {
-+		if (node == node_cpuid[cpu].nid) {
-+			memcpy(__va(cpu_data), __phys_per_cpu_start,
-+			       __per_cpu_end - __per_cpu_start);
-+			__per_cpu_offset[cpu] = (char*)__va(cpu_data) -
-+				__per_cpu_start;
-+			cpu_data += PERCPU_PAGE_SIZE;
-+		}
-+	}
-+#endif
-+	return cpu_data;
-+}
-+
-+/**
-  * find_pernode_space - allocate memory for memory map and per-node structures
-  * @start: physical start of range
-  * @len: length of range
-@@ -304,7 +331,7 @@
- static int __init find_pernode_space(unsigned long start, unsigned long len,
- 				     int node)
- {
--	unsigned long epfn, cpu, cpus, phys_cpus;
-+	unsigned long epfn, cpus, phys_cpus;
- 	unsigned long pernodesize = 0, pernode, pages, mapsize;
- 	void *cpu_data;
- 	struct bootmem_data *bdp = &mem_data[node].bootmem_data;
-@@ -357,20 +384,7 @@
- 		mem_data[node].pgdat->bdata = bdp;
- 		pernode += L1_CACHE_ALIGN(sizeof(pg_data_t));
- 
--		/*
--		 * Copy the static per-cpu data into the region we
--		 * just set aside and then setup __per_cpu_offset
--		 * for each CPU on this node.
--		 */
--		for (cpu = 0; cpu < NR_CPUS; cpu++) {
--			if (node == node_cpuid[cpu].nid) {
--				memcpy(__va(cpu_data), __phys_per_cpu_start,
--				       __per_cpu_end - __per_cpu_start);
--				__per_cpu_offset[cpu] = (char*)__va(cpu_data) -
--					__per_cpu_start;
--				cpu_data += PERCPU_PAGE_SIZE;
--			}
--		}
-+		cpu_data = per_cpu_node_setup(cpu_data, node);
- 	}
- 
- 	return 0;
-@@ -436,8 +450,8 @@
-  */
- static void __init initialize_pernode_data(void)
- {
--	int cpu, node;
- 	pg_data_t *pgdat_list[MAX_NUMNODES];
-+	int cpu, node;
- 
- 	for_each_online_node(node)
- 		pgdat_list[node] = mem_data[node].pgdat;
-@@ -447,12 +461,22 @@
- 		memcpy(mem_data[node].node_data->pg_data_ptrs, pgdat_list,
- 		       sizeof(pgdat_list));
- 	}
--
-+#ifdef CONFIG_SMP
- 	/* Set the node_data pointer for each per-cpu struct */
- 	for (cpu = 0; cpu < NR_CPUS; cpu++) {
- 		node = node_cpuid[cpu].nid;
- 		per_cpu(cpu_info, cpu).node_data = mem_data[node].node_data;
- 	}
-+#else
-+	{
-+		struct cpuinfo_ia64 *cpu0_cpu_info;
-+		cpu = 0;
-+		node = node_cpuid[cpu].nid;
-+		cpu0_cpu_info = (struct cpuinfo_ia64 *)(__phys_per_cpu_start +
-+			((char *)&per_cpu__cpu_info - __per_cpu_start));
-+		cpu0_cpu_info->node_data = mem_data[node].node_data;
-+	}
-+#endif /* CONFIG_SMP */
- }
- 
- /**
-@@ -519,6 +543,7 @@
- 	find_initrd();
- }
- 
-+#ifdef CONFIG_SMP
- /**
-  * per_cpu_init - setup per-cpu variables
-  *
-@@ -529,15 +554,15 @@
- {
- 	int cpu;
- 
--	if (smp_processor_id() == 0) {
--		for (cpu = 0; cpu < NR_CPUS; cpu++) {
--			per_cpu(local_per_cpu_offset, cpu) =
--				__per_cpu_offset[cpu];
--		}
--	}
-+	if (smp_processor_id() != 0)
-+		return __per_cpu_start + __per_cpu_offset[smp_processor_id()];
-+
-+	for (cpu = 0; cpu < NR_CPUS; cpu++)
-+		per_cpu(local_per_cpu_offset, cpu) = __per_cpu_offset[cpu];
- 
- 	return __per_cpu_start + __per_cpu_offset[smp_processor_id()];
- }
-+#endif /* CONFIG_SMP */
- 
- /**
-  * show_mem - give short summary of memory stats
-diff -urN linux-2.6.12.orig/include/asm-ia64/smp.h.rej linux-2.6.12/include/asm-ia64/smp.h.rej
---- linux-2.6.12.orig/include/asm-ia64/smp.h.rej	1969-12-31 17:00:00.000000000 -0700
-+++ linux-2.6.12/include/asm-ia64/smp.h.rej	2005-06-18 22:14:35.000000000 -0600
-@@ -0,0 +1,16 @@
-+***************
-+*** 126,131 ****
-+  #else
-+  
-+  #define cpu_logical_id(cpuid)		0
-+  
-+  #endif /* CONFIG_SMP */
-+  #endif /* _ASM_IA64_SMP_H */
-+--- 126,132 ----
-+  #else
-+  
-+  #define cpu_logical_id(cpuid)		0
-++ #define cpu_physical_id(i)     ((ia64_getreg(_IA64_REG_CR_LID) >> 16) & 0xffff)
-+  
-+  #endif /* CONFIG_SMP */
-+  #endif /* _ASM_IA64_SMP_H */
-diff -urN linux-2.6.12.orig/include/asm-ia64/sn/arch.h linux-2.6.12/include/asm-ia64/sn/arch.h
---- linux-2.6.12.orig/include/asm-ia64/sn/arch.h	2005-06-17 13:48:29.000000000 -0600
-+++ linux-2.6.12/include/asm-ia64/sn/arch.h	2005-06-18 22:15:39.000000000 -0600
-@@ -11,6 +11,7 @@
- #ifndef _ASM_IA64_SN_ARCH_H
- #define _ASM_IA64_SN_ARCH_H
- 
-+#include <linux/numa.h>
- #include <asm/types.h>
- #include <asm/percpu.h>
- #include <asm/sn/types.h>
-diff -urN linux-2.6.12.orig/include/asm-ia64/sn/sn_cpuid.h linux-2.6.12/include/asm-ia64/sn/sn_cpuid.h
---- linux-2.6.12.orig/include/asm-ia64/sn/sn_cpuid.h	2005-06-17 13:48:29.000000000 -0600
-+++ linux-2.6.12/include/asm-ia64/sn/sn_cpuid.h	2005-06-18 22:14:35.000000000 -0600
-@@ -81,11 +81,6 @@
-  *
-  */
- 
--#ifndef CONFIG_SMP
--#define cpu_physical_id(cpuid)			((ia64_getreg(_IA64_REG_CR_LID) >> 16) & 0xffff)
--#endif
--
--
- #define get_node_number(addr)			NASID_GET(addr)
- 
- /*