Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bf9fae9f authored by Frederic Weisbecker's avatar Frederic Weisbecker
Browse files

cputime: Use a proper subsystem naming for vtime related APIs



Use a naming based on vtime as a prefix for virtual based
cputime accounting APIs:

- account_system_vtime() -> vtime_account()
- account_switch_vtime() -> vtime_task_switch()

It makes it easier to allow for further declension such
as vtime_account_system(), vtime_account_idle(), ... if we
want to find out the context we account to from generic code.

This also make it better to know on which subsystem these APIs
refer to.

Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.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: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
parent bc2a27cd
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -88,7 +88,7 @@ extern cputime_t cycle_to_cputime(u64 cyc);
 * accumulated times to the current process, and to prepare accounting on
 * the next process.
 */
void account_switch_vtime(struct task_struct *prev)
void vtime_task_switch(struct task_struct *prev)
{
	struct thread_info *pi = task_thread_info(prev);
	struct thread_info *ni = task_thread_info(current);
@@ -116,7 +116,7 @@ void account_switch_vtime(struct task_struct *prev)
 * Account time for a transition between system, hard irq or soft irq state.
 * Note that this function is called with interrupts enabled.
 */
void account_system_vtime(struct task_struct *tsk)
void vtime_account(struct task_struct *tsk)
{
	struct thread_info *ti = task_thread_info(tsk);
	unsigned long flags;
@@ -138,7 +138,7 @@ void account_system_vtime(struct task_struct *tsk)

	local_irq_restore(flags);
}
EXPORT_SYMBOL_GPL(account_system_vtime);
EXPORT_SYMBOL_GPL(vtime_account);

/*
 * Called from the timer interrupt handler to charge accumulated user time
+5 −5
Original line number Diff line number Diff line
@@ -291,7 +291,7 @@ static inline u64 calculate_stolen_time(u64 stop_tb)
 * Account time for a transition between system, hard irq
 * or soft irq state.
 */
void account_system_vtime(struct task_struct *tsk)
void vtime_account(struct task_struct *tsk)
{
	u64 now, nowscaled, delta, deltascaled;
	unsigned long flags;
@@ -343,14 +343,14 @@ void account_system_vtime(struct task_struct *tsk)
	}
	local_irq_restore(flags);
}
EXPORT_SYMBOL_GPL(account_system_vtime);
EXPORT_SYMBOL_GPL(vtime_account);

/*
 * Transfer the user and system times accumulated in the paca
 * by the exception entry and exit code to the generic process
 * user and system time records.
 * Must be called with interrupts disabled.
 * Assumes that account_system_vtime() has been called recently
 * Assumes that vtime_account() has been called recently
 * (i.e. since the last entry from usermode) so that
 * get_paca()->user_time_scaled is up to date.
 */
@@ -366,9 +366,9 @@ void account_process_tick(struct task_struct *tsk, int user_tick)
	account_user_time(tsk, utime, utimescaled);
}

void account_switch_vtime(struct task_struct *prev)
void vtime_task_switch(struct task_struct *prev)
{
	account_system_vtime(prev);
	vtime_account(prev);
	account_process_tick(prev, 0);
}

+3 −3
Original line number Diff line number Diff line
@@ -99,7 +99,7 @@ static int do_account_vtime(struct task_struct *tsk, int hardirq_offset)
	return virt_timer_forward(user + system);
}

void account_switch_vtime(struct task_struct *prev)
void vtime_task_switch(struct task_struct *prev)
{
	struct thread_info *ti;

@@ -122,7 +122,7 @@ void account_process_tick(struct task_struct *tsk, int user_tick)
 * Update process times based on virtual cpu times stored by entry.S
 * to the lowcore fields user_timer, system_timer & steal_clock.
 */
void account_system_vtime(struct task_struct *tsk)
void vtime_account(struct task_struct *tsk)
{
	struct thread_info *ti = task_thread_info(tsk);
	u64 timer, system;
@@ -138,7 +138,7 @@ void account_system_vtime(struct task_struct *tsk)

	virt_timer_forward(system);
}
EXPORT_SYMBOL_GPL(account_system_vtime);
EXPORT_SYMBOL_GPL(vtime_account);

void __kprobes vtime_stop_cpu(void)
{
+4 −4
Original line number Diff line number Diff line
@@ -132,11 +132,11 @@ extern void synchronize_irq(unsigned int irq);
struct task_struct;

#if !defined(CONFIG_VIRT_CPU_ACCOUNTING) && !defined(CONFIG_IRQ_TIME_ACCOUNTING)
static inline void account_system_vtime(struct task_struct *tsk)
static inline void vtime_account(struct task_struct *tsk)
{
}
#else
extern void account_system_vtime(struct task_struct *tsk);
extern void vtime_account(struct task_struct *tsk);
#endif

#if defined(CONFIG_TINY_RCU) || defined(CONFIG_TINY_PREEMPT_RCU)
@@ -162,7 +162,7 @@ extern void rcu_nmi_exit(void);
 */
#define __irq_enter()					\
	do {						\
		account_system_vtime(current);		\
		vtime_account(current);		\
		add_preempt_count(HARDIRQ_OFFSET);	\
		trace_hardirq_enter();			\
	} while (0)
@@ -178,7 +178,7 @@ extern void irq_enter(void);
#define __irq_exit()					\
	do {						\
		trace_hardirq_exit();			\
		account_system_vtime(current);		\
		vtime_account(current);		\
		sub_preempt_count(HARDIRQ_OFFSET);	\
	} while (0)

+2 −2
Original line number Diff line number Diff line
@@ -131,9 +131,9 @@ extern void account_steal_ticks(unsigned long ticks);
extern void account_idle_ticks(unsigned long ticks);

#ifdef CONFIG_VIRT_CPU_ACCOUNTING
extern void account_switch_vtime(struct task_struct *prev);
extern void vtime_task_switch(struct task_struct *prev);
#else
static inline void account_switch_vtime(struct task_struct *prev) { }
static inline void vtime_task_switch(struct task_struct *prev) { }
#endif

#endif /* _LINUX_KERNEL_STAT_H */
Loading