mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-01-12 01:20:14 +00:00
PM: cpufreq: powernv/tracing: Move powernv_throttle trace event
As the trace event powernv_throttle is only used by the powernv code, move it to a separate include file and have that code directly enable it. Trace events can take up around 5K of memory when they are defined regardless if they are used or not. It wastes memory to have them defined in configurations where the tracepoint is not used. Cc: Masami Hiramatsu <mhiramat@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Madhavan Srinivasan <maddy@linux.ibm.com> Cc: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/20250612145407.906308844@goodmis.org Fixes: 0306e481d479a ("cpufreq: powernv/tracing: Add powernv_throttle tracepoint") Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Acked-by: Rafael J. Wysocki <rafael@kernel.org> Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
This commit is contained in:
parent
06cc77a63f
commit
647fe16b46
@ -21,6 +21,7 @@ obj-$(CONFIG_CPUFREQ_VIRT) += virtual-cpufreq.o
|
||||
|
||||
# Traces
|
||||
CFLAGS_amd-pstate-trace.o := -I$(src)
|
||||
CFLAGS_powernv-cpufreq.o := -I$(src)
|
||||
amd_pstate-y := amd-pstate.o amd-pstate-trace.o
|
||||
|
||||
##################################################################################
|
||||
|
||||
@ -21,7 +21,6 @@
|
||||
#include <linux/string_choices.h>
|
||||
#include <linux/cpu.h>
|
||||
#include <linux/hashtable.h>
|
||||
#include <trace/events/power.h>
|
||||
|
||||
#include <asm/cputhreads.h>
|
||||
#include <asm/firmware.h>
|
||||
@ -30,6 +29,9 @@
|
||||
#include <asm/opal.h>
|
||||
#include <linux/timer.h>
|
||||
|
||||
#define CREATE_TRACE_POINTS
|
||||
#include "powernv-trace.h"
|
||||
|
||||
#define POWERNV_MAX_PSTATES_ORDER 8
|
||||
#define POWERNV_MAX_PSTATES (1UL << (POWERNV_MAX_PSTATES_ORDER))
|
||||
#define PMSR_PSAFE_ENABLE (1UL << 30)
|
||||
|
||||
44
drivers/cpufreq/powernv-trace.h
Normal file
44
drivers/cpufreq/powernv-trace.h
Normal file
@ -0,0 +1,44 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0 */
|
||||
|
||||
#if !defined(_POWERNV_TRACE_H) || defined(TRACE_HEADER_MULTI_READ)
|
||||
#define _POWERNV_TRACE_H
|
||||
|
||||
#include <linux/cpufreq.h>
|
||||
#include <linux/tracepoint.h>
|
||||
#include <linux/trace_events.h>
|
||||
|
||||
#undef TRACE_SYSTEM
|
||||
#define TRACE_SYSTEM power
|
||||
|
||||
TRACE_EVENT(powernv_throttle,
|
||||
|
||||
TP_PROTO(int chip_id, const char *reason, int pmax),
|
||||
|
||||
TP_ARGS(chip_id, reason, pmax),
|
||||
|
||||
TP_STRUCT__entry(
|
||||
__field(int, chip_id)
|
||||
__string(reason, reason)
|
||||
__field(int, pmax)
|
||||
),
|
||||
|
||||
TP_fast_assign(
|
||||
__entry->chip_id = chip_id;
|
||||
__assign_str(reason);
|
||||
__entry->pmax = pmax;
|
||||
),
|
||||
|
||||
TP_printk("Chip %d Pmax %d %s", __entry->chip_id,
|
||||
__entry->pmax, __get_str(reason))
|
||||
);
|
||||
|
||||
#endif /* _POWERNV_TRACE_H */
|
||||
|
||||
/* This part must be outside protection */
|
||||
#undef TRACE_INCLUDE_PATH
|
||||
#define TRACE_INCLUDE_PATH .
|
||||
|
||||
#undef TRACE_INCLUDE_FILE
|
||||
#define TRACE_INCLUDE_FILE powernv-trace
|
||||
|
||||
#include <trace/define_trace.h>
|
||||
@ -99,28 +99,6 @@ DEFINE_EVENT(psci_domain_idle, psci_domain_idle_exit,
|
||||
TP_ARGS(cpu_id, state, s2idle)
|
||||
);
|
||||
|
||||
TRACE_EVENT(powernv_throttle,
|
||||
|
||||
TP_PROTO(int chip_id, const char *reason, int pmax),
|
||||
|
||||
TP_ARGS(chip_id, reason, pmax),
|
||||
|
||||
TP_STRUCT__entry(
|
||||
__field(int, chip_id)
|
||||
__string(reason, reason)
|
||||
__field(int, pmax)
|
||||
),
|
||||
|
||||
TP_fast_assign(
|
||||
__entry->chip_id = chip_id;
|
||||
__assign_str(reason);
|
||||
__entry->pmax = pmax;
|
||||
),
|
||||
|
||||
TP_printk("Chip %d Pmax %d %s", __entry->chip_id,
|
||||
__entry->pmax, __get_str(reason))
|
||||
);
|
||||
|
||||
TRACE_EVENT(pstate_sample,
|
||||
|
||||
TP_PROTO(u32 core_busy,
|
||||
|
||||
@ -17,5 +17,4 @@
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(suspend_resume);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(cpu_idle);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(cpu_frequency);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(powernv_throttle);
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user