Re: [PATCH] tools/power turbostat: fix overflow read on array slm_freq_table

From: Rafael J. Wysocki
Date: Mon Apr 25 2016 - 08:00:36 EST


On 4/24/2016 8:18 PM, Colin King wrote:
From: Colin Ian King <colin.king@xxxxxxxxxxxxx>

When i >= SLM_BCLK_FREQS, the frequency read from the slm_freq_table
is off the end of the array because msr is set to 3 rather than the
actual array index i. Set i to 3 rather than msr to fix this.

Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>

Can you please CC this to linux-pm@xxxxxxxxxxxxxxx? It is easier to handle then.

---
tools/power/x86/turbostat/turbostat.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/power/x86/turbostat/turbostat.c b/tools/power/x86/turbostat/turbostat.c
index acbf7ff..a66f07c 100644
--- a/tools/power/x86/turbostat/turbostat.c
+++ b/tools/power/x86/turbostat/turbostat.c
@@ -3050,7 +3050,7 @@ double slm_bclk(void)
i = msr & 0xf;
if (i >= SLM_BCLK_FREQS) {
fprintf(outf, "SLM BCLK[%d] invalid\n", i);
- msr = 3;
+ i = 3;
}
freq = slm_freq_table[i];