diff options
| author | Paul Mackerras <paulus@samba.org> | 2008-11-19 16:10:32 +1100 |
|---|---|---|
| committer | Paul Mackerras <paulus@samba.org> | 2008-11-19 16:10:32 +1100 |
| commit | cea555d384b85271035814c5adad23e6c7fc5d2a (patch) | |
| tree | 1181b6333a69a135293ec75f8a48c849ee32c015 /drivers/misc/intel_menlow.c | |
| parent | 78608dd32ce46789e970d6c3c423cd668c138d6c (diff) | |
| parent | 7f0f598a0069d1ab072375965a4b69137233169c (diff) | |
| download | olio-linux-3.10-cea555d384b85271035814c5adad23e6c7fc5d2a.tar.xz olio-linux-3.10-cea555d384b85271035814c5adad23e6c7fc5d2a.zip | |
Merge branch 'linux-2.6' into next
Diffstat (limited to 'drivers/misc/intel_menlow.c')
| -rw-r--r-- | drivers/misc/intel_menlow.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/misc/intel_menlow.c b/drivers/misc/intel_menlow.c index e00a2756e97..27b7662955b 100644 --- a/drivers/misc/intel_menlow.c +++ b/drivers/misc/intel_menlow.c @@ -52,6 +52,11 @@ MODULE_LICENSE("GPL"); #define MEMORY_ARG_CUR_BANDWIDTH 1 #define MEMORY_ARG_MAX_BANDWIDTH 0 +/* + * GTHS returning 'n' would mean that [0,n-1] states are supported + * In that case max_cstate would be n-1 + * GTHS returning '0' would mean that no bandwidth control states are supported + */ static int memory_get_int_max_bandwidth(struct thermal_cooling_device *cdev, unsigned long *max_state) { @@ -71,6 +76,9 @@ static int memory_get_int_max_bandwidth(struct thermal_cooling_device *cdev, if (ACPI_FAILURE(status)) return -EFAULT; + if (!value) + return -EINVAL; + *max_state = value - 1; return 0; } @@ -121,7 +129,7 @@ static int memory_set_cur_bandwidth(struct thermal_cooling_device *cdev, if (memory_get_int_max_bandwidth(cdev, &max_state)) return -EFAULT; - if (max_state < 0 || state > max_state) + if (state > max_state) return -EINVAL; arg_list.count = 1; |