patch-2.3.2 linux/include/asm-alpha/smp.h

Next file: linux/include/asm-alpha/system.h
Previous file: linux/include/asm-alpha/irq.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.1/linux/include/asm-alpha/smp.h linux/include/asm-alpha/smp.h
@@ -4,22 +4,30 @@
 #ifdef __SMP__
 
 #include <linux/tasks.h>
+#include <asm/init.h>
 #include <asm/pal.h>
 
 struct cpuinfo_alpha {
 	unsigned long loops_per_sec;
-	unsigned int next;
 	unsigned long *pgd_cache;
 	unsigned long *pte_cache;
 	unsigned long pgtable_cache_sz;
 	unsigned long ipi_count;
-} __attribute__((aligned(32)));
+	unsigned long prof_multiplier;
+	unsigned long prof_counter;
+} __cacheline_aligned;
 
 extern struct cpuinfo_alpha cpu_data[NR_CPUS];
 
 #define PROC_CHANGE_PENALTY     20
 
-extern __volatile__ int cpu_number_map[NR_CPUS];
+/* Map from cpu id to sequential logical cpu number.  This will only
+   not be idempotent when cpus failed to come on-line.  */
+extern int cpu_number_map[NR_CPUS];
+
+/* The reverse map from sequential logical cpu number to cpu id.  */
+extern int __cpu_logical_map[NR_CPUS];
+#define cpu_logical_map(cpu)  __cpu_logical_map[cpu]
 
 /* HACK: Cabrio WHAMI return value is bogus if more than 8 bits used.. :-( */
 
@@ -35,7 +43,6 @@
 }
 
 #define smp_processor_id()	(current->processor)
-#define cpu_logical_map(cpu)	(cpu)
 
 #endif /* __SMP__ */
 

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)