[POWERPC] Fix stolen time for SMT without LPAR
authorMichael Neuling <mikey@neuling.org>
Fri, 8 Jun 2007 03:18:50 +0000 (13:18 +1000)
committerPaul Mackerras <paulus@samba.org>
Mon, 25 Jun 2007 07:03:25 +0000 (17:03 +1000)
For POWERPC, stolen time accounts for cycles lost to the hypervisor or
PURR cycles attributed to the other SMT thread.  Hence, when a PURR is
available, we should still calculate stolen time, irrespective of being
virtualised.

Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/kernel/time.c
include/asm-powerpc/time.h

index 0a8a820672f447edfe46036a48373b6fa408a847..43c687a1d76e9b772b6c66e836dbb054a34e5729 100644 (file)
@@ -214,7 +214,6 @@ static void account_process_time(struct pt_regs *regs)
        run_posix_cpu_timers(current);
 }
 
-#ifdef CONFIG_PPC_SPLPAR
 /*
  * Stuff for accounting stolen time.
  */
@@ -279,6 +278,7 @@ void calculate_steal_time(void)
        pme->purr = purr;
 }
 
+#ifdef CONFIG_PPC_SPLPAR
 /*
  * Must be called before the cpu is added to the online map when
  * a cpu is being brought up at runtime.
index 3fd57c048f5908cec68aa96e20c1dc7b9a7b2dab..2d00e13c981a3f7cd2cf6916a4afe7ac55f4afb3 100644 (file)
@@ -232,7 +232,7 @@ extern void account_process_vtime(struct task_struct *tsk);
 #define account_process_vtime(tsk)             do { } while (0)
 #endif
 
-#if defined(CONFIG_VIRT_CPU_ACCOUNTING) && defined(CONFIG_PPC_SPLPAR)
+#if defined(CONFIG_VIRT_CPU_ACCOUNTING)
 extern void calculate_steal_time(void);
 extern void snapshot_timebases(void);
 #else