aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/pseries
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2010-08-12 16:18:15 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2010-09-02 00:07:31 -0400
commit8154c5d22d91cd16bd9985b0638c8957e4688d0e (patch)
tree3f86ef67c9242a585f08a1220d3113718b438869 /arch/powerpc/platforms/pseries
parente1f0ece113fe028593b6869fe191a991322c5d85 (diff)
powerpc: Abstract indexing of lppaca structs
Currently we have the lppaca structs as a simple array of NR_CPUS entries, taking up space in the data section of the kernel image. In future we would like to allocate them dynamically, so this abstracts out the accesses to the array, making it easier to change how we locate the lppaca for a given cpu in future. Specifically, lppaca[cpu] changes to lppaca_of(cpu). Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/platforms/pseries')
-rw-r--r--arch/powerpc/platforms/pseries/dtl.c8
-rw-r--r--arch/powerpc/platforms/pseries/lpar.c4
2 files changed, 6 insertions, 6 deletions
diff --git a/arch/powerpc/platforms/pseries/dtl.c b/arch/powerpc/platforms/pseries/dtl.c
index a00addb5594..adfd5441b61 100644
--- a/arch/powerpc/platforms/pseries/dtl.c
+++ b/arch/powerpc/platforms/pseries/dtl.c
@@ -107,14 +107,14 @@ static int dtl_enable(struct dtl *dtl)
107 } 107 }
108 108
109 /* set our initial buffer indices */ 109 /* set our initial buffer indices */
110 dtl->last_idx = lppaca[dtl->cpu].dtl_idx = 0; 110 dtl->last_idx = lppaca_of(dtl->cpu).dtl_idx = 0;
111 111
112 /* ensure that our updates to the lppaca fields have occurred before 112 /* ensure that our updates to the lppaca fields have occurred before
113 * we actually enable the logging */ 113 * we actually enable the logging */
114 smp_wmb(); 114 smp_wmb();
115 115
116 /* enable event logging */ 116 /* enable event logging */
117 lppaca[dtl->cpu].dtl_enable_mask = dtl_event_mask; 117 lppaca_of(dtl->cpu).dtl_enable_mask = dtl_event_mask;
118 118
119 return 0; 119 return 0;
120} 120}
@@ -123,7 +123,7 @@ static void dtl_disable(struct dtl *dtl)
123{ 123{
124 int hwcpu = get_hard_smp_processor_id(dtl->cpu); 124 int hwcpu = get_hard_smp_processor_id(dtl->cpu);
125 125
126 lppaca[dtl->cpu].dtl_enable_mask = 0x0; 126 lppaca_of(dtl->cpu).dtl_enable_mask = 0x0;
127 127
128 unregister_dtl(hwcpu, __pa(dtl->buf)); 128 unregister_dtl(hwcpu, __pa(dtl->buf));
129 129
@@ -171,7 +171,7 @@ static ssize_t dtl_file_read(struct file *filp, char __user *buf, size_t len,
171 /* actual number of entries read */ 171 /* actual number of entries read */
172 n_read = 0; 172 n_read = 0;
173 173
174 cur_idx = lppaca[dtl->cpu].dtl_idx; 174 cur_idx = lppaca_of(dtl->cpu).dtl_idx;
175 last_idx = dtl->last_idx; 175 last_idx = dtl->last_idx;
176 176
177 if (cur_idx - last_idx > dtl->buf_entries) { 177 if (cur_idx - last_idx > dtl->buf_entries) {
diff --git a/arch/powerpc/platforms/pseries/lpar.c b/arch/powerpc/platforms/pseries/lpar.c
index cf79b46d8f8..a17fe4a9059 100644
--- a/arch/powerpc/platforms/pseries/lpar.c
+++ b/arch/powerpc/platforms/pseries/lpar.c
@@ -250,9 +250,9 @@ void vpa_init(int cpu)
250 long ret; 250 long ret;
251 251
252 if (cpu_has_feature(CPU_FTR_ALTIVEC)) 252 if (cpu_has_feature(CPU_FTR_ALTIVEC))
253 lppaca[cpu].vmxregs_in_use = 1; 253 lppaca_of(cpu).vmxregs_in_use = 1;
254 254
255 addr = __pa(&lppaca[cpu]); 255 addr = __pa(&lppaca_of(cpu));
256 ret = register_vpa(hwcpu, addr); 256 ret = register_vpa(hwcpu, addr);
257 257
258 if (ret) { 258 if (ret) {