diff options
Diffstat (limited to 'arch/ppc64/kernel/process.c')
-rw-r--r-- | arch/ppc64/kernel/process.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/arch/ppc64/kernel/process.c b/arch/ppc64/kernel/process.c index f7cae05e40fb..7a7e027653ad 100644 --- a/arch/ppc64/kernel/process.c +++ b/arch/ppc64/kernel/process.c | |||
@@ -50,6 +50,7 @@ | |||
50 | #include <asm/machdep.h> | 50 | #include <asm/machdep.h> |
51 | #include <asm/iSeries/HvCallHpt.h> | 51 | #include <asm/iSeries/HvCallHpt.h> |
52 | #include <asm/cputable.h> | 52 | #include <asm/cputable.h> |
53 | #include <asm/firmware.h> | ||
53 | #include <asm/sections.h> | 54 | #include <asm/sections.h> |
54 | #include <asm/tlbflush.h> | 55 | #include <asm/tlbflush.h> |
55 | #include <asm/time.h> | 56 | #include <asm/time.h> |
@@ -202,11 +203,10 @@ struct task_struct *__switch_to(struct task_struct *prev, | |||
202 | new_thread = &new->thread; | 203 | new_thread = &new->thread; |
203 | old_thread = ¤t->thread; | 204 | old_thread = ¤t->thread; |
204 | 205 | ||
205 | /* Collect purr utilization data per process and per processor wise */ | 206 | /* Collect purr utilization data per process and per processor |
206 | /* purr is nothing but processor time base */ | 207 | * wise purr is nothing but processor time base |
207 | 208 | */ | |
208 | #if defined(CONFIG_PPC_PSERIES) | 209 | if (firmware_has_feature(FW_FEATURE_SPLPAR)) { |
209 | if (cur_cpu_spec->firmware_features & FW_FEATURE_SPLPAR) { | ||
210 | struct cpu_usage *cu = &__get_cpu_var(cpu_usage_array); | 210 | struct cpu_usage *cu = &__get_cpu_var(cpu_usage_array); |
211 | long unsigned start_tb, current_tb; | 211 | long unsigned start_tb, current_tb; |
212 | start_tb = old_thread->start_tb; | 212 | start_tb = old_thread->start_tb; |
@@ -214,8 +214,6 @@ struct task_struct *__switch_to(struct task_struct *prev, | |||
214 | old_thread->accum_tb += (current_tb - start_tb); | 214 | old_thread->accum_tb += (current_tb - start_tb); |
215 | new_thread->start_tb = current_tb; | 215 | new_thread->start_tb = current_tb; |
216 | } | 216 | } |
217 | #endif | ||
218 | |||
219 | 217 | ||
220 | local_irq_save(flags); | 218 | local_irq_save(flags); |
221 | last = _switch(old_thread, new_thread); | 219 | last = _switch(old_thread, new_thread); |