fixed, lm87.c#rev1.20. :)

The bug was caused by an ininitialised value, such that fan sensors in
certain chips (lm81, adm9240 and ds1780) might have pseudo-randomly
never appeared. Just to make it clear -- this was not a regression in
4.2, the fact that it was missing from 4.2 is simply a pseudo-random
occurrence. :)

In any case, the bug should be gone for good, thanks to LLVM/Clang
Static Analyser.

br,
cnst.su.

On 09/11/2007, Simon Slaytor <[EMAIL PROTECTED]> wrote:
> Hi Folks,
>
>  I've just been upgrading some of our old war horses (Nokia IP440) to 4.2.
> They run Intel made BX PIII chipset motherboards, dmesg below.
>
>  Whilst not extensive the boards do have some sensor data that we grab to
> check on the health of the old girls. After a fresh install of 4.2 I noticed
> we had lost the FAN readout from the list of sensors, see output below
> (taken from different boxes but I've confirmed the loss using the same box
> switching between 4.1 and 4.2).
>
>  Whilst this isn't critical for us on these units whatever is causing the
> omission may have bigger problems for other people so I thought I'd bring it
> to the lists attention.
>
>  Many thanks to all the developers for yet another excellence release in
> 4.2, the bulk CD order is going through soon!
>
>  Sensor Output from 4.1 i386 (sysctl -a hw)
>
>  hw.machine=i386
>  hw.model=Intel Pentium III ("GenuineIntel" 686-class)
>  hw.ncpu=1
>  hw.byteorder=1234
>  hw.physmem=267993088
>  hw.usermem=267988992
>  hw.pagesize=4096
>  hw.disknames=wd0,cd0,fd0
>  hw.diskcount=3
>  hw.sensors.lmenv0.temp1=23.00 degC (Internal)
>  *hw.sensors.lmenv0.fan0=2647 RPM ******* MISSING *******
>  hw.sensors.lmenv0.fan1=3970 RPM ********* MISSING ********
>  hw.sensors.lmenv0.volt0=1.52 VDC (+2.5Vin)
>  hw.sensors.lmenv0.volt1=1.66 VDC (Vccp)
>  hw.sensors.lmenv0.volt2=3.30 VDC (+Vcc)
>  hw.sensors.lmenv0.volt3=5.08 VDC (+5Vin/Vcc)
>  hw.sensors.lmenv0.volt4=12.38 VDC (+12Vin)
>  hw.sensors.lmenv0.volt5=2.43 VDC (Vccp)
>  hw.cpuspeed=599
>  hw.vendor=Intel Corporation
>  hw.product=SE440BX-2
>  hw.uuid=ebf758f0-b47b-11d4-af0d-0030d3006ea4
>
>  Sensor Output from 4.2 i386 (sysctl -a hw)
>
>  hw.machine=i386
>  hw.model=Intel Pentium III ("GenuineIntel" 686-class)
>  hw.ncpu=1
>  hw.byteorder=1234
>  hw.physmem=267993088
>  hw.usermem=267984896
>  hw.pagesize=4096
>  hw.disknames=wd0,cd0,fd0
>  hw.diskcount=3
>  hw.sensors.lmenv0.temp1=28.00 degC (Internal)
>  hw.sensors.lmenv0.volt0=1.50 VDC (+2.5Vin)
>  hw.sensors.lmenv0.volt1=1.69 VDC (Vccp)
>  hw.sensors.lmenv0.volt2=3.27 VDC (+Vcc)
>  hw.sensors.lmenv0.volt3=5.05 VDC (+5Vin/Vcc)
>  hw.sensors.lmenv0.volt4=12.00 VDC (+12Vin)
>  hw.sensors.lmenv0.volt5=2.40 VDC (Vccp)
>  hw.sensors.lmenv0.volt6=2.48 VDC (AIN1)
>  hw.sensors.lmenv0.volt7=1.66 VDC (AIN2)
>  hw.cpuspeed=599
>  hw.vendor=Intel Corporation
>  hw.product=SE440BX-2
>  hw.uuid=82947f19-b652-11d4-b074-0030d3001e5e
>
>  DMESG's
>
>  OpenBSD 4.1 (GENERIC) #1435: Sat Mar 10 19:07:45 MST 2007
>
> [EMAIL PROTECTED]:/usr/src/sys/arch/i386/compile/GENERIC
>  cpu0: Intel Pentium III ("GenuineIntel" 686-class) 599 MHz
>  cpu0:
> FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,SER,MMX,FXSR,SSE
>  real mem  = 267993088 (261712K)
>  avail mem = 236847104 (231296K)
>  using 3302 buffers containing 13524992 bytes (13208K) of memory
>  mainbus0 (root)
>  bios0 at mainbus0: AT/286+ BIOS, date 02/23/00, BIOS32 rev. 0 @ 0xfd7a0,
> SMBIOS rev. 2.1 @ 0xefbe0 (42 entries)
>  bios0: Intel Corporation SE440BX-2
>  pcibios0 at bios0: rev 2.1 @ 0xfd7a0/0x860
>  pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfdf30/176 (9 entries)
>  pcibios0: PCI Interrupt Router at 000:07:0 ("Intel 82371FB ISA" rev 0x00)
>  pcibios0: PCI bus #2 is the last bus
>  bios0: ROM list: 0xc0000/0x8000 0xe0000/0x4000! 0xe4000/0xc000
>  acpi at mainbus0 not configured
>  cpu0 at mainbus0
>  pci0 at mainbus0 bus 0: configuration mode 1 (no bios)
>  pchb0 at pci0 dev 0 function 0 "Intel 82443BX AGP" rev 0x03
>  ppb0 at pci0 dev 1 function 0 "Intel 82443BX AGP" rev 0x03
>  pci1 at ppb0 bus 1
>  vga1 at pci1 dev 0 function 0 "ATI Mach64 GM" rev 0x27
>  wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
>  wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
>  pcib0 at pci0 dev 7 function 0 "Intel 82371AB PIIX4 ISA" rev 0x02
>  pciide0 at pci0 dev 7 function 1 "Intel 82371AB IDE" rev 0x01: DMA, channel
> 0 wired to compatibility, channel 1 wired to compatibility
>  wd0 at pciide0 channel 0 drive 0: <IC35L020AVER07-0>
>  wd0: 16-sector PIO, LBA, 19623MB, 40188960 sectors
>  wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
>  atapiscsi0 at pciide0 channel 1 drive 0
>  scsibus0 at atapiscsi0: 2 targets
>  cd0 at scsibus0 targ 0 lun 0: <TEAC, CD-540E, 1.0A> SCSI0 5/cdrom removable
>  cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2
>  uhci0 at pci0 dev 7 function 2 "Intel 82371AB USB" rev 0x01: irq 9
>  usb0 at uhci0: USB revision 1.0
>  uhub0 at usb0
>  uhub0: Intel UHCI root hub, rev 1.00/1.00, addr 1
>  uhub0: 2 ports with 2 removable, self powered
>  piixpm0 at pci0 dev 7 function 3 "Intel 82371AB Power" rev 0x02: SMI
>  iic0 at piixpm0
>  lmenv0 at iic0 addr 0x2d: adm9240 rev 2, starting scan
>  ppb1 at pci0 dev 13 function 0 "DEC 21152 PCI-PCI" rev 0x03
>  pci2 at ppb1 bus 2
>  dc0 at pci2 dev 4 function 0 "DEC 21142/3" rev 0x41: irq 11, address
> 00:c0:95:e0:9d:1c
>  dcphy0 at dc0 phy 31: internal PHY
>  dc1 at pci2 dev 5 function 0 "DEC 21142/3" rev 0x41: irq 10, address
> 00:c0:95:e0:9d:1d
>  dcphy1 at dc1 phy 31: internal PHY
>  dc2 at pci2 dev 6 function 0 "DEC 21142/3" rev 0x41: irq 7, address
> 00:c0:95:e0:9d:1e
>  dcphy2 at dc2 phy 31: internal PHY
>  dc3 at pci2 dev 7 function 0 "DEC 21142/3" rev 0x41: irq 9, address
> 00:c0:95:e0:9d:1f
>  dcphy3 at dc3 phy 31: internal PHY
>  isa0 at pcib0
>  isadma0 at isa0
>  pckbc0 at isa0 port 0x60/5
>  pckbd0 at pckbc0 (kbd slot)
>  pckbc0: using irq 1 for kbd slot
>  wskbd0 at pckbd0: console keyboard, using wsdisplay0
>  pcppi0 at isa0 port 0x61
>  midi0 at pcppi0: <PC speaker>
>  spkr0 at pcppi0
>  npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
>  pccom0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
>  pccom0: console
>  biomask f36d netmask ffed ttymask ffef
>  pctr: 686-class user-level performance counters enabled
>  mtrr: Pentium Pro MTRR support
>  dkcsum: wd0 matches BIOS drive 0x80
>  root on wd0a
>  rootdev=0x0 rrootdev=0x300 rawdev=0x302
>
>  OpenBSD 4.2 (GENERIC) #375: Tue Aug 28 10:38:44 MDT 2007
>
> [EMAIL PROTECTED]:/usr/src/sys/arch/i386/compile/GENERIC
>  cpu0: Intel Pentium III ("GenuineIntel" 686-class) 599 MHz
>  cpu0:
> FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,SER,MMX,FXSR,SSE
>  real mem  = 267993088 (255MB)
>  avail mem = 251490304 (239MB)
>  mainbus0 at root
>  bios0 at mainbus0: AT/286+ BIOS, date 09/27/99, BIOS32 rev. 0 @ 0xfd7a0,
> SMBIOS rev. 2.1 @ 0xefca0 (42 entries)
>  bios0: vendor Intel Corp. version "4S4EB2X0.86A.0022.P15" date 09/27/1999
>  bios0: Intel Corporation SE440BX-2
>  pcibios0 at bios0: rev 2.1 @ 0xfd7a0/0x860
>  pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfdf30/176 (9 entries)
>  pcibios0: PCI Interrupt Router at 000:07:0 ("Intel 82371FB ISA" rev 0x00)
>  pcibios0: PCI bus #2 is the last bus
>  bios0: ROM list: 0xc0000/0x8000 0xe0000/0x4000! 0xe4000/0xc000
>  acpi at mainbus0 not configured
>  cpu0 at mainbus0
>  pci0 at mainbus0 bus 0: configuration mode 1 (no bios)
>  pchb0 at pci0 dev 0 function 0 "Intel 82443BX AGP" rev 0x03
>  ppb0 at pci0 dev 1 function 0 "Intel 82443BX AGP" rev 0x03
>  pci1 at ppb0 bus 1
>  piixpcib0 at pci0 dev 7 function 0 "Intel 82371AB PIIX4 ISA" rev 0x02
>  pciide0 at pci0 dev 7 function 1 "Intel 82371AB IDE" rev 0x01: DMA, channel
> 0 wired to compatibility, channel 1 wired to compatibility
>  wd0 at pciide0 channel 0 drive 0: <IBM-DTLA-305020>
>  wd0: 16-sector PIO, LBA, 19623MB, 40188960 sectors
>  wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2
>  atapiscsi0 at pciide0 channel 1 drive 0
>  scsibus0 at atapiscsi0: 2 targets
>  cd0 at scsibus0 targ 0 lun 0: <TEAC, CD-540E, 1.0A> SCSI0 5/cdrom removable
>  cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2
>  uhci0 at pci0 dev 7 function 2 "Intel 82371AB USB" rev 0x01: irq 9
>  piixpm0 at pci0 dev 7 function 3 "Intel 82371AB Power" rev 0x02: SMI
>  iic0 at piixpm0
>  lmenv0 at iic0 addr 0x2d: adm9240 rev 2, starting scan
>  ppb1 at pci0 dev 13 function 0 "DEC 21152 PCI-PCI" rev 0x03
>  pci2 at ppb1 bus 2
>  dc0 at pci2 dev 4 function 0 "DEC 21142/3" rev 0x41: irq 11, address
> 00:c0:95:e6:0a:c0
>  dcphy0 at dc0 phy 31: internal PHY
>  dc1 at pci2 dev 5 function 0 "DEC 21142/3" rev 0x41: irq 10, address
> 00:c0:95:e6:0a:c1
>  dcphy1 at dc1 phy 31: internal PHY
>  dc2 at pci2 dev 6 function 0 "DEC 21142/3" rev 0x41: irq 5, address
> 00:c0:95:e6:0a:c2
>  dcphy2 at dc2 phy 31: internal PHY
>  dc3 at pci2 dev 7 function 0 "DEC 21142/3" rev 0x41: irq 9, address
> 00:c0:95:e6:0a:c3
>  dcphy3 at dc3 phy 31: internal PHY
>  isa0 at piixpcib0
>  isadma0 at isa0
>  pckbc0 at isa0 port 0x60/5
>  pckbd0 at pckbc0 (kbd slot)
>  pckbc0: using irq 1 for kbd slot
>  wskbd0 at pckbd0: console keyboard
>  vga0 at isa0 port 0x3b0/48 iomem 0xa0000/131072
>  wsdisplay0 at vga0 mux 1: console (80x25, vt100 emulation), using wskbd0
>  wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
>  pcppi0 at isa0 port 0x61
>  midi0 at pcppi0: <PC speaker>
>  spkr0 at pcppi0
>  lpt0 at isa0 port 0x378/4 irq 7
>  npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
>  pccom0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
>  pccom0: console
>  pccom1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo
>  fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
>  fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec
>  usb0 at uhci0: USB revision 1.0
>  uhub0 at usb0: Intel UHCI root hub, rev 1.00/1.00, addr 1
>  biomask f345 netmask ff65 ttymask ffe7
>  pctr: 686-class user-level performance counters enabled
>  mtrr: Pentium Pro MTRR support
>  dkcsum: wd0 matches BIOS drive 0x80
>  root on wd0a swap on wd0b dump on wd0b

Reply via email to