aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ia64/sn/kernel
diff options
context:
space:
mode:
authorDean Nelson <dcn@sgi.com>2005-03-22 18:00:00 -0500
committerTony Luck <tony.luck@intel.com>2005-05-04 13:18:32 -0400
commit9b48b46678989b67cd00658ea88964163eaab616 (patch)
tree4b6362a239422144b4fe9d669ba2f5eefbb1374b /arch/ia64/sn/kernel
parentc4b07b7b3693228c7b848c00a9d4bbb49506a45f (diff)
[IA64-SGI] move nodepda pointer out of pda
Remove the p_nodepda and p_subnodepda pointers from the pda_s structure. And then define a new per-cpu pointer to the nodepda and export it so that it can be accessed by kernel modules. Signed-off-by: Dean Nelson <dcn@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch/ia64/sn/kernel')
-rw-r--r--arch/ia64/sn/kernel/setup.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/ia64/sn/kernel/setup.c b/arch/ia64/sn/kernel/setup.c
index fea71ee891eb..4fb44984afe6 100644
--- a/arch/ia64/sn/kernel/setup.c
+++ b/arch/ia64/sn/kernel/setup.c
@@ -76,6 +76,9 @@ EXPORT_PER_CPU_SYMBOL(__sn_hub_info);
76DEFINE_PER_CPU(short, __sn_cnodeid_to_nasid[MAX_NUMNODES]); 76DEFINE_PER_CPU(short, __sn_cnodeid_to_nasid[MAX_NUMNODES]);
77EXPORT_PER_CPU_SYMBOL(__sn_cnodeid_to_nasid); 77EXPORT_PER_CPU_SYMBOL(__sn_cnodeid_to_nasid);
78 78
79DEFINE_PER_CPU(struct nodepda_s *, __sn_nodepda);
80EXPORT_PER_CPU_SYMBOL(__sn_nodepda);
81
79partid_t sn_partid = -1; 82partid_t sn_partid = -1;
80EXPORT_SYMBOL(sn_partid); 83EXPORT_SYMBOL(sn_partid);
81char sn_system_serial_number_string[128]; 84char sn_system_serial_number_string[128];
@@ -480,7 +483,8 @@ void __init sn_cpu_init(void)
480 483
481 cnode = nasid_to_cnodeid(nasid); 484 cnode = nasid_to_cnodeid(nasid);
482 485
483 pda->p_nodepda = nodepdaindr[cnode]; 486 sn_nodepda = nodepdaindr[cnode];
487
484 pda->led_address = 488 pda->led_address =
485 (typeof(pda->led_address)) (LED0 + (slice << LED_CPU_SHIFT)); 489 (typeof(pda->led_address)) (LED0 + (slice << LED_CPU_SHIFT));
486 pda->led_state = LED_ALWAYS_SET; 490 pda->led_state = LED_ALWAYS_SET;
@@ -626,7 +630,8 @@ nasid_slice_to_cpuid(int nasid, int slice)
626 long cpu; 630 long cpu;
627 631
628 for (cpu=0; cpu < NR_CPUS; cpu++) 632 for (cpu=0; cpu < NR_CPUS; cpu++)
629 if (nodepda->phys_cpuid[cpu].nasid == nasid && nodepda->phys_cpuid[cpu].slice == slice) 633 if (cpuid_to_nasid(cpu) == nasid &&
634 cpuid_to_slice(cpu) == slice)
630 return cpu; 635 return cpu;
631 636
632 return -1; 637 return -1;