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>
This commit is contained in:

committed by
Benjamin Herrenschmidt

parent
e1f0ece113
commit
8154c5d22d
@@ -56,7 +56,7 @@ static unsigned long get_purr(void)
|
||||
|
||||
for_each_possible_cpu(cpu) {
|
||||
if (firmware_has_feature(FW_FEATURE_ISERIES))
|
||||
sum_purr += lppaca[cpu].emulated_time_base;
|
||||
sum_purr += lppaca_of(cpu).emulated_time_base;
|
||||
else {
|
||||
struct cpu_usage *cu;
|
||||
|
||||
@@ -263,7 +263,7 @@ static void parse_ppp_data(struct seq_file *m)
|
||||
ppp_data.active_system_procs);
|
||||
|
||||
/* pool related entries are apropriate for shared configs */
|
||||
if (lppaca[0].shared_proc) {
|
||||
if (lppaca_of(0).shared_proc) {
|
||||
unsigned long pool_idle_time, pool_procs;
|
||||
|
||||
seq_printf(m, "pool=%d\n", ppp_data.pool_num);
|
||||
@@ -460,8 +460,8 @@ static void pseries_cmo_data(struct seq_file *m)
|
||||
return;
|
||||
|
||||
for_each_possible_cpu(cpu) {
|
||||
cmo_faults += lppaca[cpu].cmo_faults;
|
||||
cmo_fault_time += lppaca[cpu].cmo_fault_time;
|
||||
cmo_faults += lppaca_of(cpu).cmo_faults;
|
||||
cmo_fault_time += lppaca_of(cpu).cmo_fault_time;
|
||||
}
|
||||
|
||||
seq_printf(m, "cmo_faults=%lu\n", cmo_faults);
|
||||
@@ -479,8 +479,8 @@ static void splpar_dispatch_data(struct seq_file *m)
|
||||
unsigned long dispatch_dispersions = 0;
|
||||
|
||||
for_each_possible_cpu(cpu) {
|
||||
dispatches += lppaca[cpu].yield_count;
|
||||
dispatch_dispersions += lppaca[cpu].dispersion_count;
|
||||
dispatches += lppaca_of(cpu).yield_count;
|
||||
dispatch_dispersions += lppaca_of(cpu).dispersion_count;
|
||||
}
|
||||
|
||||
seq_printf(m, "dispatches=%lu\n", dispatches);
|
||||
@@ -545,7 +545,7 @@ static int pseries_lparcfg_data(struct seq_file *m, void *v)
|
||||
seq_printf(m, "partition_potential_processors=%d\n",
|
||||
partition_potential_processors);
|
||||
|
||||
seq_printf(m, "shared_processor_mode=%d\n", lppaca[0].shared_proc);
|
||||
seq_printf(m, "shared_processor_mode=%d\n", lppaca_of(0).shared_proc);
|
||||
|
||||
seq_printf(m, "slb_size=%d\n", mmu_slb_size);
|
||||
|
||||
|
Reference in New Issue
Block a user