[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [linux-2.6.18-xen] cpufreq: add bounds checking to cpufreq_stats.c from upstream



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1197631720 0
# Node ID fc406f9e9a0a8115b0b37e8c7fe37b1879c6a713
# Parent  2e33f7c0f18a7e4a257d806f25d0630737e93295
cpufreq: add bounds checking to cpufreq_stats.c from upstream

The cpufreq_stats.c will attempt to use an error return value as
an index to an array, causing the kernel to oops.  Stop that by
doing bounds checking.

This is a backport of upstream code.

Signed-off-by: Mark Langsdorf <mark.langsdorf@xxxxxxx>
---
 drivers/cpufreq/cpufreq_stats.c |    3 +++
 1 files changed, 3 insertions(+)

diff -r 2e33f7c0f18a -r fc406f9e9a0a drivers/cpufreq/cpufreq_stats.c
--- a/drivers/cpufreq/cpufreq_stats.c   Fri Dec 14 10:20:34 2007 +0000
+++ b/drivers/cpufreq/cpufreq_stats.c   Fri Dec 14 11:28:40 2007 +0000
@@ -292,6 +292,9 @@ cpufreq_stat_notifier_trans (struct noti
        if (old_index == new_index)
                return 0;
 
+        if ((old_index < 0) || (new_index < 0))
+                return 0;
+
        spin_lock(&cpufreq_stats_lock);
        stat->last_index = new_index;
 #ifdef CONFIG_CPU_FREQ_STAT_DETAILS

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.