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

Commit 58135f57 authored by Frederic Weisbecker's avatar Frederic Weisbecker
Browse files

context_tracking: Wrap static key check into more intuitive function name



Use a function with a meaningful name to check the global context
tracking state. static_key_false() is a bit confusing for reviewers.

Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
parent 99c8b1ea
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -17,13 +17,13 @@ extern void __context_tracking_task_switch(struct task_struct *prev,

static inline void user_enter(void)
{
	if (static_key_false(&context_tracking_enabled))
	if (context_tracking_is_enabled())
		context_tracking_user_enter();

}
static inline void user_exit(void)
{
	if (static_key_false(&context_tracking_enabled))
	if (context_tracking_is_enabled())
		context_tracking_user_exit();
}

@@ -31,7 +31,7 @@ static inline enum ctx_state exception_enter(void)
{
	enum ctx_state prev_ctx;

	if (!static_key_false(&context_tracking_enabled))
	if (!context_tracking_is_enabled())
		return 0;

	prev_ctx = this_cpu_read(context_tracking.state);
@@ -42,7 +42,7 @@ static inline enum ctx_state exception_enter(void)

static inline void exception_exit(enum ctx_state prev_ctx)
{
	if (static_key_false(&context_tracking_enabled)) {
	if (context_tracking_is_enabled()) {
		if (prev_ctx == IN_USER)
			context_tracking_user_enter();
	}
@@ -51,7 +51,7 @@ static inline void exception_exit(enum ctx_state prev_ctx)
static inline void context_tracking_task_switch(struct task_struct *prev,
						struct task_struct *next)
{
	if (static_key_false(&context_tracking_enabled))
	if (context_tracking_is_enabled())
		__context_tracking_task_switch(prev, next);
}
#else
+4 −0
Original line number Diff line number Diff line
@@ -22,6 +22,10 @@ struct context_tracking {
extern struct static_key context_tracking_enabled;
DECLARE_PER_CPU(struct context_tracking, context_tracking);

static inline bool context_tracking_is_enabled(void)
{
	return static_key_false(&context_tracking_enabled);
}
static inline bool context_tracking_in_user(void)
{
	return __this_cpu_read(context_tracking.state) == IN_USER;
+1 −1
Original line number Diff line number Diff line
@@ -165,7 +165,7 @@ extern cpumask_var_t tick_nohz_full_mask;

static inline bool tick_nohz_full_enabled(void)
{
	if (!static_key_false(&context_tracking_enabled))
	if (!context_tracking_is_enabled())
		return false;

	return tick_nohz_full_running;
+1 −1
Original line number Diff line number Diff line
@@ -19,7 +19,7 @@ static inline bool vtime_accounting_enabled(void) { return true; }
#ifdef CONFIG_VIRT_CPU_ACCOUNTING_GEN
static inline bool vtime_accounting_enabled(void)
{
	if (static_key_false(&context_tracking_enabled)) {
	if (context_tracking_is_enabled()) {
		if (context_tracking_active())
			return true;
	}
+4 −4
Original line number Diff line number Diff line
@@ -53,10 +53,10 @@ void context_tracking_user_enter(void)
	/*
	 * Repeat the user_enter() check here because some archs may be calling
	 * this from asm and if no CPU needs context tracking, they shouldn't
	 * go further. Repeat the check here until they support the static key
	 * check.
	 * go further. Repeat the check here until they support the inline static
	 * key check.
	 */
	if (!static_key_false(&context_tracking_enabled))
	if (!context_tracking_is_enabled())
		return;

	/*
@@ -160,7 +160,7 @@ void context_tracking_user_exit(void)
{
	unsigned long flags;

	if (!static_key_false(&context_tracking_enabled))
	if (!context_tracking_is_enabled())
		return;

	if (in_interrupt())