Hi Meelis, Thanks for the quick reply. On ven., 2016-07-01 at 15:02 +0300, Meelis Roos wrote: > > > Tried latest Debian kernel (3.10-3-amd64) and latest upstream kernel > > > (3.12-rc2) on a decommisioned IBM x3550 server. i2c-i801 is autoloaded > > > but all access to it seems to wait forever, including stopping reboot > > > from happening because modprobe is still running and blocked on this. > > > > > > 00:1f.3 SMBus: Intel Corporation 631xESB/632xESB/3100 Chipset SMBus Controller (rev 09) > > > Subsystem: IBM Device 02dd > > > Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx+ > > > Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx+ > > > Interrupt: pin B routed to IRQ 20 > > > Region 4: I/O ports at 0440 [size=32] > > > Kernel driver in use: i801_smbus > > > > > > > > > [ 3.028771] i801_smbus 0000:00:1f.3: SMBus using PCI Interrupt > > > [...] > > > [ 240.172009] INFO: task modprobe:267 blocked for more than 120 seconds. > > > > Most likely SMBus interrupts do not work properly on this machine. > > Since then a number of improvements have been committed to the i2c-i801 > > driver to detect and workaround corner cases in this area. If you still > > have this machine, you may want to try to upgrade to kernel v3.19 or > > later and see if it helps. > > The machine is still alive and kicking with latest 4.7-rc4+. However, I > do not remember the exact scenario for testing. Well originally you reported that the machine would hang when the i2c-i801 driver is loaded. I guess this is no longer the case? > Ran sensors, this works: > > $ sensors > i5k_amb-isa-0000 > Adapter: ISA adapter > Ch. 0 DIMM 0: +38.5°C (low = +104.0°C, high = +124.0°C) > Ch. 0 DIMM 1: +33.0°C (low = +100.0°C, high = +124.0°C) > Ch. 1 DIMM 0: +42.5°C (low = +101.0°C, high = +124.0°C) > Ch. 1 DIMM 1: +36.5°C (low = +99.5°C, high = +124.0°C) > Ch. 2 DIMM 0: +58.0°C (low = +127.5°C, high = +127.5°C) > Ch. 3 DIMM 0: +18.0°C (low = +127.5°C, high = +127.5°C) > > coretemp-isa-0000 > Adapter: ISA adapter > Core 0: +43.0°C (high = +86.0°C, crit = +100.0°C) > Core 1: +45.0°C (high = +86.0°C, crit = +100.0°C) > > aem1-isa-0000 > Adapter: ISA adapter > power1: 188.16 W (interval = 1.00 s) > energy1: 720.82 MJ > > aem2-isa-0001 > Adapter: ISA adapter > temp1: +31.0°C > temp2: +20.0°C > power1: 126.22 W (interval = 1.00 s) > power2: 200.69 W (interval = 1.00 s) > power3: 26.00 W > power4: 374.00 W > power5: 347.00 W > power6: 265.40 W > power7: 240.40 W > energy1: 217.21 MJ > energy2: 720.82 MJ > > ibmpex-isa-0000 > Adapter: ISA adapter > temp1: +0.0°C > temp2: +0.0°C > temp3: +0.0°C > temp4: +0.0°C > power1: 131.00 W (lowest = 7.00 W, highest = 186.90 W) > power2: 133.00 W (lowest = 8.50 W, highest = 159.10 W) > power3: 132.60 W (lowest = 8.70 W, highest = 155.80 W) > power4: 132.70 W (lowest = 8.80 W, highest = 156.00 W) > power5: 127.10 W (lowest = 8.80 W, highest = 155.00 W) > power6: 123.90 W (lowest = 8.90 W, highest = 151.40 W) > power7: 123.30 W (lowest = 9.00 W, highest = 148.40 W) > power8: 123.00 W (lowest = 9.30 W, highest = 146.40 W) > power9: 208.00 W (lowest = 67.00 W, highest = 267.00 W) > power10: 206.00 W (lowest = 68.00 W, highest = 232.00 W) > power11: 196.00 W (lowest = 81.00 W, highest = 227.00 W) > > But the hwmon sensors seem to be prom ohter places than i2c. Indeed, none of these sensors is on the SMBus. > mroos@x3550:/sys/bus/i2c/devices$ ls -al > total 0 > drwxr-xr-x 2 root root 0 Jul 1 14:50 . > drwxr-xr-x 4 root root 0 Jul 1 14:50 .. > lrwxrwxrwx 1 root root 0 Jul 1 14:50 i2c-0 -> ../../../devices/pci0000:00/0000:00:1f.3/i2c-0 > lrwxrwxrwx 1 root root 0 Jul 1 14:50 i2c-1 -> ../../../devices/pci0000:00/0000:00:1e.0/0000:01:01.0/i2c-1 > lrwxrwxrwx 1 root root 0 Jul 1 14:50 i2c-2 -> ../../../devices/pci0000:00/0000:00:1e.0/0000:01:01.0/i2c-2 > lrwxrwxrwx 1 root root 0 Jul 1 14:50 i2c-3 -> ../../../devices/pci0000:00/0000:00:1e.0/0000:01:01.0/i2c-3 > lrwxrwxrwx 1 root root 0 Jul 1 14:50 i2c-4 -> ../../../devices/pci0000:00/0000:00:1e.0/0000:01:01.0/i2c-4 > > So no i2c client drivers. > > devices/pci0000:00/0000:00:1f.3/i2c-0 is i801_smbus. Correct. > modprobe eeprom + decode-dimms shows not dimm info but here is some i2c > device now: > lrwxrwxrwx 1 root root 0 Jul 1 14:51 1-0050 -> ../../../devices/pci0000:00/0000:00:1e.0/0000:01:01.0/i2c-1/1-0050 > lrwxrwxrwx 1 root root 0 Jul 1 14:50 i2c-0 -> ../../../devices/pci0000:00/0000:00:1f.3/i2c-0 > lrwxrwxrwx 1 root root 0 Jul 1 14:50 i2c-1 -> ../../../devices/pci0000:00/0000:00:1e.0/0000:01:01.0/i2c-1 > lrwxrwxrwx 1 root root 0 Jul 1 14:50 i2c-2 -> ../../../devices/pci0000:00/0000:00:1e.0/0000:01:01.0/i2c-2 > lrwxrwxrwx 1 root root 0 Jul 1 14:50 i2c-3 -> ../../../devices/pci0000:00/0000:00:1e.0/0000:01:01.0/i2c-3 > lrwxrwxrwx 1 root root 0 Jul 1 14:50 i2c-4 -> ../../../devices/pci0000:00/0000:00:1e.0/0000:01:01.0/i2c-4 On LGA 2011 Socket systems, the memory sockets have a dedicated SMBus controller (there was a driver under development for it but I don't think it ever made it upstream) so it is expected that decode-dimms doesn't print anything. > However, this seems to be attached to ATi graphics so probably DDC. Indeed. > Reboot is working fine. > > SO how do I see if os working? Nothing in dmesg, reboot works so seems > OK? Well, upon loading the i2c-i801 driver should say something about interrupt use. Either: "SMBus using PCI interrupt" or: "SMBus using polling" and possibly other relevant messages. Can you check your dmesg for these messages? -- Jean Delvare SUSE L3 Support -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html