Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq

* master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq:
[CPUFREQ] Remove unneeded errata workaround from p4-clockmod.
[CPUFREQ] check sysfs_create_link return value

+13 -13
-9
arch/i386/kernel/cpu/cpufreq/p4-clockmod.c
··· 51 52 53 static int has_N44_O17_errata[NR_CPUS]; 54 - static int has_N60_errata[NR_CPUS]; 55 static unsigned int stock_freq; 56 static struct cpufreq_driver p4clockmod_driver; 57 static unsigned int cpufreq_p4_get(unsigned int cpu); ··· 223 case 0x0f12: 224 has_N44_O17_errata[policy->cpu] = 1; 225 dprintk("has errata -- disabling low frequencies\n"); 226 - break; 227 - 228 - case 0x0f29: 229 - has_N60_errata[policy->cpu] = 1; 230 - dprintk("has errata -- disabling frequencies lower than 2ghz\n"); 231 - break; 232 } 233 234 /* get max frequency */ ··· 233 /* table init */ 234 for (i=1; (p4clockmod_table[i].frequency != CPUFREQ_TABLE_END); i++) { 235 if ((i<2) && (has_N44_O17_errata[policy->cpu])) 236 - p4clockmod_table[i].frequency = CPUFREQ_ENTRY_INVALID; 237 - else if (has_N60_errata[policy->cpu] && ((stock_freq * i)/8) < 2000000) 238 p4clockmod_table[i].frequency = CPUFREQ_ENTRY_INVALID; 239 else 240 p4clockmod_table[i].frequency = (stock_freq * i)/8;
··· 51 52 53 static int has_N44_O17_errata[NR_CPUS]; 54 static unsigned int stock_freq; 55 static struct cpufreq_driver p4clockmod_driver; 56 static unsigned int cpufreq_p4_get(unsigned int cpu); ··· 224 case 0x0f12: 225 has_N44_O17_errata[policy->cpu] = 1; 226 dprintk("has errata -- disabling low frequencies\n"); 227 } 228 229 /* get max frequency */ ··· 240 /* table init */ 241 for (i=1; (p4clockmod_table[i].frequency != CPUFREQ_TABLE_END); i++) { 242 if ((i<2) && (has_N44_O17_errata[policy->cpu])) 243 p4clockmod_table[i].frequency = CPUFREQ_ENTRY_INVALID; 244 else 245 p4clockmod_table[i].frequency = (stock_freq * i)/8;
+13 -4
drivers/cpufreq/cpufreq.c
··· 722 spin_unlock_irqrestore(&cpufreq_driver_lock, flags); 723 724 dprintk("CPU already managed, adding link\n"); 725 - sysfs_create_link(&sys_dev->kobj, 726 - &managed_policy->kobj, "cpufreq"); 727 728 cpufreq_debug_enable_ratelimit(); 729 mutex_unlock(&policy->lock); ··· 775 dprintk("CPU %u already managed, adding link\n", j); 776 cpufreq_cpu_get(cpu); 777 cpu_sys_dev = get_cpu_sysdev(j); 778 - sysfs_create_link(&cpu_sys_dev->kobj, &policy->kobj, 779 - "cpufreq"); 780 } 781 782 policy->governor = NULL; /* to assure that the starting sequence is
··· 722 spin_unlock_irqrestore(&cpufreq_driver_lock, flags); 723 724 dprintk("CPU already managed, adding link\n"); 725 + ret = sysfs_create_link(&sys_dev->kobj, 726 + &managed_policy->kobj, 727 + "cpufreq"); 728 + if (ret) { 729 + mutex_unlock(&policy->lock); 730 + goto err_out_driver_exit; 731 + } 732 733 cpufreq_debug_enable_ratelimit(); 734 mutex_unlock(&policy->lock); ··· 770 dprintk("CPU %u already managed, adding link\n", j); 771 cpufreq_cpu_get(cpu); 772 cpu_sys_dev = get_cpu_sysdev(j); 773 + ret = sysfs_create_link(&cpu_sys_dev->kobj, &policy->kobj, 774 + "cpufreq"); 775 + if (ret) { 776 + mutex_unlock(&policy->lock); 777 + goto err_out_unregister; 778 + } 779 } 780 781 policy->governor = NULL; /* to assure that the starting sequence is