[PATCH] ppc64: remove decr_overclock

Now that we have HZ=1000 there is much less of a need for decr_overclock.
Remove it.

Leave spread_lpevents but move it into iSeries_setup.c. We should look at
making event spreading the default some day.

Signed-off-by: Anton Blanchard <anton@samba.org>
Acked-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

authored by

Anton Blanchard and committed by
Linus Torvalds
c4eb2a93 6dc2f0c7

+24 -57
+22
arch/ppc64/kernel/iSeries_setup.c
··· 852 852 853 853 late_initcall(iSeries_src_init); 854 854 855 + static int set_spread_lpevents(char *str) 856 + { 857 + unsigned long i; 858 + unsigned long val = simple_strtoul(str, NULL, 0); 859 + 860 + /* 861 + * The parameter is the number of processors to share in processing 862 + * lp events. 863 + */ 864 + if (( val > 0) && (val <= NR_CPUS)) { 865 + for (i = 1; i < val; ++i) 866 + paca[i].lpqueue_ptr = paca[0].lpqueue_ptr; 867 + 868 + printk("lpevent processing spread over %ld processors\n", val); 869 + } else { 870 + printk("invalid spread_lpevents %ld\n", val); 871 + } 872 + 873 + return 1; 874 + } 875 + __setup("spread_lpevents=", set_spread_lpevents); 876 + 855 877 void __init iSeries_early_setup(void) 856 878 { 857 879 iSeries_fixup_klimit();
+1 -55
arch/ppc64/kernel/setup.c
··· 103 103 104 104 extern void smp_release_cpus(void); 105 105 106 - unsigned long decr_overclock = 1; 107 - unsigned long decr_overclock_proc0 = 1; 108 - unsigned long decr_overclock_set = 0; 109 - unsigned long decr_overclock_proc0_set = 0; 110 - 111 106 int have_of = 1; 112 107 int boot_cpuid = 0; 113 108 int boot_cpuid_phys = 0; ··· 1115 1120 printk("[dump]%04x %s\n", src, msg); 1116 1121 } 1117 1122 1118 - int set_spread_lpevents( char * str ) 1119 - { 1120 - /* The parameter is the number of processors to share in processing lp events */ 1121 - unsigned long i; 1122 - unsigned long val = simple_strtoul( str, NULL, 0 ); 1123 - if ( ( val > 0 ) && ( val <= NR_CPUS ) ) { 1124 - for ( i=1; i<val; ++i ) 1125 - paca[i].lpqueue_ptr = paca[0].lpqueue_ptr; 1126 - printk("lpevent processing spread over %ld processors\n", val); 1127 - } 1128 - else 1129 - printk("invalid spreaqd_lpevents %ld\n", val); 1130 - return 1; 1131 - } 1132 - 1133 1123 /* This should only be called on processor 0 during calibrate decr */ 1134 1124 void setup_default_decr(void) 1135 1125 { 1136 1126 struct paca_struct *lpaca = get_paca(); 1137 1127 1138 - if ( decr_overclock_set && !decr_overclock_proc0_set ) 1139 - decr_overclock_proc0 = decr_overclock; 1140 - 1141 - lpaca->default_decr = tb_ticks_per_jiffy / decr_overclock_proc0; 1128 + lpaca->default_decr = tb_ticks_per_jiffy; 1142 1129 lpaca->next_jiffy_update_tb = get_tb() + tb_ticks_per_jiffy; 1143 1130 } 1144 - 1145 - int set_decr_overclock_proc0( char * str ) 1146 - { 1147 - unsigned long val = simple_strtoul( str, NULL, 0 ); 1148 - if ( ( val >= 1 ) && ( val <= 48 ) ) { 1149 - decr_overclock_proc0_set = 1; 1150 - decr_overclock_proc0 = val; 1151 - printk("proc 0 decrementer overclock factor of %ld\n", val); 1152 - } 1153 - else 1154 - printk("invalid proc 0 decrementer overclock factor of %ld\n", val); 1155 - return 1; 1156 - } 1157 - 1158 - int set_decr_overclock( char * str ) 1159 - { 1160 - unsigned long val = simple_strtoul( str, NULL, 0 ); 1161 - if ( ( val >= 1 ) && ( val <= 48 ) ) { 1162 - decr_overclock_set = 1; 1163 - decr_overclock = val; 1164 - printk("decrementer overclock factor of %ld\n", val); 1165 - } 1166 - else 1167 - printk("invalid decrementer overclock factor of %ld\n", val); 1168 - return 1; 1169 - 1170 - } 1171 - 1172 - __setup("spread_lpevents=", set_spread_lpevents ); 1173 - __setup("decr_overclock_proc0=", set_decr_overclock_proc0 ); 1174 - __setup("decr_overclock=", set_decr_overclock ); 1175 1131 1176 1132 #ifndef CONFIG_PPC_ISERIES 1177 1133 /*
+1 -2
arch/ppc64/kernel/smp.c
··· 334 334 } 335 335 } 336 336 337 - extern unsigned long decr_overclock; 338 337 extern struct gettimeofday_struct do_gtod; 339 338 340 339 struct thread_info *current_set[NR_CPUS]; ··· 490 491 if (smp_ops->cpu_bootable && !smp_ops->cpu_bootable(cpu)) 491 492 return -EINVAL; 492 493 493 - paca[cpu].default_decr = tb_ticks_per_jiffy / decr_overclock; 494 + paca[cpu].default_decr = tb_ticks_per_jiffy; 494 495 495 496 if (!cpu_has_feature(CPU_FTR_SLB)) { 496 497 void *tmp;