aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/vtime.h
diff options
context:
space:
mode:
authorFrederic Weisbecker <fweisbec@gmail.com>2012-10-24 18:05:51 +0200
committerFrederic Weisbecker <fweisbec@gmail.com>2012-10-29 21:31:31 +0100
commit11113334d1c5dd5355c86e531c29f1202a855c86 (patch)
tree259c7c3344733444ca39263b1a79f40b243b155f /include/linux/vtime.h
parentvtime: Gather vtime declarations to their own header file (diff)
downloadwireguard-linux-11113334d1c5dd5355c86e531c29f1202a855c86.tar.xz
wireguard-linux-11113334d1c5dd5355c86e531c29f1202a855c86.zip
vtime: Make vtime_account_system() irqsafe
vtime_account_system() currently has only one caller with vtime_account() which is irq safe. Now we are going to call it from other places like kvm where irqs are not always disabled by the time we account the cputime. So let's make it irqsafe. The arch implementation part is now prefixed with "__". vtime_account_idle() arch implementation is prefixed accordingly to stay consistent. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Ingo Molnar <mingo@kernel.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Paul Gortmaker <paul.gortmaker@windriver.com> Cc: Tony Luck <tony.luck@intel.com> Cc: Fenghua Yu <fenghua.yu@intel.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Diffstat (limited to 'include/linux/vtime.h')
-rw-r--r--include/linux/vtime.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/linux/vtime.h b/include/linux/vtime.h
index 7199c24c8204..b9fc4f9ab470 100644
--- a/include/linux/vtime.h
+++ b/include/linux/vtime.h
@@ -5,10 +5,12 @@ struct task_struct;
#ifdef CONFIG_VIRT_CPU_ACCOUNTING
extern void vtime_task_switch(struct task_struct *prev);
+extern void __vtime_account_system(struct task_struct *tsk);
extern void vtime_account_system(struct task_struct *tsk);
-extern void vtime_account_idle(struct task_struct *tsk);
+extern void __vtime_account_idle(struct task_struct *tsk);
#else
static inline void vtime_task_switch(struct task_struct *prev) { }
+static inline void vtime_account_system(struct task_struct *tsk) { }
#endif
#if !defined(CONFIG_VIRT_CPU_ACCOUNTING) && !defined(CONFIG_IRQ_TIME_ACCOUNTING)