Commit 60f1d289 authored by Christophe Leroy's avatar Christophe Leroy Committed by Michael Ellerman
Browse files

powerpc/time: inline arch_vtime_task_switch()



arch_vtime_task_switch() is a small function which is called
only from vtime_common_task_switch(), so it is worth inlining

Signed-off-by: default avatarChristophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent 1c389763
Loading
Loading
Loading
Loading
+15 −1
Original line number Diff line number Diff line
@@ -47,9 +47,23 @@ static inline unsigned long cputime_to_usecs(const cputime_t ct)
 * has to be populated in the new task
 */
#ifdef CONFIG_PPC64
#define get_accounting(tsk)	(&get_paca()->accounting)
static inline void arch_vtime_task_switch(struct task_struct *tsk) { }
#else
void arch_vtime_task_switch(struct task_struct *tsk);
#define get_accounting(tsk)	(&task_thread_info(tsk)->accounting)
/*
 * Called from the context switch with interrupts disabled, to charge all
 * accumulated times to the current process, and to prepare accounting on
 * the next process.
 */
static inline void arch_vtime_task_switch(struct task_struct *prev)
{
	struct cpu_accounting_data *acct = get_accounting(current);
	struct cpu_accounting_data *acct0 = get_accounting(prev);

	acct->starttime = acct0->starttime;
	acct->startspurr = acct0->startspurr;
}
#endif

#endif /* __KERNEL__ */
+0 −21
Original line number Diff line number Diff line
@@ -163,12 +163,6 @@ EXPORT_SYMBOL(__cputime_usec_factor);
void (*dtl_consumer)(struct dtl_entry *, u64);
#endif

#ifdef CONFIG_PPC64
#define get_accounting(tsk)	(&get_paca()->accounting)
#else
#define get_accounting(tsk)	(&task_thread_info(tsk)->accounting)
#endif

static void calc_cputime_factors(void)
{
	struct div_result res;
@@ -421,21 +415,6 @@ void vtime_flush(struct task_struct *tsk)
	acct->softirq_time = 0;
}

#ifdef CONFIG_PPC32
/*
 * Called from the context switch with interrupts disabled, to charge all
 * accumulated times to the current process, and to prepare accounting on
 * the next process.
 */
void arch_vtime_task_switch(struct task_struct *prev)
{
	struct cpu_accounting_data *acct = get_accounting(current);

	acct->starttime = get_accounting(prev)->starttime;
	acct->startspurr = get_accounting(prev)->startspurr;
}
#endif /* CONFIG_PPC32 */

#else /* ! CONFIG_VIRT_CPU_ACCOUNTING_NATIVE */
#define calc_cputime_factors()
#endif