|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [PATCH v2] powernow: don't read never initialoized structure
c/s 20361:51b031b0737e removed the writing of struct
processor_performance's shared_cpu_map member, but the powernow driver
still has code to read it (though presumably that code path can't be
taken on actual hardware supported by the powernow driver except when
the number of CPUs to be coordinated is one). Remove the use of the
field along with the field itself.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
--- a/xen/arch/x86/acpi/cpufreq/powernow.c
+++ b/xen/arch/x86/acpi/cpufreq/powernow.c
@@ -200,15 +200,17 @@ static int powernow_cpufreq_cpu_init(str
perf = data->acpi_data;
policy->shared_type = perf->shared_type;
- /*
- * Will let policy->cpus know about dependency only when software
- * coordination is required.
- */
if (policy->shared_type == CPUFREQ_SHARED_TYPE_ALL ||
policy->shared_type == CPUFREQ_SHARED_TYPE_ANY) {
- policy->cpus = perf->shared_cpu_map;
+ cpumask_set_cpu(cpu, &policy->cpus);
+ if (cpumask_weight(&policy->cpus) != 1) {
+ printk(XENLOG_WARNING "Unsupported sharing type %d (%u CPUs)\n",
+ policy->shared_type, cpumask_weight(&policy->cpus));
+ result = -ENODEV;
+ goto err_unreg;
+ }
} else {
- policy->cpus = cpumask_of_cpu(cpu);
+ cpumask_copy(&policy->cpus, cpumask_of(cpu));
}
/* capability check */
--- a/xen/include/acpi/cpufreq/processor_perf.h
+++ b/xen/include/acpi/cpufreq/processor_perf.h
@@ -29,7 +29,6 @@ struct processor_performance {
uint32_t state_count;
struct xen_processor_px *states;
struct xen_psd_package domain_info;
- cpumask_t shared_cpu_map;
uint32_t shared_type;
uint32_t init;
powernow-no-sharing.patch
Description: Text document
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-devel] [PATCH v2] powernow: don't read never initialoized structure member,
Jan Beulich <=
|
|
|
|
|