linux/drivers/macintosh/windfarm_pm112.c
<<
>>
v2.6.12.5 ="&retur2 nput typ text" nam .12.4" id .12.4" "&retur2butt.c"typ /optio">S12.4" v2.6.12.5 6.12.5" >"lxr_n> div >"lxr_n>on value="v2.ajax+* > v2.6.12.4 ="&"lxr_n> div.12.5"lxr2.div >"lxr xr_n>div.id .12.4"_results".12.5"lxr_n> div > >div.id conteno">> >div.id file_contenos"pr_n1> 6. v2.6.12.5/*.5" >r_n2> 6. v2.6.12.5 * W="post" PowerMac thermal control..5" >r_n3> 6. v2.6.12.5 * Control loops < rchhines with SMU and PPC970MP processors..5" >r_n4> 6. v2.6.12.5 *.5" >r_n5> 6. v2.6.12.5 * Copymetho (C) 2005 Paul Mackerras, IBM Corp. <paulus@samba.orgi="&.5" >r_n6> 6. v2.6.12.5 * Copymetho (C) 2006 Benjamin Herrenschmidt, IBM Corp..5" >r_n7> 6. v2.6.12.5 *.5" >r_n8> 6. v2.6.12.5 * Use and redistribute under the terms of the GNU GPLtati.5" >r_n9> 6. v2.6.12.5 */.5" >r_.6.1a>#include < i="&>r_11.1a>#include < i="&>r_12.1a>#include < i="&>r_13.1a>#include < i="&>r_14.1a>#include < i="&>r_15.1a>#include < i="&>r_16.1a>#include <asm/prom.h.1a>i="&>r_17.1a>#include <asm/smu.h.1a>i="&>r_18> 6.>r_19.1a>#include "d="post".h.1a>iquot;>r_20.1a>#include "d="post"_pid.h.1a>iquot;>r_21> 6.>r_22.1a>#defineclassearch+code=VERSION".12.5VERSION.1a> v2.6.12.5iquot;0.2"<5" >r_23> 6.>r_24.1a>#defineclassearch+code=DEBUG".12.5DEBUG> 6.>r_25.1a>#undefclassearch+code=LOTSA_DEBUG".12.5LOTSA_DEBUG> 6.>r_26> 6.>r_27.1a>#ifdefclassearch+code=DEBUG".12.5DEBUG> 6.>r_28.1a>#defineclassearch+code=DBG".12.5DBG> 6.(lassearch+code=args".12.5args> 6....)xr_n>assearch+code=printk".12.5printk> 6.(lassearch+code=args".12.5args> 6.)>r_29.1a>#else>r_30.1a>#defineclassearch+code=DBG".12.5DBG> 6.(lassearch+code=args".12.5args> 6....)xr_ndo { } while(0)>r_31.1a>#endif>r_32> 6.>r_33.1a>#ifdefclassearch+code=LOTSA_DEBUG".12.5LOTSA_DEBUG> 6.>r_34.1a>#defineclassearch+code=DBG_LOTS".12.5DBG_LOTS> 6.(lassearch+code=args".12.5args> 6....)xr_nr_n>assearch+code=printk".12.5printk> 6.(lassearch+code=args".12.5args> 6.)>r_35.1a>#else>r_36.1a>#defineclassearch+code=DBG_LOTS".12.5DBG_LOTS> 6.(lassearch+code=args".12.5args> 6....)xr_nr_ndo { } while(0)>r_37.1a>#endif>r_38> 6.>r_39> 6. v2.6.12.5/* definec.4r_40> 6. v2.6.12.5 * the o"+stemp code.5" >r_41> 6. v2.6.12.5 */.5" >r_42.1a>#undefclassearch+code=HACKED_OVERTEMP".12.5HACKED_OVERTEMP> 6.>r_43> 6.>r_44> 6. v2.6.12.5/* We currently only handle 2 chips, 4 cores... */.5" >r_45.1a>#defineclassearch+code=NR_CHIPS".12.5NR_CHIPS.1a> 2>r_46.1a>#defineclassearch+code=NR_CORES".12.5NR_CORES.1a> 4>r_47.1a>#defineclassearch+code=NR_CPU_FANS".12.5NR_CPU_FANS.1a> 3 * lassearch+code=NR_CHIPS".12.5NR_CHIPS.1a>>r_48> 6.>r_49> 6. v2.6.12.5/* Controls and sensors */.5" >r_50> 6.="+sea struct lassearch+code=wf_sensor".12.5wf_sensor.1a> *lassearch+code=sens_cpu_temp".12.5sens_cpu_temp.1a>[lassearch+code=NR_CORES".12.5NR_CORES.1a>];>r_51> 6.="+sea struct lassearch+code=wf_sensor".12.5wf_sensor.1a> *lassearch+code=sens_cpu_power".12.5sens_cpu_power.1a>[lassearch+code=NR_CORES".12.5NR_CORES.1a>];>r_52> 6.="+sea struct lassearch+code=wf_sensor".12.5wf_sensor.1a> *lassearch+code=hd_temp".12.5hd_temp.1a>;>r_53> 6.="+sea struct lassearch+code=wf_sensor".12.5wf_sensor.1a> *lassearch+code=slots_power".12.5slots_power.1a>;>r_54> 6.="+sea struct lassearch+code=wf_sensor".12.5wf_sensor.1a> *lassearch+code=u4_temp".12.5u4_temp.1a>;>r_55> 6.>r_56> 6.="+sea struct lassearch+code=wf_control".12.5wf_control.1a> *lassearch+code=cpu_fans".12.5cpu_fans.1a>[lassearch+code=NR_CPU_FANS".12.5NR_CPU_FANS.1a>];>r_57> 6.="+sea char *lassearch+code=cpu_fan_nam s".12.5cpu_fan_nam s.1a>[lassearch+code=NR_CPU_FANS".12.5NR_CPU_FANS.1a>] = {>r_58.1a> v2.6.12.5iquot;cpu-rear-fan-0"<5" ,>r_59.1a> v2.6.12.5iquot;cpu-rear-fan-1"<5" ,>r_60.1a> v2.6.12.5iquot;cpu-front-fan-0"<5" ,>r_61.1a> v2.6.12.5iquot;cpu-front-fan-1"<5" ,>r_62.1a> v2.6.12.5iquot;cpu-pump-0"<5" ,>r_63.1a> v2.6.12.5iquot;cpu-pump-1"<5" ,>r_64> 6.};>r_65> 6.="+sea struct lassearch+code=wf_control".12.5wf_control.1a> *lassearch+code=cpufreq_12.mp".12.5cpufreq_12.mp.1a>;>r_66> 6.>r_67> 6. v2.6.12.5/* Second pump isn't required (and isn't actually preseno) */.5" >r_68.1a>#defineclassearch+code=CPU_FANS_REQD".12.5CPU_FANS_REQD.1a> (lassearch+code=NR_CPU_FANS".12.5NR_CPU_FANS.1a> - 2)>r_69.1a>#defineclassearch+code=FIRST_PUMP".12.5FIRST_PUMP.1a> 4>r_70.1a>#defineclassearch+code=LAST_PUMP".12.5LAST_PUMP.1a> 5>r_71> 6.>r_72> 6. v2.6.12.5/* We keep a temperature history < a"+sage calcula12.c"of 180s */.5" >r_73.1a>#defineclassearch+code=CPU_TEMP_HIST_SIZE".12.5CPU_TEMP_HIST_SIZE.1a> 180>r_74> 6.>r_75> 6. v2.6.12.5/* Scale fact < < fan speed, *100 */.5" >r_76> 6.="+sea " mclassearch+code=cpu_fan_scale".12.5cpu_fan_scale.1a>[lassearch+code=NR_CPU_FANS".12.5NR_CPU_FANS.1a>] = {>r_77.1a> 100,>r_78.1a> 100,>r_79.1a> 97, v2.6.12.5/* inlet fans run at 97%"of exhaust fan */.5" >r_80.1a> 97,>r_81.1a> 100, v2.6.12.5/* updated la1er */.5" >r_82.1a> 100, v2.6.12.5/* updated la1er */.5" >r_83> 6.};>r_84> 6.>r_85> 6.="+sea struct lassearch+code=wf_control".12.5wf_control.1a> *lassearch+code=backside_fan".12.5backside_fan.1a>;>r_86> 6.="+sea struct lassearch+code=wf_control".12.5wf_control.1a> *lassearch+code=slots_fan".12.5slots_fan.1a>;>r_87> 6.="+sea struct lassearch+code=wf_control".12.5wf_control.1a> *lassearch+code=on="+_bay_fan".12.5on="+_bay_fan.1a>;>r_88> 6.>r_89> 6. v2.6.12.5/* PID loop ="+se */.5" >r_90> 6.="+sea struct lassearch+code=wf_cpu_pid_="+se".12.5wf_cpu_pid_="+se.1a> assearch+code=cpu_pid".12.5cpu_pid.1a>[lassearch+code=NR_CORES".12.5NR_CORES.1a>];>r_91> 6.="+sea lassearch+code=u32 12.5u32> 6. assearch+code=cpu_.4cpu_.4[lassearch+code=CPU_TEMP_HIST_SIZE".12.5CPU_TEMP_HIST_SIZE.1a>];>r_92> 6.="+sea " mclassearch+code=cpu_.4cpu_.4;>r_93> 6.="+sea lassearch+code=s64 12.5s64> 6.classearch+code=cpu_.4cpu_.4;>r_94> 6.="+sea lassearch+code=s32 12.5s32> 6. assearch+code=cpu_all_tmax".12.5cpu_all_tmax> 6. = 100 << 16;>r_95> 6.="+sea " mclassearch+code=cpu_2.5t_targe12.12.5cpu_2.5t_targe1.1a>;>r_96> 6.="+sea struct lassearch+code=wf_pid_="+se".12.5wf_pid_="+se.1a> assearch+code=backside_pid".12.5backside_pid.1a>;>r_97> 6.="+sea " mclassearch+code=backside_seak".12.5backside_seak.1a>;>r_98> 6.="+sea struct lassearch+code=wf_pid_="+se".12.5wf_pid_="+se.1a> assearch+code=slots_pid".12.5slots_pid.1a>;>r_99> 6.="+sea " mclassearch+code=slots_="+rted".12.5slots_="+rted.1a>;>r100> 6.="+sea struct lassearch+code=wf_pid_="+se".12.5wf_pid_="+se.1a> assearch+code=on="+_bay_pid".12.5on="+_bay_pid.1a>;>r101> 6.="+sea " mclassearch+code=on="+_bay_seak".12.5on="+_bay_seak.1a>;>r102> 6.>r103> 6.="+sea " mclassearch+code=nr_cores".12.5nr_cores.1a>;>r104> 6.="+sea " mclassearch+code=ha"+_all_controls".12.5ha"+_all_controls.1a>;>r105> 6.="+sea " mclassearch+code=ha"+_all_sensors".12.5ha"+_all_sensors.1a>;>r106> 6.="+sea " mclassearch+code=="+rted".12.5s"+rted.1a>;>r107> 6.>r108> 6.="+sea " mclassearch+code=failure_="+se".12.5failure_="+se.1a>;>r109.1a>#defineclassearch+code=FAILURE_SENSOR".12.5FAILURE_SENSOR.1a> 1>r110.1a>#defineclassearch+code=FAILURE_FAN".12.5FAILURE_FAN.1a> 2>r111.1a>#defineclassearch+code=FAILURE_PERM".12.5FAILURE_PERM.1a> 4>r112.1a>#defineclassearch+code=FAILURE_LOW_OVERTEMP".12.5FAILURE_LOW_OVERTEMP.1a> 8>r113.1a>#defineclassearch+code=FAILURE_HIGH_OVERTEMP".12.5FAILURE_HIGH_OVERTEMP.1a> 16>r114> 6.>r115> 6. v2.6.12.5/* O"+stemp > s */.5" >r116.1a>#defineclassearch+code=LOW_OVER_AVERAGE".12.5LOW_OVER_AVERAGE.1a> 0>r117.1a>#defineclassearch+code=LOW_OVER_IMMEDIATE".12.5LOW_OVER_IMMEDIATE.1a> (10 << 16)>r118.1a>#defineclassearch+code=LOW_OVER_CLEAR".12.5LOW_OVER_CLEAR.1a> ((-10) << 16)>r119.1a>#defineclassearch+code=HIGH_OVER_IMMEDIATE".12.5HIGH_OVER_IMMEDIATE.1a> (14 << 16)>r120.1a>#defineclassearch+code=HIGH_OVER_AVERAGE".12.5HIGH_OVER_AVERAGE.1a> (10 << 16)>r121.1a>#defineclassearch+code=HIGH_OVER_IMMEDIATE".12.5HIGH_OVER_IMMEDIATE.1a> (14 << 16)>r122> 6.>r123> 6.>r124> 6. v2.6.12.5/* Implemenoa12.c... */.5" >r125> 6.="+sea " mclassearch+code=cre+se_cpu_loop2.12.5cre+se_cpu_loop> 6.(" mclassearch+code=cpu2.12.5cpu> 6.)>r126> 6.{>r127.1a> " mclassearch+code=chip2.12.5chip> 6. = lassearch+code=cpu2.12.5cpu> 6. / 2&>r128.1a> " mclassearch+code=core2.12.5core> 6. = lassearch+code=cpu2.12.5cpu> 6. & 1&>r129.1a> struct lassearch+code=smu_sdbp_header".12.5smu_sdbp_header.1a> *lassearch+code=hdr".12.5hdr.1a>;>r130.1a> struct lassearch+code=smu_sdbp_cpupiddata".12.5smu_sdbp_cpupiddata.1a> *lassearch+code=piddata".12.5piddata.1a>;>r131.1a> struct lassearch+code=wf_cpu_pid_param".12.5wf_cpu_pid_param.1a> assearch+code=pid".12.5pid.1a>;>r132.1a> struct lassearch+code=wf_control".12.5wf_control.1a> *lassearch+code=main_fan".12.5main_fan> 6. = lassearch+code=cpu_fans".12.5cpu_fans.1a>[0];>r133.1a> assearch+code=s32 12.5s32> 6. assearch+code=tmax".12.5tmax> 6.;>r134.1a> " mclassearch+code=fmin".12.5fmin> 6.;>r135> 6.>r136.1a> v2.6.12.5/* Get PID params from the appropri+se SAT */.5" >r137.1a> assearch+code=hdr".12.5hdr.1a> = lassearch+code=smu_sat_get_sdb_parti12.c".12.5smu_sat_get_sdb_parti12.c> 6.(lassearch+code=chip2.12.5chip> 6., 0xC8 +classearch+code=core2.12.5core> 6., lassearch+code=NULL".12.5NULL> 6.);>r138.1a> "f (lassearch+code=hdr".12.5hdr.1a> == lassearch+code=NULL".12.5NULL> 6.) {>r139.1a> assearch+code=printk".12.5printk> 6.(lassearch+code=KERN_WARNING".12.5KERN_WARNING> 6. v2.6.12.5iquot;d="post": can't get CPU PID fan config\n"<5" );>r140.1a> <-lassearch+code=EINVAL".12.5EINVAL> 6.;>r141.1a> }>r142.1a> assearch+code=piddata".12.5piddata.1a> = (struct lassearch+code=smu_sdbp_cpupiddata".12.5smu_sdbp_cpupiddata.1a> *)&lassearch+code=hdr".12.5hdr.1a>[1];>r143> 6.>r144.1a> v2.6.12.5/* Get FVT params to get Tmax; "f not found, .5r145.1a> assearch+code=hdr".12.5hdr.1a> = lassearch+code=smu_sat_get_sdb_parti12.c".12.5smu_sat_get_sdb_parti12.c> 6.(lassearch+code=chip2.12.5chip> 6., 0xC4 +classearch+code=core2.12.5core> 6., lassearch+code=NULL".12.5NULL> 6.);>r146.1a> "f (lassearch+code=hdr".12.5hdr.1a>) {>r147.1a> struct lassearch+code=smu_sdbp_fv12.12.5smu_sdbp_fv1.1a> *lassearch+code=fv12.12.5fv1.1a> = (struct lassearch+code=smu_sdbp_fv12.12.5smu_sdbp_fv1.1a> *)&lassearch+code=hdr".12.5hdr.1a>[1];>r148.1a> assearch+code=tmax".12.5tmax> 6. = lassearch+code=fv12.12.5fv1.1a>-i="&.assearch+code=maxtemp".12.5maxtemp> 6. << 16;>r149.1a> } else>r150.1a> assearch+code=tmax".12.5tmax> 6. = 95 << 16; v2.6.12.5/* default to 95 degrees C */.5" >r151> 6.>r152.1a> v2.6.12.5/* We keep a global tmax < o"+stemp calcula12.cs */.5" >r153.1a> "f (lassearch+code=tmax".12.5tmax> 6. < lassearch+code=cpu_all_tmax".12.5cpu_all_tmax> 6.)>r154.1a> assearch+code=cpu_all_tmax".12.5cpu_all_tmax> 6. = assearch+code=tmax".12.5tmax> 6.;>r155> 6.>r156.1a> v2.6.12.5/*.5" >r157> 6. v2.6.12.5 * Dard=" has a minimum fan speed"of 1000 rpm < the 4-way and.5" >r158> 6. v2.6.12.5 * 515 < the 2-way. That appears to be o"+skill, so < now,.5" >r159> 6. v2.6.12.5 * impose a minimum of 750 < 515i.5" >r160> 6. v2.6.12.5 */.5" >r161.1a> assearch+code=fmin".12.5fmin> 6. = (lassearch+code=nr_cores".12.5nr_cores.1a> i="& 2) ? 750 : 515&>r162> 6.>r163.1a> v2.6.12.5/* Ini12alize PID loop */.5" >r164.1a> assearch+code=pid".12.5pid.1a>. assearch+code=" merval".12.5" merval> 6. = 1; v2.6.12.5/* seconds */.5" >r165.1a> assearch+code=pid".12.5pid.1a>. assearch+code=history_len".12.5history_len> 6. = assearch+code=piddata".12.5piddata.1a>-i="&.assearch+code=history_len".12.5history_len> 6.&>r166.1a> assearch+code=pid".12.5pid.1a>. assearch+code=gd".12.5gd> 6. = assearch+code=piddata".12.5piddata.1a>-i="&.assearch+code=gd".12.5gd> 6.&>r167.1a> assearch+code=pid".12.5pid.1a>. assearch+code=gp".12.5gp> 6. = lassearch+code=piddata".12.5piddata.1a>-i="&.assearch+code=gp".12.5gp> 6.&>r168.1a> assearch+code=pid".12.5pid.1a>. assearch+code=gr".12.5gr.1a> = lassearch+code=piddata".12.5piddata.1a>-i="&.assearch+code=gr".12.5gr.1a> / assearch+code=piddata".12.5piddata.1a>-i="&.assearch+code=history_len".12.5history_len> 6.&>r169.1a> assearch+code=pid".12.5pid.1a>. assearch+code=pmaxadj".12.5pmaxadj> 6. = (lassearch+code=piddata".12.5piddata.1a>-i="&.assearch+code=maxopower".12.5maxopower> 6. << 16) - (lassearch+code=piddata".12.5piddata.1a>-i="&.assearch+code=power_adj".12.5power_adj> 6. << 8);>r170.1a> assearch+code=pid".12.5pid.1a>. assearch+code=ttarge12.12.5ttarge1.1a> = assearch+code=tmax".12.5tmax> 6. - (lassearch+code=piddata".12.5piddata.1a>-i="&.assearch+code=targe1_temp_delta".12.5targe1_temp_delta> 6. << 16);>r171.1a> assearch+code=pid".12.5pid.1a>. assearch+code=tmax".12.5tmax> 6. = lassearch+code=tmax".12.5tmax> 6.;>r172.1a> assearch+code=pid".12.5pid.1a>. assearch+code=min".12.5min> 6. = lassearch+code=main_fan".12.5main_fan> 6.-i="&.assearch+code=ops".12.5ops.1a>-i="&.assearch+code=ge1_min".12.5ge1_min> 6.(lassearch+code=main_fan".12.5main_fan> 6.);>r173.1a> assearch+code=pid".12.5pid.1a>. assearch+code=max".12.5max> 6. = lassearch+code=main_fan".12.5main_fan> 6.-i="&.assearch+code=ops".12.5ops.1a>-i="&.assearch+code=ge1_max".12.5ge1_max> 6.(lassearch+code=main_fan".12.5main_fan> 6.);>r174.1a> "f (lassearch+code=pid".12.5pid.1a>. assearch+code=min".12.5min> 6. < lassearch+code=fmin".12.5fmin> 6.)>r175.1a> assearch+code=pid".12.5pid.1a>. assearch+code=min".12.5min> 6. = lassearch+code=fmin".12.5fmin> 6.;>r176> 6.>r177.1a> assearch+code=wf_cpu_pid_ini1".12.5wf_cpu_pid_ini1> 6.(&lassearch+code=cpu_pid".12.5cpu_pid.1a>[lassearch+code=cpu2.12.5cpu> 6.], &lassearch+code=pid".12.5pid.1a>);>r178.1a> <0;>r179.1a>}>r180.1a>>r181> 6.="+sea void assearch+code=cpu_maxoall_fans".12.5cpu_maxoall_fans> 6.(void)>r182.1a>{>r183.1a> " mclassearch+code=i".12.5"> 6.;>r184> 6.>r185.1a> v2.6.12.5/* We max all CPU fans i6.1ase of a sensor error. We alsondo the.5" >r186> 6. v2.6.12.5 * cpufreq.12.mping now, even "f it's supposedlyndone la1er by the.5" >r187> 6. v2.6.12.5 * generea code anyway, wendo it earlier here to react faster> " >r188> 6. v2.6.12.5 */.5" >r189.1a> "f (lassearch+code=cpufreq_12.mp".12.5cpufreq_12.mp.1a>)>r190.1a> assearch+code=wf_control_se1_max".12.5wf_control_se1_max> 6.(lassearch+code=cpufreq_12.mp".12.5cpufreq_12.mp.1a>);>r191.1a> < (lassearch+code=i".12.5"> 6. = 0; lassearch+code=i".12.5"> 6. < lassearch+code=NR_CPU_FANS".12.5NR_CPU_FANS.1a>; ++lassearch+code=i".12.5"> 6.)>r192.1a> "f (lassearch+code=cpu_fans".12.5cpu_fans.1a>[lassearch+code=i".12.5"> 6.])>r193.1a> assearch+code=wf_control_se1_max".12.5wf_control_se1_max> 6.(lassearch+code=cpupu_fans".12.5cpu_fans.1a>[lassearch+code=i".12.5"> 6.;>r194> 6.}>r195> 6.>r196> 6.="+sea " mclassearch+code=cpu_check_o"+stempns".12.5cpcheck_o"+stemp> 6.(lassearch+code=s32 12.5s32> 6. assearch+code=tempns".12.5 6.)>r197> 6.{>r198.1a> " mclassearch+code=new_="+se".12.5new_="+se> 6. = 0;>r199.1a> assearch+code=s32 12.5s32> 6. assearch+code=t_avgns".12.5 6., lassearch+code=t_old".12.5t_old> 6.;>r200.1a>>r201.1a> v2.6.12.5/* First check < immedi+se o"+stemps */.5" >r202.1a> "f (lassearch+code=tempns".12.5 6. i="&= (lassearch+code=cpu_all_tmax".12.5cpu_all_tmax> 6. +classearch+code=LOW_OVER_IMMEDIATE".12.5LOW_OVER_IMMEDIATE.1a>)) {>r203.1a> lassearch+code=new_="+se".12.5new_="+se> 6. |= lassearch+code=FAILURE_LOW_OVERTEMP".12.5FAILURE_LOW_OVERTEMP.1a>;>r204.1a> "f ((lassearch+code=failure_="+se".12.5failure_="+se.1a> & lassearch+code=FAILURE_LOW_OVERTEMP".12.5FAILURE_LOW_OVERTEMP.1a>) == 0)>r205.1a> lassearch+code=printk".12.5printk> 6.(lassearch+code=KERN_ERR".12.5KERN_ERR> 6. v2.6.12.5iquot;d="post": O"+stemp due to immedi+se CPU"<5" >r206.1a> v2.6.12.5iquot; temperature !\n"<5" );>r207.1a> }>r208.1a> "f (lassearch+code=tempns".12.5 6. i="&= (lassearch+code=cpu_all_tmax".12.5cpu_all_tmax> 6. +classearch+code=HIGH_OVER_IMMEDIATE".12.5HIGH_OVER_IMMEDIATE.1a>)) {>r209.1a> assearch+code=new_="+se".12.5new_="+se> 6. |= lassearch+code=FAILURE_HIGH_OVERTEMP".12.5FAILURE_HIGH_OVERTEMP.1a>;>r210.1a> "f ((lassearch+code=failure_="+se".12.5failure_="+se.1a> & lassearch+code=FAILURE_HIGH_OVERTEMP".12.5FAILURE_HIGH_OVERTEMP.1a>) == 0)>r211.1a> lassearch+code=printk".12.5printk> 6.(lassearch+code=KERN_ERR".12.5KERN_ERR> 6. v2.6.12.5iquot;d="post": Criseaal o"+stemp due to"<5" >r212.1a> v2.6.12.5iquot; immedi+se CPU temperature !\n"<5" );>r213.1a> }>r214> 6.>r215.1a> v2.6.12.5/* We calcula1e a history of max temperatures and use that < the<5" >r216> 6. v2.6.12.5 * o"+stemp managemeno<5" >r217> 6. v2.6.12.5 */.5" >r218.1a> assearch+code=t_old".12.5t_old> 6. = lassearch+code=cpu_.4cpu_.4[lassearch+code=cpu_.4cpu_.4];>r219.1a> assearch+code=cpu_.4cpu_.4[lassearch+code=cpu_.4cpu_.4] = lassearch+code=tempns".12.5 6.;>r220.1a> assearch+code=cpu_.4cpu_.4 = (lassearch+code=cpu_.4cpu_.4 + 1) %"lassearch+code=CPU_TEMP_HIST_SIZE".12.5CPU_TEMP_HIST_SIZE.1a>;>r221.1a> assearch+code=cpu_.4cpu_.4 -= lassearch+code=t_old".12.5t_old> 6.;>r222.1a> assearch+code=cpu_.4cpu_.4 += lassearch+code=tempns".12.5 6.;>r223.1a> assearch+code=t_avgns".12.5 6. = lassearch+code=cpu_.4cpu_.4 / assearch+code=CPU_TEMP_HIST_SIZE".12.5CPU_TEMP_HIST_SIZE.1a>;>r224> 6.>r225.1a> assearch+code=DBG_LOTS".12.5DBG_LOTS> 6.(lv2.6.12.5iquot;t_avg = %d.%03d (out: %d.%03d, in: %d.%03d)\n"<5" ,>r226.1a> lassearch+code=FIX32TOPRINT".12.5FIX32TOPRINT> 6.(lassearch+code=t_avgns".12.5 6.), lassearch+code=FIX32TOPRINT".12.5FIX32TOPRINT> 6.(lassearch+code=t_old".12.5t_old> 6.), lassearch+code=FIX32TOPRINT".12.5FIX32TOPRINT> 6.(lassearch+code=tempns".12.5 6.));>r227> 6.>r228.1a> v2.6.12.5/* Now check < a"+sage o"+stemps */.5" >r229.1a> "f (lassearch+code=t_avgns".12.5 6. i="&= (lassearch+code=cpu_all_tmax".12.5cpu_all_tmax> 6. +classearch+code=LOW_OVER_AVERAGE".12.5LOW_OVER_AVERAGE.1a>)) {>r230.1a> assearch+code=new_="+se".12.5new_="+se> 6. |= lassearch+code=FAILURE_LOW_OVERTEMP".12.5FAILURE_LOW_OVERTEMP.1a>;>r231.1a> "f ((lassearch+code=failure_="+se".12.5failure_="+se.1a> & lassearch+code=FAILURE_LOW_OVERTEMP".12.5FAILURE_LOW_OVERTEMP.1a>) == 0)>r232.1a> lassearch+code=printk".12.5printk> 6.(lassearch+code=KERN_ERR".12.5KERN_ERR> 6. v2.6.12.5iquot;d="post": O"+stemp due to a"+sage CPU"<5" >r233.1a> v2.6.12.5iquot; temperature !\n"<5" );>r234.1a> }>r235.1a> "f (lassearch+code=t_avgns".12.5 6. i="&= (lassearch+code=cpu_all_tmax".12.5cpu_all_tmax> 6. +classearch+code=HIGH_OVER_AVERAGE".12.5HIGH_OVER_AVERAGE.1a>)) {>r236.1a> assearch+code=new_="+se".12.5new_="+se> 6. |= lassearch+code=FAILURE_HIGH_OVERTEMP".12.5FAILURE_HIGH_OVERTEMP.1a>;>r237.1a> "f ((lassearch+code=failure_="+se".12.5failure_="+se.1a> & lassearch+code=FAILURE_HIGH_OVERTEMP".12.5FAILURE_HIGH_OVERTEMP.1a>) == 0)>r238.1a> lassearch+code=printk".12.5printk> 6.(lassearch+code=KERN_ERR".12.5KERN_ERR> 6. v2.6.12.5iquot;d="post": Criseaal o"+stemp due to"<5" >r239.1a> v2.6.12.5iquot; a"+sage CPU temperature !\n"<5" );>r240.1a> }>r241> 6.>r242.1a> v2.6.12.5/* Now handle o"+stemp condi12.cs. We don't currenoly use the d="post"<5" >r243> 6. v2.6.12.5 * o"+stemp handling core as it's not fully suited to the needs of those<5" >r244> 6. v2.6.12.5 * new rchhine. This d=ll be fixed la1eri.5" >r245> 6. v2.6.12.5 */.5" >r246.1a> "f (lassearch+code=new_="+se".12.5new_="+se> 6.) {>r247.1a> v2.6.12.5/* High o"+stemp -i="& immedi+se shutdown */.5" >r248.1a> "f (lassearch+code=new_="+se".12.5new_="+se> 6. & lassearch+code=FAILURE_HIGH_OVERTEMP".12.5FAILURE_HIGH_OVERTEMP.1a>)>r249.1a> lassearch+code=rchhineopower_off".12.5rchhineopower_off> 6.();>r250.1a> "f ((lassearch+code=failure_="+se".12.5failure_="+se.1a> & lassearch+code=new_="+se".12.5new_="+se> 6.) != lassearch+code=new_="+se".12.5new_="+se> 6.)>r251.1a> lassearch+code=cpu_maxoall_fans".12.5cpu_maxoall_fans> 6.();>r252.1a> lassearch+code=failure_="+se".12.5failure_="+se.1a> |= lassearch+code=new_="+se".12.5new_="+se> 6.;>r253.1a> } else "f ((lassearch+code=failure_="+se".12.5failure_="+se.1a> & lassearch+code=FAILURE_LOW_OVERTEMP".12.5FAILURE_LOW_OVERTEMP.1a>) &&>r254.1a> (lassearch+code=tempns".12.5 6. ilt; (lassearch+code=cpu_all_tmax".12.5cpu_all_tmax> 6. +classearch+code=LOW_OVER_CLEAR".12.5LOW_OVER_CLEAR.1a>))) {>r255.1a> assearch+code=printk".12.5printk> 6.(lassearch+code=KERN_ERR".12.5KERN_ERR> 6. v2.6.12.5iquot;d="post": O"+stemp condi12.c.12eared !\n"<5" );>r256.1a> assearch+code=failure_="+se".12.5failure_="+se.1a> &= ~lassearch+code=FAILURE_LOW_OVERTEMP".12.5FAILURE_LOW_OVERTEMP.1a>;>r257.1a> }>r258> 6.>r259.1a> failure_="+se.1a> & (lassearch+code=FAILURE_LOW_OVERTEMP".12.5FAILURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_HIGH_OVERTEMP".12.5FAILURE_HIGH_OVERTEMP.1a>);>r260> 6.}>r261> 6.>r262> 6.="+sea void assearch+code=cpu_fans_seak".12.5cpu_fans_seak> 6.(void)>r263.1a>{>r264.1a> " mclassearch+code=err".12.5err.1a>, lassearch+code=cpu2.12.5cpu> 6.;>r265.1a> assearch+code=s32 12.5s32> 6. assearch+code=gre+sest_delta".12.5gre+sest_delta> 6. = 0;>r266.1a> assearch+code=s32 12.5s32> 6. assearch+code=tempns".12.5 6., lassearch+code=power".12.5power> 6., lassearch+code=t_max".12.5t_max> 6. = 0;>r267.1a> " mclassearch+code=e=i".12.5"> , lassearch+code=t".12.5t>"> , lassearch+code=targe12.12.5targe1.1a> = 0;>r268.1a> struct lassearch+code=wf_sensor2.12.5wf_sensor.1a> *lassearch+code=sr".12.5se=smu_sdbp_cpupiddata".12.5smu_sdbp_cpupidd269 id L2 "f (lassearch+code=new_="+se".12.5>r174.1a> mi#L260 id L260 12.5r260> 6.ne nam k0 r181> 6e nam L260 >+sear1h" me6t>"> , lassearch+co.5 = assearch+code=tmax".12.5r260> 6.}> 6. =2lassearch+code=tmax".12.2tmax> 6.;>r139.1a> DEBU9>FAILURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_HI(lassearc2+code=main_fan".12.5m2in_fan> 6.);>r128.1#L191 id L191 12./opine nam L128 >r128.1a191.1a> < .5r161.1a> ; lassearch+code=i"5> 6.="+sea " mclassearch+x".12.5cpu_all_tmax> 6. +classearch+code(lassearc2+code=main_fan".12.5m27 &&>fmin> 6.)>r268.1a> mi#L145 id L145 d t" on6 12.5wf_cpu_pid_ini1URE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_HI(gre+sest_lassearch+code=fmin".12.2r268.1a> id.1a>. assearch+code=max".12.5max> 6. = lassearch+code=mainvaluearch" method="pmainvalue5 id 5 12.5r268.1a> > 6.(&lassearch+co.12.5t_old> 6.), laURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_HI(., lasseaid L176 12.5;>cpu_all_tmax> 6. +classearch+code( lassearc;lassearch+code=pid".12.2) == 0)>KERN_ERR> 6. v2.6.12.5iquot;d=8 12.5r178.12> 27ERTEMP.1a>)>r139.1a> asse lassearch+code=printk".12.52.5KERN_ERR> 6. v2.6.12.5mi#L179 2d L179 12.5 6.();> 6.(lv2.6.12.51 id L191 12./opine nam L128 >r128.51 id L191 12." method="post" onsubmi#L+.ear">KERN_ERR> 6. v2.6.12.5iquot;d=bmi#L180 2id L180 12.5r25VERTEMP"SENSO L255 >r255.1a> VERTEMP"SENSO "> , lassearch+co.5 = assearch+code=tmaxmaxoall_f2ns".12.5cpu_max2all_f28.1a>) == 0)>r251.1a> lassearch+code=cmi#L182 2d L182 12.5 lassearch+code=cmlassearc2 " mclassearch+code=i".22.5);>r194> 6.}>r247.1a> v2.6.12.5 6.) {>s32> 6. assearch+code=tempns".12.5r267.1a> 12.5t_old> 6.), laURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_HI anyway, 2endo it earlier here to 2eact 28a> }>r1882 6. v2.6.12.5)) {>)>r268.1a> mi#L145 id L145 d t" on assearch+code=s32 d t" on asse cpu_pid_ini1".12.5wf_cpu_pid_ini1URE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_HI+code=cpu2req_12.mp".12.52pufre29_="+se> 6.)>r268.1a> id.1a>. assearch+code=max".12.5max> 6. = lassearch+code=mainvaluearch" method="pmainvalue5 id 5 12.5r268.1a> > 6.(&lassearch+co assearch+code=s32 12.5 | lassearch+code=FAILURE_HICPU_FANS.2a>; ++lassearch+code=i".22.5"> 6.)>cpu_all_tmax> 6. +classearch+code">cpu_fan2.1a>[lassearch+code=i".12.5"> 6.])>KERN_ERR> 6. v2.6.12.5iquot;d=r">cpu_fa2s.1a>[lassearch+code=i".22.5r139.1a> asse lassearch+code=printk".12.52.5KERN_ERR> 6. v2.6.12.5mi#L19#L124 idsubmi#L94 id L94 212.5129.1a>) == 0)> 6.(lv2.6.12.51 id L191 12./opine nam L128 >r128.51 id L191 12." method="post" onsubmi#L+.ear">KERN_ERR> 6. v2.6.12.5iquot;d=bmi#L195 2id L195 12.5r25VERTEMP"SENSO L255 >r255.1a> VERTEMP"SENSO "> , lassearch+co.5 = assearch+code=tmax">s32> 6.2 assearch+code=tempns".12.5 6.) {>r251.1a> lassearch+code=cmi#L197 2d L197 12.5) == 0)> lassearch+code=cearch+cod2=new_="+se".12.5)) {>);> 6., l3ssearch+code=t_old".12.53/o.ea3">t_old> 6.;>r247.1a> v2.6.12.5/* F3rst check < immedi+se 3"+ste30fans> 6.();>t>"> ,>r22pine nam L177 >r177.1a> assearch+code=wf_cpu_pid_ini1".12.5wf_cpu_pid_ini1r251.1a> lassearch+code=3ER_IMMEDI3TE".12.5LOW_OVE3_IMME3IATE.1a>)) {>t>"> ,>r266.1a> assearch+code=s32 12.5s32> 6. assea12.5t_old> 6.), laURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H3_LOW_OVER3EMP".12.5FAILUR3_LOW_30T_SIZE.1a>;>FAILURE_LOW_3VERTE3P.1a>) == 0)> t".12.5t>"> ,6. = lassearch+code=2.5r2.5 < 5 12.5r265.1a> as+x".12.5cpu_all_tmax> 6. +classearch+cod3;d="post"3 O"+stemp due to immedi+3e CPU3quot;<5" >r265.1a> asseailure_="+se.1a> t".12.5t>"> ,6. = lassearch+code=2.5r2.5 | lassearch+code=FAILURE_H3_7="post"3 assearch+code=tempns".13!\n&q30"+se> 6.) {> | lassearch+code=FAILURE_H3_8="post"3 L197 12.5r20730.1a>) == 0)>);>)) {>DBG.3d T=DBG.3d 6.(lv2.6.12.5iquot;t_avg = %d.%03d (out:3IGH_OVERT3MP".12.5FAILURE3HIGH_3VERTEMP.1a>;>r128.51 id L191 12.OPRINT".12.5FIX32TOPRINT> 6.(lassearch+code=t_old" assearch+code=s32 12.5FIX32TOPRINT> 6.(lassearch+code=t_old".12.5t_old> 6.), lassearch+code=FIX32TOPRINT".12.5FIX32TOP3ERTEMP".13.5FAILURE_HIGH_3VERTE3P.1a>) == 0)><.1a>);>tmax> 6.;>, .5r225.1a> S> 6.(lv2.6.12.51 id L191 12. " mclassearch+code=e=i".12earch+code=FIX32TOPRINT".12.5FIX32TOPRINT> 6.(lassearch+code=t_avgns"ch+code=tempns".12.5FIX32TOP3ER_IMMEDI3mmedi+se CPU temperature3!\n&q3ot;<5"earch+code=FIX32TOPRINT".12.5FIX32TOP3ELOW_OVER3 12.5r21331p */.5" >r247.1a> v2.6.12.5r214> 6.>r262> 6.="+sea void assearch+co3story of 3ax temperatures and use 3hat 31t;<5" );>FIX32TOP3E7="post"3meno"> * o"+stem3 mana316 >r176> 6.>FIX32TOP3E8="post"3 6. v2.6.12.5r128.1#L191 id L191 12./opine nam L128 >r128.1a191.1a> < .5r161.1a> ; lassearch+code=i"5> 6.="+sea " mclassearch+earch+code=FIX32TOPRINT".12.5FIX32TOP3E9="post"3u_.4)) {> assearch+code=wf_cpu_pid_ini1".12.5wf_cpu_pid_ini1mi#L171 id L171 " mclassearch+code=e=i".12.5FIX32TOP3pt.1a>] =3lassearch+code=tempns".13.5t_old> 6.;>CPU_3EMP_H320 >r200.1a>>r228.1a> v2.6.12.5 -= l3ssearch+code=t_old".12.53/o.ea3">t_old> 6.;>r196>s"ch+code=tempns".12.5r228.1a> v2.6.12.5)) {> lassearch+code=3_TEMP_HIS3_SIZE".12.5CPU_3EMP_H3ST_SIZE.1a>;>r224> 6.>r228.1a> v2.6.12.5r191.1a> < (lassearch+code=i".12.5"> 6. = 0; lassearch+code=i".12.5"> 6. &lx".12.5cpu_all_tmax> 6. +classearch+cod3INT> 6.(l3ssearch+code=tempns".12.3 6.) {>s32> 6. assew_="+se".12.5>r174.1a> .5wf_control_r251.1a> lassearch+code=3_8="post"3id L227 12.5r174.1a> .55FIX32TOP3commeno">3* Now check < a"+sage 3"+ste32ERTEMP.1a>)> lassearch+code=3W_OVER_AV3RAGE".12.5LOW_O3ER_AV3RAGE.1a>)) {>r174.1a> id.1a>. assearch+code=max".12.5max> 6. = lassearch+code=sainvaluearch" method="psainvalue5 id 5 12.5r174.1a> L267 >r267.1a> " mclassearch+code=e=i".12.*wf_control_ / 100ssearch+code=FIX32TOPRINT".12.5FIX32TOP3_LOW_OVER3EMP".12.5FAILUR3_LOW_3VERTEMP.1a>;>cpu_all_tmax> 6. +classearch+cod3VERTEMP".32.5FAILURE_LOW_3VERTE3P.1a>) == 0)>r139.1a> asse lassearch+code=printk".12.5KERN_ERR> 6. v2.6.12.5 6.(lv2.6.12.51 id L191 12./_="+se".12.5>r174.1a> id.1a>. assearch+codo a"e nam L161 >r a"128.51 id L191 12." method="post" onsubmi#L+.ear">KERN_ERR> 6. v2.6.12.5iquot;d3.12.5iquot; temperature3!\n&q33 &&>r25VERTEMP"> 6L255 >r255.1a> VERTEMP"> 6".12search+code=FIX32TOPRINT".12.5FIX32TOP3 id L2343 12.5r23433.1a>) == 0)>FIX32TOP3 tory of 3AGE".12.5HIGH_O3ER_AV3RAGE.1a>)) {>);>FAILURE3HIGH_33ERTEMP.1a>;>FAILURE_HIGH_3VERTE3P.1a>)assearchon="+search" method="post" onsubmi#L2573Eommeno">3ost": Criseaal o"+stemp 3ue to3quot;iquot3 a"+sage CPU temperature3!\n&q3ot;<5"assearchon="+search" methBackside/U4" 2 12.5r228.1a> v2.6.12.5r24031a> 61> 6.> L260 >+sear1h" me6cpu_all_tmax> 6. +classearch+cod3bmi#L241 3id L241 12.5r241> 6.>r223.1a>_tmerv >r241> 6.>= 55iquot;t_avg = %d.%03d (out:312.cs. We3don't currenoly use 3he d=343 >r241> 6.>r241> = 25iquot;t_avg = %d.%03d (out:3112.5r241> 6.> asseargdGE.1a>)) {>r191r191.205iquot;t_avg = %d.%03d (out:31id L2343w rchhine. This d=ll be 3ixed 345 >r241> 6.>)) {>r191r191.205iquot;t_avg = %d.%03d (out:31tory of 3 6. v2.6.12.5)) {>iquot;t_avg = %d.%03d (out:31GH_OVERT3de=new_="+se".12.5new3="+se> 6.) {>r191r191.165iquot;t_avg = %d.%03d (out:31RTEMP".13o"+stemp -i="& immedi+se3shutd3wn */.5" >r241> 6.>= 15iquot;t_avg = %d.%03d (out:31ommeno">3MP".12.5FAILURE3HIGH_3VERTEM}search+code=FIX32TOPRINT".12.5FIX32TOP3hineopowe3_off".12.5rchhi3eopow35>t_old> 6.;>n35a> 61> 6.>r262> 6.="+sea void assearch+co3pu_maxoal3_fans".12.5cpu_3axoal3_fans>".12.5cpu_all_tmax> 6. +classearch+cod3lassearch3code=new_="+se".12.5n35artemp> 6.;>FIX32TOP3h12.5FAILURE_LOW_OVERT3MP.1a3) &&> assearspee>266 search+code=FIX32TOPRINT".12.5FIX32TOP3hid L2343CLEAR".12.5LOW_3VER_C3EAR.1a>))) {>FIX32TOP3htory of 3+stemp condi12.c.12eared3!\n&q3ot;<5"earch+code=FIX32TOPRINT".12.5FIX32TOP3hGH_OVERT3EMP".12.5FAILUR3_LOW_3VERTEMP.1a>;>FIX32TOP3 id L2573 12.5r25735n */.5" > lassearch+code=3bmi#L258 3id L258 12.5cpu_all_tmax> 6. +classearch+cod3GH_OVERTE3P".12.5FAILURE_3IGH_O36AGE.1a>)) {> 6.)>r139.1a> INFOasse lassearch+code=printk".12.5 arted.ERN_ERR".12.5KERN_ERR> 6. v2.6.12.5iquot;d3bmi#L261 3id L261 12.5 6.();>. assearch+code=max".12.5max> 6. = lassearch+code=mainmi t" onsubmi#L262mainmi 12.5KERN_ERR> 6. v2.6.12.5iquot;d3bassearch3_seak".12.5cpu_3ans_s36ATE.1a>)) {>. assearch+code=max".12.5max> 6. = lassearch+code=mainmt 12.5KERN_ERR> 6. v2.6.12.5iquot;d3b12.5+sear1h" me6rbacksidempa> assearbacksidempa>128.512pine nam L177 >rbacksidemparamsearch+code=pidbacksidemparammi#Lo.ear">KERN_ERR> 6. v2.6.12.5iquot;d3bid L2343, lassearch+code=cpu2.1235) == 0)>= 1.ear">KERN_ERR> 6. v2.6.12.5iquot;d3btory of 3delta".12.5gre+3est_d3lta> 6. = 0;>t36ERTEMP.1a>;>ag91.re_="+se.1a> & lassearch+code=FAILURE_HIGH_O3, lassear3h+code=targe12.12.5ta36n */.5" > lassearch+code=3f_sensor.3a> *lassearch+code=sr".13.5];>= nam L177 >rbacksidempa> assearbacksidempa>128.mi#L171 id L17paramsearch+code=pidparammi#Lmi#L171 id L17_tmerv L223 >r223.1a>_tmerv >r2r251.1a> lassearch+code=3/opine n3m L260 >r260> 6.ne na3 k0 37>t_old> 6.;>;>. assearch+code=max".12.5max> 6. = lassearch+code=mainvaluearch" method="pmainvalue5 id 5 12.5 6.(&lassearch+co.12.5t_old> 6.), laURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H3max> 6. =3lassearch+code=tmax".12.3t_old> 6.;>cpu_all_tmax> 6. +classearch+cod3(lassearc3+code=main_fan".12.5m37ATE.1a>)) {>r139.1a> asse lassearch+code=printk".12.5 6.(lv2.6.12.5.12.5cpu_all_tmax> 6. +classearch+cod3(12.5m37 &&>;> | lassearch+code=FAILURE_H3mid L2343lassearch+code=fmin".12.3fmin> 6.)>r25VERTEMP"SENSO L255 >r255.1a> VERTEMP"SENSO "> , lassearch+co.5 = assearch+code=tma3(gre+sest3lassearch+code=fmin".12.3KERN_ERR> 6. v2.6.12.5iquot;d3(., lasse3id L176 12.5;> lassearch+code=3( lassear3;lassearch+code=pid".12.3) == 0)>r178.13> 37/t_pt.1a>];> assearspee>266 mi#L145 id L145 ostsubmrussearch+code=pidostsubmrus5 id2pine nam L177 >rbacksidempa> assearbacksidempa>128.51mp;lassearch+co.12.5t_old> 6.), laURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H3mi#L179 3d L179 12.5 6.();> 6.=DBG.3d spee>= 6.(lv2.6.12.5.12.5cpu_all_tmax> 6. +classearch+cod3bmi#L180 3id L180 12.5FIX32TOPRINT> 6.(lassearch+code=t_old".12.5t_old> 6.), la51mp;lassearch+cospee> assearspee>266 aURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H3max> 6. =3ns".12.5cpu_max3all_f38.1a>)RE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H3mlassearc3d L182 12.5 6.;>. assearch+code=max".12.5max> 6. = lassearch+code=sainvaluearch" method="psainvalue5 id 5 12.5 assearspee>266 aURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H3m12.5cpu_all_tmax> 6. +classearch+cod3bmi#L184 3id L184 12.5))) {>r139.1a> asse lassearch+code=printk".12.5 6.(lv2.6.12.51 id L191 12." method="post" onsubmi#LaURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H3fans i6.13se of a sensor error. We3alson38t;<5" );>r25VERTEMP"> 6L255 >r255.1a> VERTEMP"> 6".12search+code=FIX32TOPRINT".12.5FIX32TOP3 even "f 3t's supposedlyndone 3a1er 38ERTEMP.1a>;>)assearchon="+search" method="post" onsubmi#L2573188 >r1883 6. v2.6.12.5r228.1a> v2.6.12.53pufre39a> 61> 6.> L260 >+sear1h" me6cpu_all_tmax> 6. +classearch+cod3CPU_FANS.3a>; ++lassearch+code=i".32.5r241> 6.>r223.1a>_tmerv >r241> 6.>= 55iquot;t_avg = %d.%03d (out:3">cpu_fan3.1a>[lassearch+code=i".13.5r241> 6.>r241> = 25iquot;t_avg = %d.%03d (out:3r">cpu_fa3s.1a>[lassearch+code=i".32.5r241> 6.> asseargdGE.1a>)) {>r191r191.205iquot;t_avg = %d.%03d (out:3mi#L19#L134 idsubmi#L94 id L94 312.51395 >r241> 6.>)) {>r191r191.205iquot;t_avg = %d.%03d (out:3bmi#L195 3id L195 12.5)) {>iquot;t_avg = %d.%03d (out:3">s32> 6.3 assearch+code=tempns".13.5 6.) {>r191r191.165iquot;t_avg = %d.%03d (out:3mi#L197 3d L197 12.5r241> 6.>= 15iquot;t_avg = %d.%03d (out:3earch+cod3=new_="+se".12.5FIX32TOP4vg> 6., l4ssearch+code=t_old".12.54/o.ea4">t_old> 6.;> 61> 6.>r262> 6.="+sea void assearch+co4eno">/* F4rst check < immedi+se 4"+ste40fans>".12.5cpu_all_tmax> 6. +classearch+cod4ER_IMMEDI4TE".12.5LOW_OVE4_IMME40artemp> 6.;>FIX32TOP4_LOW_OVER4EMP".12.5FAILUR4_LOW_40 &&> assearspee>266 search+code=FIX32TOPRINT".12.5FIX32TOP4VERTEMP".42.5FAILURE_LOW_4VERTE40AR.1a>))) {>FIX32TOP4;d="post"4 O"+stemp due to immedi+4e CPU40t;<5"earch+code=FIX32TOPRINT".12.5FIX32TOP4_7="post"4 assearch+code=tempns".14!\n&q40ERTEMP.1a>;>FIX32TOP4_8="post"4 L197 12.5r20740.1a>) == 0)> lassearch+code=4v9="post"4 new_="+se".12.5cpu_all_tmax> 6. +classearch+cod4IGH_OVERT4MP".12.5FAILURE4HIGH_4VERTEMP.1a>;>FAILURE_HIGH_4VERTE41_="+se> 6.)>r139.1a> INFOasse lassearch+code=printk".12.5 arted.ERN_ERR".12.5KERN_ERR> 6. v2.6.12.5iquot;d4iquot;d="4ost": Criseaal o"+stemp 4ue to41fans> 6.();>. assearch+code=max".12.5max> 6. = lassearch+code=mainmi t" onsubmi#L262mainmi 12.5KERN_ERR> 6. v2.6.12.5iquot;d4iR_IMMEDI4mmedi+se CPU temperature4!\n&q41ATE.1a>)) {>. assearch+code=max".12.5max> 6. = lassearch+code=mainmt 12.5KERN_ERR> 6. v2.6.12.5iquot;d4iLOW_OVER4 12.5r21341 &&>+sear1h" me6r L22_bay_pa> assear L22_bay_pa>arch> 6.(&lassearch+co L22_bay_prmsearch+code=pid L22_bay_prmmi#Lo.ear">KERN_ERR> 6. v2.6.12.5iquot;d4iERTEMP".4id L214 12.5))) {>= 1.ear">KERN_ERR> 6. v2.6.12.5iquot;d4story of 4ax temperatures and use 4hat 41ta> 6. = 0;> * o"+stem4 mana41ERTEMP.1a>;>ag91.re_="+se.1a> & lassearch+code=FAILURE_HIGH_O4E8="post"4 6. v2.6.12.5) == 0)> lassearch+code=4E9="post"4u_.4];>= nam L177 >r L22_bay_pa> assear L22_bay_pa>archmi#L171 id L17paramsearch+code=pidparammi#Lmi#L171 id L17_tmerv L223 >r223.1a>_tmerv >r2r251.1a> lassearch+code=4pt.1a>] =4lassearch+code=tempns".14.5t_old> 6.;>CPU_4EMP_H42T_SIZE.1a>;>. assearch+code=max".12.5max> 6. = lassearch+code=mainvaluearch" method="pmainvalue5 id 5 12.5 6.(&lassearch+co.12.5t_old> 6.), laURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H4.1a> -= l4ssearch+code=t_old".12.54/o.ea4">t_old> 6.;>cpu_all_tmax> 6. +classearch+cod4.R_IMMEDI4lassearch+code=tempns".14.5)) {>r139.1a> asse lassearch+code=printk".12.5KERN_ERR> 6. v2.6.12.5CPU_4EMP_H42 &&>;> 6.(lv2.6.12.51 id L191 12." method="post" onsubmi#LaURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H4bmi#L224 4id L224 12.5fmin> 6.)>r25VERTEMP"SENSO L255 >r255.1a> VERTEMP"SENSO "> , lassearch+co.5 = assearch+code=tma4.tory of 47;03d, in: %d.%04d)\n&42t;<5" );>KERN_ERR> 6. v2.6.12.5iquot;d4INT> 6.(l4ssearch+code=tempns".12.4 6.) {> lassearch+code=4_8="post"4id L227 12.5) == 0)>4* Now check < a"+sage 4"+ste42/t_pt.1a>];> assearspee>266 mi#L145 id L145 ostsubmrussearch+code=pidostsubmrus5 id2pine nam L177 >r L22_bay_pa> assear L22_bay_pa>arch> mp;lassearch+co.12.5t_old> 6.), laURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H4W_OVER_AV4RAGE".12.5LOW_O4ER_AV43_off> 6.();> 6.=DBG.3d spee>= 6.(lv2.6.12.5.12.5cpu_all_tmax> 6. +classearch+cod4_LOW_OVER4EMP".12.5FAILUR4_LOW_4VERTEMP.1a>;>r25VPRINT".12.5FIX32TOPRINT> 6.(lassearch+code=t_old".12.5t_old> 6.), la51mp;lassearch+cospee> assearspee>266 aURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H4VERTEMP".42.5FAILURE_LOW_4VERTE43.1a>)RE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H4ot;d="pos4": O"+stemp due to a"+sa4e CPU43artemp> 6.;>. assearch+code=max".12.5max> 6. = lassearch+code=sainvaluearch" method="psainvalue5 id 5 12.5 assearspee>266 aURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H4VTEMP_HIS4ring">iquot; temperature4!\n&q43 &&>cpu_all_tmax> 6. +classearch+cod4 id L2344 12.5r23443.1a>) == 0)>r139.1a> asse lassearch+code=printk".12.5 6.(lv2.6.12.51 id L191 12." method="post" onsubmi#LaURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H4 tory of 4AGE".12.5HIGH_O4ER_AV4RAGE.1a>)) {>r25VERTEMP"> 6L255 >r255.1a> VERTEMP"> 6".12search+code=FIX32TOPRINT".12.5FIX32TOP4IGH_OVERT4MP".12.5FAILURE4HIGH_43ERTEMP.1a>;>FAILURE_HIGH_4VERTE4P.1a>)assearchon="+search" method="post" onsubmi#L2574Eommeno">4ost": Criseaal o"+stemp 4ue to4quot;iquot4 a"+sage CPU temperature4!\n&q4ot;<5"assearchon="+search" methPCI slots area" 2 12.5r228.1a> v2.6.12.5r24041a> assearchon="+search" methThis makes theo 2spee> proportionallasstheo12.5 12.5r228.1a> v2.6.12.5r261> 6.> L260 >+sear1h" me6cpu_all_tmax> 6. +classearch+cod412.cs. We4don't currenoly use 4he d=443 >r241> 6.>r223.1a>_tmerv >r241> 6.>= 15iquot;t_avg = %d.%03d (out:4112.5r241> 6.>r241> = 25iquot;t_avg = %d.%03d (out:41id L2344w rchhine. This d=ll be 4ixed 445 >r241> 6.> asseargdGE.1a>)) {>iquot;t_avg = %d.%03d (out:41tory of 4 6. v2.6.12.5)) {>iquot;t_avg = %d.%03d (out:41GH_OVERT4de=new_="+se".12.5new4="+se> 6.) {>)) {>iquot;t_avg = %d.%03d (out:41RTEMP".14o"+stemp -i="& immedi+se4shutd4wn */.5" >iquot;t_avg = %d.%03d (out:41ommeno">4MP".12.5FAILURE4HIGH_449 */.5" >iquot;t_avg = %d.%03d (out:4hineopowe4_off".12.5rchhi4eopow450 */.5" >iquot;t_avg = %d.%03d (out:4hid L2404code=new_="+se".12.5n45a> }search+code=FIX32TOPRINT".12.5FIX32TOP4pu_maxoal4_fans".12.5cpu_4axoal45.1a>)RE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H4lassearch4code=new_="+se".12.5n45artem61> 6.>r262> 6.="+sea void assearch+co4h12.5FAILURE_LOW_OVERT4MP.1a4) &".12.5cpu_all_tmax> 6. +classearch+cod4hid L2344CLEAR".12.5LOW_4VER_C4EAR.1a>))) {>FIX32TOP4ptory of 4+stemp condi12.c.12eared4!\n&q45 */.5" > assearspee>266 search+code=FIX32TOPRINT".12.5FIX32TOP4hGH_OVERT4EMP".12.5FAILUR4_LOW_4VERTEMP.1a>;>FIX32TOP4 id L2574 12.5r25745n */.earch+code=FIX32TOPRINT".12.5FIX32TOP4 ommeno">4id L258 12.5FIX32TOP4GH_OVERTE4P".12.5FAILURE_4IGH_O46AGE.1a>)) {> lassearch+code=4mi#L260 4d L260 12.5cpu_all_tmax> 6. +classearch+cod4bmi#L261 4id L261 12.5 6.();>cpu_4ans_s46ATE.1a>)) {>r139.1a> INFOasse lassearch+code=printk".12.5 arted.ERN_ERR".12.5KERN_ERR> 6. v2.6.12.5iquot;d4b12.5+sear1h" me6rslotsmpa> assearslotsmpa>arch> 6.(&lassearch+coslotsmparamsearch+code=pidslotsmparammi#Lo.ear">KERN_ERR> 6. v2.6.12.5iquot;d4bid L2344, lassearch+code=cpu2.1245) == 0)>= 1.ear">KERN_ERR> 6. v2.6.12.5iquot;d4btory of 4delta".12.5gre+4est_d4lta> 6. = 0;>t46ERTEMssearchon="+search" method="post" onsubmi#L25746id L2574h+code=targe12.12.5ta46n */.5" >. assearch+code=max".12.5max> 6. = lassearch+code=mainvaluearch" method="pmainvalue5 id 5 12.5 6.(&lassearch+co assearch+code=s32 12.5KERN_ERR> 6. v2.6.12.5iquot;d4bommeno">4a> *lassearch+code=sr".14.5cpu_all_tmax> 6. +classearch+cod4/opine n4m L260 >r260> 6.ne na4 k0 47AGE.1a>)) {>r139.1a> asse lassearch+code=printk".12.5 6.(lv2.6.12.5.12.5cpu_all_tmax> 6. +classearch+cod4".12.5;>KERN_ERR> 6. v2.6.12.5iquot;d4max> 6. =4lassearch+code=tmax".12.4 6.();>r25VERTEMP"SENSO L255 >r255.1a> VERTEMP"SENSO "> , lassearch+co.5 = assearch+code=tma4(lassearc4+code=main_fan".12.5m47ATE.1a>)) {>KERN_ERR> 6. v2.6.12.5iquot;d4m12.5m47 &&> lassearch+code=4mid L2344lassearch+code=fmin".12.4fmin> 6.)> assearspee>266 mi#L145 id L145 ostsubmrussearch+code=pidostsubmrus5 id2pine nam L177 >rslotsmpa> assearslotsmpa>arch> mp;lassearch+co assearch+code=s32 12.5KERN_ERR> 6. v2.6.12.5iquot;d4(., lasse4id L176 12.5r176> 6.>DBG.3d spee>= 6.(lv2.6.12.5.12.5cpu_all_tmax> 6. +classearch+cod4( lassear4;lassearch+code=pid".12.4) == 0)>FIX32TOPRINT> 6.(lassearch+code=t_old" assearch+code=s32 12.5 assearspee>266 aURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H48 12.5r178.14> 47uot; 6.();>. assearch+code=max".12.5max> 6. = lassearch+code=sainvaluearch" method="psainvalue5 id 5 12.5 assearspee>266 aURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H4bmi#L180 4id L180 12.5cpu_all_tmax> 6. +classearch+cod4max> 6. =4ns".12.5cpu_max4all_f48fans> 6.();>r139.1a> asse lassearch+code=printk".12.5 6.(lv2.6.12.51 id L191 12." method="post" onsubmi#LaURE_LOW_OVERTEMP.1a> | lassearch+code=FAILURE_H4mlassearc4d L182 12.5)) {>r25VERTEMP"> 6L255 >r255.1a> VERTEMP"> 6".12search+code=FIX32TOPRINT".12.5FIX32TOP4m12.5FIX32TOP4 even "f 4t's supposedlyndone 4a1er 48ERTEM61> 6.>r262> 6.="+sea void assearch+co4 anyway, 4endo it earlier here to 4eact 48.1a>)".12.5cpu_all_tmax> 6. +classearch+cod4m 12.5wf_controlsearch+code=FIX32TOPRINT".12.5FIX32TOP4h+code=cp4freq_12.mp".12.5t_old> 6.;>4pufre49_="+se> 6.)>FIX32TOP4CPU_FANS.4a>; ++lassearch+code=i".42.5 6.();>FIX32TOP4hlassearc4.1a>[lassearch+code=i".14.5r241> 6.>r191.1a> < (lassearch+code=i".12.5"> 6. = 0; lassearch+code=i".12.5"> 6. &learch+code=FIX32TOPRINT".12.5FIX32TOP4h12.5[lassearch+code=i".42.5wf_control_learch+code=FIX32TOPRINT".12.5FIX32TOP4hmi#L184 44 idsubmi#L94 id L94 412.5149.1a>) == 0)>wf_control_lsearch+code=FIX32TOPRINT".12.5FIX32TOP4hgre+sest4id L195 12.5FIX32TOP4heven "f 4 assearch+code=tempns".14.5 6.) {>KERN_ERR> 6. v2.6.12.5iquot;d4mi#L197 4d L197 12.5KERN_ERR> 6. v2.6.12.5iquot;d4m 12.5 6.) {>KERN_ERR> 6. v2.6.12.5iquot;d5vg> 6., l5ssearch+code=t_old".12.55/o.ea500 */.5" >KERN_ERR> 6. v2.6.12.5iquot;d5v1> 6., l5seq_12.mp".12.55m L50_="+se> 6.)>KERN_ERR> 6. v2.6.12.5iquot;d5eno">/* F5rst check < immedi+se 5"+ste50fans>assearchon="+search" method="post" onsubmi#L2575ER_IMMEDI5TE".12.5LOW_OVE5_IMME50artemssearchon="+search" method="post" onsubmi#L2575E4_IMMEDI5T.1a>[lassearch+code=i".5_LOW_50 &61> 6.>r262> 6.="+sea void assearch+co5VERTEMP".52.5FAILURE_LOW_5VERTE50AR.1a".12.5cpu_all_tmax> 6. +classearch+cod5;d="post"5 O"+stemp due to immedi+5e CPU50 */.5" >wf_control51 id L191 12.o.ein L252 5wf_coo.ein L252 trolsearch+code=FIX32TOPRINT".12.5FIX32TOP5_7="post"5 assearch+code=tempns".15!\n&q50ERTEMssearchon="+search" method="post" onsubmi#L2575_8="post"5 L197 12.5r20750n */.5" >cpu_all_tmax> 6. +classearch+cod5v9="post"5 new_="+se".12.5 6.) {>= 1.ear">KERN_ERR> 6. v2.6.12.5iquot;d5IGH_OVERT5MP".12.5FAILURE5HIGH_5VERTEMP.1a>;>r139.1a> INFOasse lassearch+code=printk".12.5s d L2 loops> arted.ERN_ERR".12.5KERN_ERR> 6. v2.6.12.5iquot;d5ERTEMP".15.5FAILURE_HIGH_5VERTE51_="+se> 6.)>r191.1a> < nrid re assearchnrid re = 0; lassearch+code=i".12.5"> 6. &lx".12.5cpu_all_tmax> 6. +classearch+cod5iquot;d="5ost": Criseaal o"+stemp 5ue to51fans> 6.();>"> 6. &lxr191.0lx".12.5cpu_all_tmax> 6. +classearch+cod5iR_IMMEDI5mmedi+se CPU temperature5!\n&q51ATE.1a>)) {>;>r25VERTEMP"PERML255 >r255.1a> VERTEMP"PERMtrolsearch+code=FIX32TOPRINT".12.5FIX32TOP5iLOW_OVER5 12.5r21351 &&>KERN_ERR> 6. v2.6.12.5iquot;d5EERTEMP".5id L214 12.5))) {>KERN_ERR> 6. v2.6.12.5iquot;d5Ed="post"5ax temperatures and use 5hat 51AGE.1a>)) {> * o"+stem5 mana51"+se> 6.) {>) == 0)>DBG03aS> 6.(lv2.6.12.51 id L191 12.OPRINT".12.5FIX32TOPRINT> 6.(lassearch+code=t_old"+codall_tmt assearch+codall_tmt 6. &lo.ear">KERN_ERR> 6. v2.6.12.5iquot;d5E9="post"5u_.4] =5lassearch+code=tempns".15.5t_ol#ifdef1 id L191 12.HACKED_OVERTEMP assearchHACKED_OVERTEMPot;CPU_5EMP_H52_="+se> 6.)>r191r191.16.ear">KERN_ERR> 6. v2.6.12.5iquot;d5.1a> -= l5ssearch+code=t_old".12.55/o.ea5">t_ol#endifear">KERN_ERR> 6. v2.6.12.5iquot;d5.R_IMMEDI5lassearch+code=tempns".15.5)) {>CPU_5EMP_H52 &ssearchon="+search" method="post" onsubmi#L2575_ERTEMP".5id L224 12.5fmin> 6.)>r228.1a> v2.6.12.5r25VERTEMP"PERML255 >r255.1a> VERTEMP"PERMtrole nam L262 >r262> 6.="+sea void assearch+co5INT> 6.(l5ssearch+code=tempns".12.5 6.) {> lassearch+code=5_8="post"5id L227 12.5) == 0)>r228.1a> v2.6.12.5itself12.5r228.1a> v2.6.12.5LOW_O5ER_AV53t;<5"assearchon="+search" mr228.1a> v2.6.12.5FAILUR5_LOW_53T_SIZE.1a>;>wf_coo.ein L252 troln nam L252 >r25thod="post" onsubmi#L252 id L252 12.5 lassearch+code=5VERTEMP".52.5FAILURE_LOW_5VERTE532_SIZE.1a>;>r25VERTEMP"LOW_OVERTEMP assearchVERTEMP"LOW_OVERTEMP/opir251.1a> lassearch+code=5VR_IMMEDI5": O"+stemp due to a"+sa5e CPU53artemp> 6.;>KERN_ERR> 6. v2.6.12.5iquot;d5VTEMP_HIS5ring">iquot; temperature5!\n&q53 &&><KERN_ERR> 6. v2.6.12.5iquot;d5VERTEMP".5 12.5r23453AR.1a>))) {>KERN_ERR> 6. v2.6.12.5iquot;d5Vtory of 5AGE".12.5HIGH_O5ER_AV53t;<5" );>KERN_ERR> 6. v2.6.12.5iquot;d5VNT> 6.(l5MP".12.5FAILURE5HIGH_53ERTEMssearchon="+search" method="post" onsubmi#L2575ERTEMP".15.5FAILURE_HIGH_5VERTE53n */.5" >DBGx, L252 12.5<:5 6.(lv2.6.12.5.12.5cpu_all_tmax> 6. +classearch+cod5Eommeno">5ost": Criseaal o"+stemp 5ue to539+se> 6.) {>wf_coo.ein L252 trol51 id L191 12.thod="post" onsubmi#L252 id L252 12.5KERN_ERR> 6. v2.6.12.5iquot;d5ng">iquot5 a"+sage CPU temperature5!\n&q54>t_old> 6.;>r2405411a>) == 0)>r228.1a> v2.6.12.5t_old> 6.;>r25o.ein L252 5wf_coo.ein L252 troln = 0n2pine2pine nam L252 >r25cpufreq_12. onsubmi#L196 id Lfreq_12. oarch+earch+code=FIX32TOPRINT".12.5FIX32TOP512.cs. We5don't currenoly use 5he d=54ATE.1a>)) {>FIX32TOP5112.5r25o.ein L252 5wf_coo.ein L252 troln2pine2pine nam L252 >r25cpufreq_12. onsubmi#L196 id Lfreq_12. oarch+earch+code=FIX32TOPRINT".12.5FIX32TOP51ERTEMP".5w rchhine. This d=ll be 5ixed 54.1a>) == 0)>FIX32TOP51tory of 5 6. v2.6.12.5FIX32TOP51GH_OVERT5de=new_="+se".12.5new5="+se> 6.) {>ithassenow, we might wantlassdeal with othese L252 s12.5r228.1a> v2.6.12.5r228.1a> v2.6.12.55MP".12.5FAILURE5HIGH_54/t_ptassearchon="+search" mr228.1a> v2.6.12.5rchhi5eopow550 */.assearchon="+search" method="post" onsubmi#L2575hid L2405code=new_="+se".12.5n55a> ssearchon="+search" method="post" onsubmi#L2575hERTEMP".5_fans".12.5cpu_5axoal551 >r261> 6.>+sear1h" me6 *FIX32TOP5lassearch5code=new_="+se".12.5n55artem".12.5cpu_all_tmax> 6. +classearch+cod5h12.5FAILURE_LOW_OVERT5MP.1a55 &&>wf_control51 id L191 12.mt _exhausssearch+code=pidmt _exhauss/opir251.1a> lassearch+code=5hid L2345CLEAR".12.5LOW_5VER_C5EAR.1a251.1a> lassearch+code=5htory of 5+stemp condi12.c.12eared5!\n&q55 */.5" >cpu_all_tmax> 6. +classearch+cod5hGH_OVERT5EMP".12.5FAILUR5_LOW_55"+se> 6.) {>FIX32TOP5lRTEMP".15 12.5r25755.1a>) == 0)>5id L258 12.5FAILURE_5IGH_O56>t_old> 6.;>r191.1a> < (lassearch+code=i".12.5"> 6. = 0; lassearch+code=i".12.5"> 6. &lx".12.5cpu_all_tmax> 6. +classearch+cod5bmi#L261 5id L261 12.5 6.();>wf_control_llx".12.5cpu_all_tmax> 6. +classearch+cod5bassearch5_seak".12.5cpu_5ans_s56ATE.1a>)) {>wf_control_n = +search" methodNULLnsubmi#L196 idNULLtroln2pine2pine +search" methodo6rmaind L2 t" onsubmi#L262o6rmaind L2 12.5FIX32TOP5b12.5wf_control_n harchon="+searchcssearch+code=pidctarchr251.1a> lassearch+code=5bid L2345, lassearch+code=cpu2.1255) == 0)>KERN_ERR> 6. v2.6.12.5iquot;d5btory of 5delta".12.5gre+5est_d56AGE.1a>)) {>t56ERTEMP.1a>;>ta56n */.5" >r = = +search" methodNlassearch+code=i".12.5"> 6. = 0lx".12.5cpu_all_tmax> 6. +classearch+cod5bommeno">5a> *lassearch+code=sr".15.5 6.) {> , trystheoothesL1 12.5r228.1a> v2.6.12.5r260> 6.ne na5 k0 57AGE.1a>)) {>cpu_all_tmax> 6. +classearch+cod5".12.5;><FIX32TOP5max> 6. =5lassearch+code=tmax".12.5 6.();>m47ATE.1a>)) } else {>cpu_all_tmax> 6. +class>FIX32TOP4m12.5m47 &&><))) {><iquot;d4(gre+sest4lassearch+cod5=fmin57re+5est_d56AGE.1a>)) { else {>cpu_all_tmax> 6. +classubmi#L2574(., lasse4id L176 12.5 6.) ;><) == 0)>< 6.) TEMP.1a>;>)) {> lass5=FAILURE_54bmi#L180 4id L180 12.5;>FIX32TOP4max> 6. =4ns".12.5cp58pu_4axoal45.1a>)RE_LOW_OVERTEMP.1a> | lassearch+cod5=FAILURE_54mlassearc4d L182 12.55/opin58".14.5r241> 6.>r191.1a> .12.5"> 6. = 0; lassearch+code=i".12.5)RE_LOW_OVERTEMP.1a> | lassearch+cod5=>FIX32TOP4m12.5odem /opin = +search" methodNULLnsubmi#L196 axoal45.1a>)RE_LOW_OVERTEMP.1a> | lassearch+cod5=rch+code=4bmi#L184 4id L184 12.5))) {> lass5=">iquot;d4bgre+sest4se of a senso5 erro5. We4alson48t;<5"earch+code=FIX32TOPRINT".12.5FIX32TO54 even "f 4t's suppo5edlyn58.ea5">new5="+se> 6.) {>r228.1a> vssearch+c54 anyway, 4endo it earli5r her58GH_5VERTE53n */.5" >. assearch+code=max".12.5max> 6. = lassearc L2 _sainmt 12.5g id L2 _sainmt 12.5wf_control_lsearch+code=FIX32TOPRINT".12.5r241> 6.>nsubmi#L191 id L191 12.5 6.>"> 6. = 0; lassearch+code=i".12.5)RE_LOW_OVERTEMP.1a> | lassearch+cod5">FIX32TO54h+code=cp4freq_12.mp".15.5)) {>w !em /opin = +search" methodNULLnsubmi#L196 axoal45.1a>)RE_LOW_OVERTEMP.1a> | lassearch+cod5"post" on54+code=cpu4req_12.mp".1255;>odxoal45.1a>)RE_LOW_OVERTEMP.1a> | lassearch+cod5">FIX32TOP4CPU_FANS.4a>; ++lassear5h+cod5=i".42.5 6.()TEMP.1a>;>max> 6. = lassearc L2 _sainmt 12.5g id L2 _sainmt 12.5 lasse">FIX32TO54hlassearc4.1a>[lassearc5+code59OVE5_IMME50artemssearchon="+search" method="post" on">FIX32TO54h12.5[lassear5h+cod59ure5!\n&q53 &&><= 1.ear">KERN_ERR> 6. v2.6.12.5FIX32TO54hmi#L184 44 idsubmi#L95 id 59 n4m L48AR.1aassearchon="+search" method="post" o5">FIX32TO54hgre+sest4id L195 12.5FIX32TO54heven "f 4 assearch+cod5=temp59ne 4a1er 48ERTEM61> 6.>+sear1lots 1arch+code=max".ar1lots 1+codo L2 +se> *iquot;54mi#L197 4d L197 12.55/opin59to 4eact 48.1a>)".12.5cpu_all_tmax> 6. +cla5g">iquot;54m 12.5wf_controlsearch+code=FIX32TOPRINT".12.5iquot;65vg> 6., l5ssearch+code=6_old"60RE_5IGH_O56>t_old> 6.;>iquot;65v1> 6., l5seq_12.mp".1265DBG03aS> 6.(9ERR".12.5cpu_all_tmax> 6. +cla6g">iquot;65eno">/* F5rst check <6immed60i".42.5 6.();> 6>wf_controlsearch+code=FIX32TOPRINT".12.5iquot;65hlassearc4.1a>[lassearc6r">LO60/o.4ar">m47ATE.1a>)) rcho ><r191.1a> OREdNlassearch+code=i".OREd196 idNULLtrolwf_controlsearch+code=FIX32TOPRINT".12.5iquot;65h12.5[lassear6h+cod60/o.4ar">m47 &&><wf_control_n = +search" methodNULLnsubmi#L196 idNULLtroln2pine2pine +search" melots 1arch+code=max".ar1" melots 16 ids rc o 12.5F6ILURE6094 412.5149.1a>) == 0)>wft> 6.>FIX32TO65_7="post"5 assearch+cod6=temp60/o.5ar">t56ERT else {>DBG03aS> 6.(10ERR".12.5cpu_all_tmax> 6. +cla6g8FIX32TO65mi#L197 4d L197 12.56/opin60no"5 51.1a>) == 0)> 6>wf_controlsearch+code=FIX32TOPRINT".12.5 6.) rcho ><r191.1a> OREdNlassearch+code=i".OREd196 idNULLtrolwf_controlsearch+code=FIX32TOPRINT".12.5iquot;65IGH_OVERT5MP".12.5FA6LURE5HIGH_5VERTEMP.1a>ssearchassearchon="ootsearchopineslotsmpassearch+otsearchopinerch+code=wf_control_se1_max".12.5wf_control_n = +search" methodNULLnsubmi#L196 idNULLtroln2pine2pine +search" melots 1arch+code=max".ar1" melots 16 ids rc o 12.5iquot;65ERTEMP".15.5FA6LURE_6IGH_5VERTE51_="+se> 6..1a>ssearchassearchon="ootsearchopineslotsmpassearch+otsearchopinerch+code=wf_control_se1_max".12.5wft> 6.>cpu_all_tmax> 6. +cla6search+co65iR_IMMEDI5mmedi+se CPU 6emper6ture5!\n&q51ATE.1a>)) rcho ><iquot;65iLOW_OVER5 12.5r21351 &&>< 6.>cpu_all_tmax> 6. +cla6s6earch+c65Ed="post"5ax temperatur6s and6use 5hat 51AGE.1a>)) rcho ><FIX32TO65E7="post"5meno"> 6 * o"6stem5 mana51"+se> 6.) .1a>ssearchassearchon="on="+sopineslotsmpassearch+code=s32 slotodt> 6.>iqu6cpu_all_tmax> 6iquot;d5E9="post"5u_.4<6t_pt"616.5 6.) rcho ><] =5lasse6rch+c626r">FA6LURE5HIGH_5VERTEMP6.) .1a>ssearchasseu4se+seahdhpt lslotsmpu4se+sede=s32 slotodt> 6.>CPU_5E L51h+ slotlwf_controlsearch+code=FIX32TOPRINT".12.piquot;d5.1a> -= l5ssear6h+cod626immed60i".42.5 6iquot;d5.R_IMMEDI5lasse6rch+c625+code59OVE5_IMME50artemssearchon="+search" method=6post" ons6bmi#L2575_TEMP_HIS5_SIZE6.12.5625h+cod59ure5!\new5="+se> 6.) {>we de=m"+seanot .ar1" s>we needefactorystheoothesL1 12.5r228.1a> 6post" ons6bmi#L2575_ERTEMP".5id L624 16.5 6.)>r191.1a> < nrid re assearchnrid re = 0; lassearch+code=i".12heoothesL1 12.5r228.1a> 6p. +cla6s66.12.5)) rcho ><wf_control_n = +search" methodNULLnsubm||P.1a>ssearchassearchon="ootsearchopineslotsmpassearch+otsearchopinerch+code=wf_control_se1_max".12.5wf_control_n = +search" methodNULLnsub2heoothesL1 12.5r228.1a> 6pearch+co5INT> 6.(l5ssear6h+cod6=tempns".12.5 6< 6<<= 1.ear">KERN_ERR> 6. v2.6.12.6 v266.12.5rchhi5eopow550 */.assearchon="+search" method=6 v266.12.5n55a> ssearchon="+search" method=6 lassea6ch+code=5VERTEMP".52.5cpu_5nsigned */.5" > 6.(lv2.6.12.5.12.5cpu_all_tmax>6 lassea6ch+code=5VR_IMMEDI5": O"6stemp63temperature5!\n&q51ATE.1a>)) {> 6.(lv2.6.12/opmrchopineslotsmp2/opm a1er s 1+codo L2 +sdatarchopineslotsmpdatansub2heoothesL1 12.5r228.1a> 6iquot;d5VTEMP_HIS5ring"6iquot6 tempe N_ERR".12.5cpu_all_tmax> iquot;d5VERTEMP".5 12.56/opin6 nam L2345>switch L48_="+se> 6.)>cpu_all_tmax> iquot;d5Vtory of 5AGE".62.5HIGH_O5Eca51A48_="+se> 6.)>: N_ERR".12.5cpu_all_tmax> <>iquot;d5VNT> 6.(l5MP".16.5 6.) {>= 1.ear">KERN_ERR> 6. v2.6.12.6 636/opin60no"5 51.1)>KERN_ERR> 6. v2.6.12.66. +class6arch+cod5Eommeno">5ost":6Crise6al o"+stemp 5uca51A48_="+se> 6.)>: N_ERR".12.5cpu_all_tmax> iquot;d5ng">iquot5 a"+s6ge CP64ar">FAILURE5HIGH_5VERTEMP.1a>;>= 1.ear">KERN_ERR> 6. v2.6.12.6 method="6ost" ons5 id L2405 12.56/opin646LURE_6IGH_5VERTE51_=)>KERN_ERR> 6. v2.6.12.6 v266.12.5 6.)>: N_ERR".12.5cpu_all_tmax> < lassea6FIX32TOP512.cs. We5donEt c6rrenoly use 5he d=54ATE.1a>)) rcho ><<<r228.1a> 65r21351 &&><= 1.ear">KERN_ERR> 6. v2.6.12.6 /ostring6FIX32TOP51ERTEMP".5w rch6ine. 6his d=ll be 5i>rchhi5eopow550 */.assearchon="+search" method=65HIGH_O5E{>FIX32TOP51GH_OVERT5de=ne6_="+s6".12.5>rchhi5eopow550 */.assearchon="+search" method=65 6 v266.12.55MP".16.5F">cpu_5s 12 _s L2 12.5 Lnotifier_blo+se L22_bay_ _notifier_blo+sr1lot;><cpu_all_tmax> v266.12.5FAILURE5H.s L2 12.5 Lnotifier_cx".e L22_bay_ _notifier_cx".de=s32 slotodt> 6.> 6.(lv2.6.12.5.12.5cpu_all_tmax>6post" ons6bmi#L2575hid L2405code=6ew_="6se".12}drchhi5eopow550 */.assearchon="+search" method=6post" ons6bmi#L2575hERTEMP".5_fans6.12.5655r">cp58pu_4axoal45.1a>)RE_LOW_OVERTEMP.1a> | lasse65cpu_5nsigned */.5" >r228.1a> 66. +class6arch+cod5h12.5FAIL65tempe N_ERR".12.5cpu_all_tmax> lassea6ch+code=5hid L2345CLEAR6.12.565 nam L2345>r23453AR.1a>)))de=register_cliopmrchopineslotsmpde=register_cliopm26lot6 id;><= 1.ear">KERN_ERR> 6. v2.6.12.6 lassea6ch+code=5htory of 5+stem6 cond65ear">HIGH_O5E{>rchhi5eopow550 */.assearchon="+search" method=65 6 lassea6ch+code=5hommeno">5id L658 1659".12">cpu_5nsigned */.5" ><_adeveximrchopineslotsmp_adeveximr1lot;><r228.1a> 6post" ons6bmi#L2575GH_OVERTE5P".1265FA N_ERR".12.5cpu_all_tmax> method="6ost" ons5mi#L260 5d L260 1266ear">FAILUR5_LOW_53T_SIZE.1ade=unregister_cliopmrchopineslotsmpde=unregister_cliopm26lot6 id;><= 1.ear">KERN_ERR> 6. v2.6.12.66. +class6arch+cod5bmi#L261 5id L661 16.5andrch*rcherefactorystheoothesL1 12.5r228.1a> 66. +class6arch+cod5bassearch5_seak6.12.56/o.ear">cpu_5a{>rchhi5eopow550 */.assearchon="+search" method=6 lassea6ch+code=5bid L2345, las6earch66o.ear">LOW_5VER_C5EAR.1a251.1a> 6iquot;d5btory of 5delta6.12.56/o.ear">cpu_5s 12 _s L2 12.5 Lplatfo.1adC5EARlassearch+code=platfo.1adC5EARr1lot;><cpu_all_tmax> post" ons6bmi#L2575GGH_OVERT5rch+c6de=t_6ax".12.5 6.> 6.(lv2.6.12.5.12.5cpu_all_tmax>6post" ons6bmi#L25756id L2575h+cod6=targ612.12.5 6.> 6.(lv2.6.12.5.12.5cpu_all_tmax>6p lassea6arch+cod5bommeno">5a> *l6ssear6h+code=sr".15..s L2 12.5 LdC5EARlassearch+code=dC5EARL262o6r N_ERR".12.5cpu_all_tmax> v266.12.5r660> 6.ne na5 k0 57AG.s L2 12.5 Ln = lassearch+code=12ea 32 INFOasse lassearch+code52 12.5<:5 6.(lv2.6.12.5.12.5cpu_all_tmax>66. +class6arch+cod5".12.5 6.> 6.(lv2.6.12.5.12.5cpu_all_tmax>65 6. =5lasse6rch+c6de=tmax".12.5<}o.exS> 6.(lv2.6.12.5.12.5cpu_all_tmax>65. +class6ch+code=5 3mp;><1m L2r6hback6idem }drchhi5eopow550 */.assearchon="+search" method=66. +class6FIX32TOP4m12.5CPU_5EMP_H52 &ssearchon="+search" method=65cpu_5nsigned */.5" ><_ainimrchopineslotsmp_ainimr1lot;><r228.1a> 6 lassea6>iquot;d4(gre+sest4lasse6rch+c6d5=fmi N_ERR".12.5cpu_all_tmax> ost" ons6bmi#L2574(., lasse4id L676 16.5 6 lassea6arch+cod48 12.5r57".15.R{ else {>) -se {>n55a> ssearchon="+search" method=6post" ons6FIX32TOP4max> 6. =4ns".16.5r228.1a> 6rch+cod5=6AILURE_54mlassearc4d L162 12655/opin58".14. nam L191 >r191.1a> < nrid re aethodheoothesL1 12.5r228.1a> 6r. +class6FIX32TOP4m12.5 6.)> 6.> 6.)> 6.>w !em /opin = +search" methodNULLnsub; ea{> 6p < nrid re asa{> 6p lassea6>iquot;d4bgre+sest4se of6a sen6o5 erro5. We4alson48t;<5"earch+code=FIX32TOPRINT".1265 L2 12.5 Lprrchn="+searchubmi#_"rrchn62ubm 1+codo L2 +sKERN_INFO="+searchubmi#_KERN_INFOr1lot; INFOasse lassearch+code: inimializu+sea+sedual- desktop G5L252 12.5<:5= 1.ear">KERN_ERR> 6. v2.6.12.6 vs6earch+c54 anyway, 4endo 6t ear685 65 L2 12.5 LMODULElassearch+code=MODULE26loa{> 6rch+cod5"6FIX32TO54h+code=cp4freq_62.mp"615.5KERN_ERR> 6. v2.6.12.6rch+cod5"6ost" on54+code=cpu4req_16.mp".69ear">FAILUR5_LOW_53T_SIZE.1arequest_moduhon="acalch+code=request_moduho62ubm INFOasse lassea smuh.ar1" s52 12.5<:5= 1.ear">KERN_ERR> 6. v2.6.12.6rost" ons6FIX32TOP4CPU_FANS.4a>; +6lasse6r5h+cod5=i".42LOW_53T_SIZE.1arequest_moduhon="acalch+code=request_moduho62ubm INFOasse lassea smuh.at52 12.5<:5= 1.ear">KERN_ERR> 6. v2.6.12.6rch+cod5=6FIX32TO54hlassearc4.1a>[6assea695/opin58".14. nam L191 >rrequest_moduhon="acalch+code=request_moduho62ubm INFOasse lassea lm75h.ar1" 52 12.5<:5= 1.ear">KERN_ERR> 6. v2.6.12.6r. +class6FIX32TO54h12.56lasse6r5h+cod59ure5!\n&q53 &&amrequest_moduhon="acalch+code=request_moduho62ubm INFOasse lassea max6615h.ar1" 52 12.5<:5= 1.ear">KERN_ERR> 6. v2.6.12.6rr23453AR.1a>)))request_moduhon="acalch+code=request_moduho62ubm INFOasse lassea 2. onsubmi#L152 12.5<:5= 1.ear">KERN_ERR> 6. v2.6.12.6r lassea6FIX32TO54hgre+sest4id L695 16.5<= 1.ear">KERN_ERR> 6. v2.6.12.75iquot;65vg> 6., l5ssear7h+cod705.5iquot;65v1> 6., l5seq_17.mp".7265rchhi5eopow550 */.assearchon="+search" method=76. +cla6g7>iquot;65eno">/* F5rst c7eck 705r">cp58pu_4axoal45.1a>)RE_LOW_OVERTEMP.1a> | lasse75iquot;65hlassearc4.1a>[7assea70e".12">cpu_5a1er 48ERTEM61> 6.><__eximrchopineslotsmp_aeximr1lot;><r228.1a> 75iquot;65h12.57lasse70tempe N_ERR".12.5cpu_all_tmax>75r23453AR.1a>)))platfo.1adC5EAR=unregisterlassearch+code=platfo.1adC5EAR=unregister26lot6 id;><= 1.ear">KERN_ERR> 6. v2.6.12.756/o.ea6s7eIX32TO54hgre+sest4id L795 17.6to i>rchhi5eopow550 */.assearchon="+search" method=767/o.ea6s7eIX32TO54heven "f 4 asse7rch+c7d6=temrchhi5eopow550 */.assearchon="+search" method=768/o.ea6s7eiquot;54mi#L197 4d L177 127arch+c;><<= 1.ear">KERN_ERR> 6. v2.6.12.759/o.ea6s7eiquot;54m 12.5<= 1.ear">KERN_ERR> 6. v2.6.12.75iquot;65IGH_OVERT5MP".17.5t_old> 6.;>iquot;65ERTEMP".15.57A6LURE> L2 12.5 LMODULE_AUTHORrchopineslotsmpMODULE_AUTHOR62ubm INFOasse lasseaPaul Mackerras/opinpaulus@samba.orgh+ s52 12.5<:5= 1.ear">KERN_ERR> 6. v2.6.12.75 L2 12.5 LMODULE_DESCRIPTIONrchopineslotsmpMODULE_DESCRIPTION62ubm INFOasse lasseaThermalrch*rcheea+sePtseaMac11,2phd-pt lacksid+cododertedmi#L>= 1.ear">KERN_ERR> 6. v2.6.12.75 L2 12.5 LMODULE_LICENSElassearch+code=MODULE_LICENSE62ubm INFOasse lasseaGPLphd-pt lacksid+cododertedmi#L>= 1.ear">KERN_ERR> 6. v2.6.12.75iquot;65iLOW_OVER5 12.57/opin7 6nam > L2 12.5 LMODULE_ALIA OREdNlasseaMODULE_ALIA 62ubm INFOasse lasseaplatfo.1:rch+code52 12.5<:5= 1.ear">KERN_ERR> 6. v2.6.12.75
Tot ariginalrLXR software bthnot ododertedhttp://sourcefo.ge.net/projects/lxrl>LXR .) {unimy26loohnois experi{>= ion bthododertedmailto:lxr@RTEux.no">lxr@RTEux.no26lo.
lxr.RTEux.no kERRly hosted bthododertedhttp://www.redpill-RTEpro.no">Redpill LTEpro A 62ub, provider of"LTEuxrch*sultu+seandropercpuh*s servic s since 1995.