powerpc/32: Entry cpu time accounting in C
There is no need for this to be in asm, use the new interrupt entry wrapper. Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/daca4c3e05cdfe54d237162a0718b3aaca897662.1615552866.git.christophe.leroy@csgroup.eu
This commit is contained in:
committed by
Michael Ellerman
parent
be39e10506
commit
f93d866e14
@@ -32,6 +32,9 @@ static inline void interrupt_enter_prepare(struct pt_regs *regs, struct interrup
|
||||
#ifdef CONFIG_PPC32
|
||||
if (!arch_irq_disabled_regs(regs))
|
||||
trace_hardirqs_off();
|
||||
|
||||
if (user_mode(regs))
|
||||
account_cpu_user_entry();
|
||||
#endif
|
||||
/*
|
||||
* Book3E reconciles irq soft mask in asm
|
||||
|
||||
@@ -23,18 +23,8 @@
|
||||
*/
|
||||
|
||||
#ifndef CONFIG_VIRT_CPU_ACCOUNTING_NATIVE
|
||||
#define ACCOUNT_CPU_USER_ENTRY(ptr, ra, rb)
|
||||
#define ACCOUNT_CPU_USER_EXIT(ptr, ra, rb)
|
||||
#else
|
||||
#define ACCOUNT_CPU_USER_ENTRY(ptr, ra, rb) \
|
||||
MFTB(ra); /* get timebase */ \
|
||||
PPC_LL rb, ACCOUNT_STARTTIME_USER(ptr); \
|
||||
PPC_STL ra, ACCOUNT_STARTTIME(ptr); \
|
||||
subf rb,rb,ra; /* subtract start value */ \
|
||||
PPC_LL ra, ACCOUNT_USER_TIME(ptr); \
|
||||
add ra,ra,rb; /* add on to user time */ \
|
||||
PPC_STL ra, ACCOUNT_USER_TIME(ptr); \
|
||||
|
||||
#define ACCOUNT_CPU_USER_EXIT(ptr, ra, rb) \
|
||||
MFTB(ra); /* get timebase */ \
|
||||
PPC_LL rb, ACCOUNT_STARTTIME(ptr); \
|
||||
|
||||
Reference in New Issue
Block a user