Skip to contentSkip to conversation

Kernel 2.6.0 and i2c-viapro posible Bug

DISCUSSION Ivanovich 2 participants 3 messages Jan 9, 2004 – Jan 10, 2004

lore
Share & tools
lore

Ivanovich

author
#0 lore raw
Quoted 30 lines · Jean Delvare
Quoted 5 lines

I thinks that thgere is probably a bug in I2c-viapro module, cuz when i load i2c-viapro after loading w82781d, my computer just put very slow..., i try loading as modules in the kernel or built in, in both cases i have the same problem.

Quoted 7 lines

I use 2.6.0 Vanilla Kernel sources.
Please i will really apreciate if some one responde to this mail, put my adress in the CC field please cuz i not in the LKML. If someone need another information about my computer, config.. or somehting more, just ask for it.

Thanks.

Tested this on my own system with similar hardware (as far as i2c is concerned) under 2.6.1-rc2. I did not experience any slowdown.

Could you please provide the following information:

* Output of "lspci -n".

* Can you reproduce the problem with a 2.4.24 kernel and i2c+lm_sensors 2.8.2?

* Can you reproduce the problem with a 2.6.1-rc2 kernel?

* Can you reproduce the problem without ACPI support enabled into your kernel?

* Does the slowdown affect only the hard-disk drive?

Quoted 11 lines

* Does the speed come back to normal if you remove i2c-viapro?

* Does the slowdown occur if you load i2c-viapro before w83781d?

Yeah, I know, this is much work, but we need a hint to start digging.

Thanks.

Quoted 1 line

ACPI: RSDT (v001 ASUS   CUV4X_E

I have this very same board CUV4X_E and the same problem too (present in 2.6.0 and before)
The workaround i found is to not initialize the chip "modprobe w83781d init=0"

And answering some of your questions, yes, the slowdown is global, not only disk and it doesn't gets better if you unload the modules.

It's fixed in 2.6.1? going to download+compile and see if it works. Thanks!

#1 lore raw
Quoted 10 lines
Quoted 4 lines

I thinks that thgere is probably a bug in I2c-viapro module, cuz when i load i2c-viapro after loading w82781d, my computer just put very slow..., i try loading as modules in the kernel or built in, in both cases i have the same problem.

I have this very same board CUV4X_E and the same problem too (present in 2.6.0 and before)
The workaround i found is to not initialize the chip "modprobe w83781d init=0"

Quoted 4 lines

And answering some of your questions, yes, the slowdown is global, not only disk and it doesn't gets better if you unload the modules.

It's fixed in 2.6.1? going to download+compile and see if it works.

Could be fixed, because limits initialization has been removed from the w83781d driver. But since there is still some intialization stuff done, the problem may still be there. Please try and report. The "init=0" parameter is still there, so your workaround should still work.

If the problem is still present, I'd like you to do more tests. Edit the driver (drivers/i2c/chips/w83781d.c), look for the "w83781d_init_client" function. You'll find three blocks that are under a "init" conditional. I'd like you to disable each of them individually ("if (0) {" should do the trick) and see each time if the slowdown still occurs, so as to give us a hint on which command causes the slowdown.

Also, at the moment a slowdown occurs and if you have ACPI support enabled, could you please check the throttling level (and the frequency, if that applies to your CPU)? I suspect that the motherboard is hardwired so as to enable throttling on overheat detection. A faulty init of the w83781d could trigger such an alarm and enable throttling, resulting in the slowdown you notice. Well, that's just a wild guess, but still worth verifying IMHO.

Thanks.

Signature · 2 lines
Jean Delvare
http://www.ensicaen.ismra.fr/~delvare/
author
#2 lore raw
Quoted 4 lines · Jean Delvare

Could be fixed, because limits initialization has been removed from the w83781d driver. But since there is still some intialization stuff done, the problem may still be there. Please try and report. The "init=0" parameter is still there, so your workaround should still work.

Yes, seems fixed, slowdown no longer happens when loading the module in 2.6.1

But the via686a module doesn't get loaded when i "modprobe w83781d", just i2c_sensor. No trace of any bus module in lsmod, not needed?

And the temperatures of sensors temp_input2 (micro) and temp_input3 (external thermistor) seem to be halved. As reference, since i have no thermistor attached, the number shown for/sys/bus/i2c/devices/1-002d/temp3 (div 100) in 2.6.0 was 255 now is 127. Board temp (temp_input1) seems to be right.

Quoted 6 lines

If the problem is still present, I'd like you to do more tests. Edit the driver (drivers/i2c/chips/w83781d.c), look for the "w83781d_init_client" function. You'll find three blocks that are under a "init" conditional. I'd like you to disable each of them individually ("if (0) {" should do the trick) and see each time if the slowdown still occurs, so as to give us a hint on which command causes the slowdown.

Since it's working in 2.6.1 would it be of any use if I try this in 2.6.0 to further isolate the problem?

Quoted 7 lines

Also, at the moment a slowdown occurs and if you have ACPI support enabled, could you please check the throttling level (and the frequency, if that applies to your CPU)? I suspect that the motherboard is hardwired so as to enable throttling on overheat detection. A faulty init of the w83781d could trigger such an alarm and enable throttling, resulting in the slowdown you notice. Well, that's just a wild guess, but still worth verifying IMHO.

I think that's a good guess, I recall that with older versions of lm_sensors in 2.4.xx just after loading the driver (without init=0), the pc speaker would emit a very annoying high-pitch sound constantly, probably an overheat alarm?