static void free_msrs(void)
{
int i;
- for_each_possible_cpu(i) {
+ for (i = 0; i < NR_CPUS; ++i) {
kfree(cpu_msrs[i].counters);
cpu_msrs[i].counters = NULL;
kfree(cpu_msrs[i].controls);
size_t counters_size = sizeof(struct op_msr) * model->num_counters;
int i;
- for_each_online_cpu(i) {
+ for (i = 0; i < NR_CPUS; ++i) {
+ if (!cpu_online(i))
+ continue;
+
cpu_msrs[i].counters = kmalloc(counters_size, GFP_KERNEL);
if (!cpu_msrs[i].counters) {
success = 0;
{
__u8 cpu_model = boot_cpu_data.x86_model;
- if (cpu_model == 14)
- *cpu_type = "i386/core";
- else if (cpu_model > 0xd)
+ if (cpu_model > 0xd)
return 0;
- else if (cpu_model == 9) {
+
+ if (cpu_model == 9) {
*cpu_type = "i386/p6_mobile";
} else if (cpu_model > 5) {
*cpu_type = "i386/piii";