Re: problem: thresholds change to zero after some time

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 26 Feb 2013 15:03:38 +0100, SP2148421 (at) web.de wrote:
> Thanks for you answer.

You're welcome. But please keep the list included in the discussion.

> Am 26.02.2013 14:02, schrieb Jean Delvare:
> > On Tue, 26 Feb 2013 13:44:53 +0100, SP2148421 (at) web.de wrote:
> >> Hi List,
> >> I have a strange problem…
> >> After some running days some sensor thresholds change from their
> >> original values to zero (in the example below 3VSB, but I have seen this
> >> for different values)!??? After reboot the machine I got the original
> >> values again. A reload of the w83627ehf module do not clear the problem.
> > Running "sensors -s" as root should restore the limits, assuming they
> > are written down in a libsensors configuration file.
> This didn't work. I have still the old wrong zero values.
> My /etc/sensosr3.conf
> chip "w83627dhg-*"
> 
>          label in0 "Vcore"
>          label in1 "+1.05V"
>          label in2 "AVCC"
>          label in3 "3VCC"
>                  set in3_min 3.3 * 0.90
>                  set in3_max 3.3 * 1.10
>          label in4 "Vdimm"
>          label in5 "+5V"
>                  set in5_min 5 * 0.95
>                  set in5_max 5 * 1.05
>                  compute in5 @*4, @/4
>          label in6 "+12V"
>                  set in6_min 12 * 0.90
>                  set in6_max 12 * 1.10
>                  compute in6 @*16, @/16
>          label in7 "3VSB"
>          label in8 "Vbat"
> 
>          ignore fan1
>          label fan2 "CPU Fan"
>          ignore fan2
>          ignore fan3
>          label fan4 "Case Fan"
>          ignore fan4
>          ignore fan5
> 
>          label temp1 "MB Temp"
>          label temp2 "CPU Temp"
>          label temp3 "Case Temp"
> 
>          ignore cpu0_vid

The above configuration file only sets limit for 3VCC, +5V and +12V, so
obviously "sensors -s" can't restore any other limit. If you want to be
able to restore all limits then they must all be expressed in the
configuration file.

Hmm. The chip has banked (or indirectly accessed) registers. The driver
remembers the last bank that was used and only actively selects a bank
when it is different from the previous one. If something else (e.g.
IPMI) is touching the bank selection, this could cause improper values
to be read. Or, worse, values to be written to the wrong register.

I can only suppose that this is what happened there. In your case, we
can see an alarm was raised by 3VSB max being 0, so it's not a read
error, the limit has really been set to 0. We could make the driver
assume less and always set the bank before every register read or
write, however this won't help if the other side (IPMI) does not. And
even then, this would still leave small windows for collisions.

Really, the only safe approach is it either use lm-sensors or IPMI but
not both.

> (...)
> At the moement I use BMC only for remote console access.
> Is there a way to integrate ipmi sensors(?) in sensord I haven't much 
> knowledge about ipmi-tools?
> I wan't to get syslog-entries and alarmbell  like at sensord.

Unfortunately not. IPMI sensors are only accessible through
IPMI-specific tools at the moment, without any integration with
libsensors.

-- 
Jean Delvare
http://khali.linux-fr.org/wishlist.html

_______________________________________________
lm-sensors mailing list
lm-sensors@xxxxxxxxxxxxxx
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors



[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux