[Intel-gfx] [PATCHv2.99 10/11] OPTIONAL: cpufreq: intel_pstate: Add tracing of VLP controller status.
Francisco Jerez
currojerez at riseup.net
Tue Apr 28 03:22:57 UTC 2020
Signed-off-by: Francisco Jerez <currojerez at riseup.net>
---
drivers/cpufreq/intel_pstate.c | 9 ++++++---
include/trace/events/power.h | 13 +++++++++----
2 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c
index 2458a821195f..dd86505d7855 100644
--- a/drivers/cpufreq/intel_pstate.c
+++ b/drivers/cpufreq/intel_pstate.c
@@ -2242,7 +2242,8 @@ static void intel_pstate_adjust_pstate(struct cpudata *cpu)
sample->aperf,
sample->tsc,
get_avg_frequency(cpu),
- fp_toint(cpu->iowait_boost * 100));
+ fp_toint(cpu->iowait_boost * 100),
+ cpu->vlp.status.value);
}
static void intel_pstate_adjust_pstate_range(struct cpudata *cpu,
@@ -2282,7 +2283,8 @@ static void intel_pstate_adjust_pstate_range(struct cpudata *cpu,
sample->aperf,
sample->tsc,
get_avg_frequency(cpu),
- fp_toint(cpu->iowait_boost * 100));
+ fp_toint(cpu->iowait_boost * 100),
+ cpu->vlp.status.value);
}
static void intel_pstate_update_util(struct update_util_data *data, u64 time,
@@ -2789,7 +2791,8 @@ static void intel_cpufreq_trace(struct cpudata *cpu, unsigned int trace_type, in
sample->aperf,
sample->tsc,
get_avg_frequency(cpu),
- fp_toint(cpu->iowait_boost * 100));
+ fp_toint(cpu->iowait_boost * 100),
+ 0);
}
static int intel_cpufreq_target(struct cpufreq_policy *policy,
diff --git a/include/trace/events/power.h b/include/trace/events/power.h
index 9065a3b084c4..57153d82547c 100644
--- a/include/trace/events/power.h
+++ b/include/trace/events/power.h
@@ -72,7 +72,8 @@ TRACE_EVENT(pstate_sample,
u64 aperf,
u64 tsc,
u32 freq,
- u32 io_boost
+ u32 io_boost,
+ u32 vlp_status
),
TP_ARGS(core_busy,
@@ -83,7 +84,8 @@ TRACE_EVENT(pstate_sample,
aperf,
tsc,
freq,
- io_boost
+ io_boost,
+ vlp_status
),
TP_STRUCT__entry(
@@ -96,6 +98,7 @@ TRACE_EVENT(pstate_sample,
__field(u64, tsc)
__field(u32, freq)
__field(u32, io_boost)
+ __field(u32, vlp_status)
),
TP_fast_assign(
@@ -108,9 +111,10 @@ TRACE_EVENT(pstate_sample,
__entry->tsc = tsc;
__entry->freq = freq;
__entry->io_boost = io_boost;
+ __entry->vlp_status = vlp_status;
),
- TP_printk("core_busy=%lu scaled=%lu from=%lu to=%lu mperf=%llu aperf=%llu tsc=%llu freq=%lu io_boost=%lu",
+ TP_printk("core_busy=%lu scaled=%lu from=%lu to=%lu mperf=%llu aperf=%llu tsc=%llu freq=%lu io_boost=%lu vlp=%lu",
(unsigned long)__entry->core_busy,
(unsigned long)__entry->scaled_busy,
(unsigned long)__entry->from,
@@ -119,7 +123,8 @@ TRACE_EVENT(pstate_sample,
(unsigned long long)__entry->aperf,
(unsigned long long)__entry->tsc,
(unsigned long)__entry->freq,
- (unsigned long)__entry->io_boost
+ (unsigned long)__entry->io_boost,
+ (unsigned long)__entry->vlp_status
)
);
--
2.22.1
More information about the Intel-gfx
mailing list