hanging system (around a half second) during read from /proc/i8k

Bug #1179282 reported by raphzahn
66
This bug affects 12 people
Affects Status Importance Assigned to Milestone
i8kutils
Fix Released
Medium
vitorafsr

Bug Description

System: 13.04 on Dell Inspiron 17R SE (7720)
i8kutils (1.33)

during the read from the file /proc/i8k, the system hangs for around a half second.
e.g. following command let the system freeze for about a half second:
cat /proc/i8k

In fact, that the i8k driver reads the current temperatur and the current fan speed, the system hangs with the period of the specified timeout time.

Related branches

Revision history for this message
Jonathan Frye (fryfreek) wrote :

Workaround on my 17R N7110 was to disable the fan sensor in indicator-sensors as it was a false reported speed and the lag went away for me hope it helps

vitorafsr (vitorafsr)
affects: i8kutils (Ubuntu) → i8kutils
Revision history for this message
vitorafsr (vitorafsr) wrote :

Just a question: if disabling the fan sensor indicator in indicator-sensors stops the problem, it seems that the bug is in the indicator-sensors.

If possible, can someone disable indicator-sensors completely, and insert i8k kernel module and do a 'cat /proc/i8k' to see if the system freeze.

Revision history for this message
raphzahn (raphael-ku) wrote :

Hi vitorafsr,
how can I deactivate the fan sensor?
Where can I find indicator-sensors? Is this a additional package which has to be installed or comes it with Ubuntu by standard?

Revision history for this message
vitorafsr (vitorafsr) wrote :

Hi raphzahn,
one way to remove it is to use apt-get: 'sudo apt-get remove indicator-sensors'. If you conclude this program is not the cause of your problem, reinstall with 'sudo apt-get install indicator-sensors'.

Revision history for this message
vitorafsr (vitorafsr) wrote :

I don't know how to simple deactivate it!

Revision history for this message
raphzahn (raphael-ku) wrote :

Hi vitorafsr,
unfortunately, there is no package named "indicator-sensors" on Ubuntu Gnome 13.04.

I've uninstalled nearly everything, which sounds (psensor, lmsensor) to read the fan sensor, but no success.

Revision history for this message
vitorafsr (vitorafsr) wrote :

Perhaps you have installed 'indicator-sensors' from a 'tar.gz'. The project page of this package is the one below

https://launchpad.net/indicator-sensors/+download

In this case, to uninstall, it is needed to do 'sudo make uninstall' on the terminal. By the way, how did you install 'indicator-sensors'?

Revision history for this message
raphzahn (raphael-ku) wrote :

hi,
I never installed indicator-sensors.
I've searched for "indicator-sensors" on "/" level --> no results.

Revision history for this message
vitorafsr (vitorafsr) wrote :

So the question #2 was exclusive to Jonathan Frye (fryfreek).

Revision history for this message
vitorafsr (vitorafsr) wrote :

raphzahn (raphael-ku),

the information from 'cat /proc/i8k' is obtained by a series of function calls. I have a modified i8k kernel module which logs these times, and I thought you could use it to measure the times and post here. This way we can see if the 'freeze' is because the command 'cat /proc/i8k' is calling too many slow calls.

What needs to be done is compile the module i8k and insert it into kernel with 'insmod', instead of using the default in your system. The tar.gz is attached. To compile the module, issue 'make module'.

vitorafsr (vitorafsr)
Changed in i8kutils:
importance: Undecided → Medium
Revision history for this message
vitorafsr (vitorafsr) wrote :

raphzahn (raphael-ku),

just to show the information that is returned when the customized attached module is run, I put the result of my laptop below. The slowest call took ~5 miliseconds, and is for querying the speed of the right fan, which, in my case, does not exist (my laptop has just the left fun).

As in my case I had a slow call, I believe in some systems this call might be very slow, causing the freeze, and one way to solve this is avoid calling unnecessary calls. If it is the case, some fix in the kernel module must be done. But this needs to modify the kernel source code and is a hard process. So, I need some help to know the time of calling i8k_smm function in some system, to perform the necessary fix in the module. If you consider helping in this task, I can give you all necessary support.

Jun 28 18:39:31 vitor-laptop kernel: [12918.544079] i8k_smm function took 127 usecs
Jun 28 18:39:31 vitor-laptop kernel: [12918.544281] i8k_smm function took 103 usecs
Jun 28 18:39:31 vitor-laptop kernel: [12918.544453] i8k_smm function took 99 usecs
Jun 28 18:39:31 vitor-laptop kernel: [12918.544626] i8k_smm function took 107 usecs
Jun 28 18:39:31 vitor-laptop kernel: [12918.549856] i8k_smm function took 5050 usecs
Jun 28 18:39:31 vitor-laptop kernel: [12918.550100] i8k_smm function took 91 usecs

Best regards.

Revision history for this message
raphzahn (raphael-ku) wrote :

hi vitorafsr,

sorry for the very late response.

here are the results of your modified i8k module:

Aug 3 22:01:13 raph-laptop kernel: [ 424.989723] i8k_smm function took 745 usecs
Aug 3 22:01:13 raph-laptop kernel: [ 424.989805] i8k_smm function took 78 usecs
Aug 3 22:01:13 raph-laptop kernel: [ 424.990765] i8k_smm function took 937 usecs
Aug 3 22:01:13 raph-laptop kernel: [ 424.990842] i8k_smm function took 73 usecs
Aug 3 22:01:13 raph-laptop kernel: [ 425.490696] i8k_smm function took 488865 usecs
Aug 3 22:01:13 raph-laptop kernel: [ 425.490772] i8k_smm function took 72 usecs

The fivth time is about half a second, it seems to be the time of the system freeze.
Maybe this helps to locate the problem.

If you need more information, I will try to answer now faster.

Thanks for your time!

Best regards

Raph

Revision history for this message
raphzahn (raphael-ku) wrote :

hi again,

the trace above are the result from: "cat /proc/i8k"

the trace from "./i8kctl fan -0" are:

Aug 3 22:11:27 raph-laptop kernel: [ 1037.708451] i8k_smm function took 170 usecs
Aug 3 22:11:27 raph-laptop kernel: [ 1038.208917] i8k_smm function took 489446 usecs
Aug 3 22:11:27 raph-laptop kernel: [ 1038.209309] i8k_smm function took 379 usecs

there is the same huge time!

Best regards,

raph

vitorafsr (vitorafsr)
Changed in i8kutils:
status: New → In Progress
assignee: nobody → vitorafsr (vitorafsr)
Revision history for this message
vitorafsr (vitorafsr) wrote :

Hello raphzahn,

attached is the modified i8k.c. This version probes the fans at the beginning, and then just calls the ones present. This will avoid calling slow calls.

Only in the probe moment all of the fans are called and the system might freeze, but it may be during boot, and the freeze will not be noticed.

I hope this fixes the bug. If you can test this, in the log will appear which fans are being called.

Revision history for this message
raphzahn (raphael-ku) wrote :

Hi vitorafsr,

I've done again the same as before:
- make
- make module
- sudo insmod i8k.ko

After this, I tried "cat /proc/i8k" again, but unfortunately there is still the freeze.
I've added the timing-trace Addon from the last attached package.
Here is the log:

Aug 6 21:06:31 raph-laptop kernel: [ 127.105111] i8k_smm function took 733 usecs
Aug 6 21:06:31 raph-laptop kernel: [ 127.105118] i8k_get_fan_status called for fan 0
Aug 6 21:06:31 raph-laptop kernel: [ 127.106758] i8k_smm function took 1600 usecs
Aug 6 21:06:31 raph-laptop kernel: [ 127.106761] i8k_get_fan_speed called for fan 0
Aug 6 21:06:31 raph-laptop kernel: [ 127.606547] i8k_smm function took 488770 usecs
Aug 6 21:06:31 raph-laptop kernel: [ 127.606690] i8k_smm function took 127 usecs

There is still a call, which takes around a half second.

Best regards,
raph

Revision history for this message
raphzahn (raphael-ku) wrote :
Download full text (7.1 KiB)

Hi vitorafsr,

I changed a little bit the code on my own and tried some things.
Now, I think I found the problem.

First of all, I wanted to identify, which request to the i8k_smm function produces the huge freeze time.
Therefore I've traced als the regs variable. Here is the output of the trace:

Aug 11 00:43:54 raph-laptop kernel: [ 2610.061753] NEW CALL smm -------------------
Aug 11 00:43:54 raph-laptop kernel: [ 2610.061760] eax: 4259
Aug 11 00:43:55 raph-laptop kernel: [ 2610.061763] ebx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.061765] ecx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.061766] edx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.061768] esi: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.061769] edi: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.062884] i8k_smm function took 1106 usecs
Aug 11 00:43:55 raph-laptop kernel: [ 2610.062886] NEW CALL smm -------------------
Aug 11 00:43:55 raph-laptop kernel: [ 2610.062888] eax: 163
Aug 11 00:43:55 raph-laptop kernel: [ 2610.062891] ebx: 1
Aug 11 00:43:55 raph-laptop kernel: [ 2610.062893] ecx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.062894] edx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.062896] esi: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.062897] edi: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.063084] i8k_smm function took 192 usecs
Aug 11 00:43:55 raph-laptop kernel: [ 2610.063086] NEW CALL smm -------------------
Aug 11 00:43:55 raph-laptop kernel: [ 2610.063089] eax: 163
Aug 11 00:43:55 raph-laptop kernel: [ 2610.063101] ebx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.063109] ecx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.063117] edx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.063124] esi: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.063130] edi: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064184] i8k_smm function took 1073 usecs
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064186] NEW CALL smm -------------------
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064189] eax: 675
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064191] ebx: 1
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064192] ecx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064194] edx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064195] esi: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064197] edi: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064340] i8k_smm function took 150 usecs
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064342] NEW CALL smm -------------------
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064345] eax: 675 <<<<<< can be used to identify the call-type <<<<<
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064347] ebx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064349] ecx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064351] edx: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064353] esi: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.064356] edi: 0
Aug 11 00:43:55 raph-laptop kernel: [ 2610.564123] i8k_smm function took 488793 usecs
Aug 11 00:43:55 raph-laptop kernel: [ 2610.564127] NEW CALL smm -------------------
Aug 11 00:43:55 raph-laptop kernel: [ 2610.564129] eax: 37
Aug 11 00:43:55 raph-laptop kernel: [ 2610.564132] ebx: 0
Aug 11 00:43:55 raph-lapt...

Read more...

Revision history for this message
raphzahn (raphael-ku) wrote :

So, my conclusion:
It works for fan 1, because there is no fan 1.
Reading the fan speed from fan 0 takes that much time.

I've testes now also ./i8kctl fan - 0
to modify the fan speed.

It seems, that there are problems during reading and changing the fan speed.

Revision history for this message
vitorafsr (vitorafsr) wrote :

Hello raphzahn,

sorry for the late response.

I did some analysis and found the following.

The slow call is for querying the speed of the fan which IS present in the laptop. And, in this case, the function cannot be bypassed; the call must be made in order to know the speed. And now we reach a new problem.

This fact explain why the patch I sent in my last attachment did not worked properly: I thought the slow call happened for calling the speed of the absent fan.

So, the solution might be the one that follows, I think.

Each fan has three speeds: 0, 1 and 2. And these speeds are somehow stable. The solution is to measure each speed at boot time, and store in a variable. In the calls that follows, the kernel module will just read the state of the fan and print the associated speed, without calling the slow call. And I hope, again, that this solves.

 I'm working in the patch, and I will put it here as soon as I finish.

Answering your questions:
1. I don't know why there is a problem reading the fan speed. Perhaps it is hardware stuff :).
2. This is performed for two fans because some Dell notebook models have two fans.
3. In your example, the speed is 0, in the eighth column. If you try 'i8kfan - 2' before 'cat /proc/i8k', an number different from 0 might appear.

Revision history for this message
raphzahn (raphael-ku) wrote :

hi vitorafsr,

I see there two problems, with the additonal fan-speed variable.

1. There is no check, if the variable is syncron to the current fan-speed. I suspect, that the bios (or someone else) will change the fan-speeds also. So i8k has not the correct fan-speed.

2. I saw also the 0.5s freeze during changing the fan-speed.
I will retest it, to clarify if the freeze is also present during writing the fan-speed.

Maybe there is something wrong with the i8k_smm function.
Perhaps, the assembly code doesn't fit with the latest inspiron models. I think, there isn't a documentation, what the code is doing in i8k_smm, am I right?
Do you know, who Jonathan Buzzard is? Is it possible to contact him and verify if the code works also for newer Inspirons?

best regards
raph

Revision history for this message
vitorafsr (vitorafsr) wrote :

Hello raph,

you are right: storing the fan speed in a variable will report estimated speed instead of the real value. But what is another solution that do not call the i8k_smm function? We can not keep calling i8k_smm directly as it is certainly a 'freeze' call!

As far as I know, there is no doc about i8k_smm. I have searched the web for any single doc, and found almost nothing.

I don'know Jonathan Buzzard.

Vitor

Revision history for this message
TomL (tlukasiak) wrote :

I am experiencing similar hiccups when using i8kutils.

I was looking through the i8kmon script, and it doesn't seem that reading the fan speed is strictly mandatory. While reading from /proc/i8k in the read_i8k_status function performs the i8k_smm reads for all attributes, it's possible to selectively choose all fields except the speed by calling i8kctl instead of reading from /proc/i8k. In other words, modifying the read_i8k_status function in the i8kmon script can eliminate most of the slow i8k_smm calls, without needing to mess with the driver. Obviously, there is no way to bypass the long i8k_smm call when setting the state of the fan (to 0, 1, or 2) but this doesn't happen on a periodic update basis.

-TomL

Revision history for this message
vitorafsr (vitorafsr) wrote :

Hello.

Attached is a 'i8kmon' version that might fix the freeze. I modified it to probe fan speeds in the beginning, and use these values when necessary. And also I did selective read of values with 'i8kctl', avoiding read '/proc/i8k' directly. Thanks TomL. Although this 'i8kmon' file is intended to work without causing freeze, if someone do '# echo /proc/i8k' in terminal then will notice freeze as before due to the bug in the 'i8k' module. To completely solve the freeze, it is needed to submit a patch to the kernel mainline.

Please, test that. I plan to release this version as 1.38 in my ppa.

Vitor

vitorafsr (vitorafsr)
Changed in i8kutils:
status: In Progress → Fix Released
Revision history for this message
lifeDotArk (life-ark) wrote :

I have the 1.41 version installed on my computer, and this problem keeps going on.

I have a dell 14r 5420, and don't have a right fan, but it keeps hanging my system periodically.

Revision history for this message
Dmytro (neimovirne) wrote :

I can confirm this problem. I have a Dell Inspiron 17R SE 7720 notebook. And my fan after installing i8k is switched on and off every two seconds, and the system at this time freezes

I try uubuntu 11.10/12.04/12.10/13.04/13.10/14.04

This bug still unfixed

Revision history for this message
0cs935kb51-mail-wz6bkyhu4u (0cs935kb51-mail-wz6bkyhu4u) wrote :

I can confirm the above. Same laptop (17R SE 7720), same problem (/proc/i8k freezes)

root@Inspiron:/home/robus# i8kctl --version
i8kctl v1.6 05/30/2013
1.0 A15 61B8VW1 61 -1 2 -1 110760 -1 -1

Revision history for this message
Roman Bazalevsky (rvbglas) wrote :

Same problem on 17R.

Revision history for this message
Roman Bazalevsky (rvbglas) wrote :

rvb@athena:~# trace-cmd report -l
version = 6
CPU 1 is empty
CPU 3 is empty
cpus=4
     cat-9652 2.... 45671.274305: funcgraph_entry: 0.500 us | i8k_open_fs();
     cat-9652 2.... 45671.274326: funcgraph_entry: | i8k_proc_show() {
     cat-9652 2.... 45671.274326: funcgraph_entry: | i8k_get_temp() {
     cat-9652 2.... 45671.274326: funcgraph_entry: | i8k_smm() {
     cat-9652 0.N.. 45671.275315: funcgraph_exit: ! 986.669 us | }
     cat-9652 0.N.. 45671.275316: funcgraph_exit: ! 989.200 us | }
     cat-9652 0.N.. 45671.275316: funcgraph_entry: | i8k_get_fan_status() {
     cat-9652 0.N.. 45671.275317: funcgraph_entry: + 64.703 us | i8k_smm();
     cat-9652 0.N.. 45671.275382: funcgraph_exit: + 65.501 us | }
     cat-9652 0.N.. 45671.275382: funcgraph_entry: | i8k_get_fan_status() {
     cat-9652 0.N.. 45671.275382: funcgraph_entry: ! 1503.795 us | i8k_smm();
     cat-9652 0.N.. 45671.276887: funcgraph_exit: ! 1504.442 us | }
     cat-9652 0.N.. 45671.276887: funcgraph_entry: | i8k_get_fan_speed() {
     cat-9652 0.N.. 45671.276887: funcgraph_entry: + 63.090 us | i8k_smm();
     cat-9652 0.N.. 45671.276951: funcgraph_exit: + 63.740 us | }
     cat-9652 0.N.. 45671.276951: funcgraph_entry: | i8k_get_fan_speed() {
     cat-9652 0.N.. 45671.276952: funcgraph_entry: ! 501133.365 us | i8k_smm();
     cat-9652 0.N.. 45671.778086: funcgraph_exit: ! 501134.433 us | }
     cat-9652 0.N.. 45671.778086: funcgraph_entry: | i8k_get_fn_status() {
     cat-9652 0.N.. 45671.778087: funcgraph_entry: + 64.253 us | i8k_smm();
     cat-9652 0.N.. 45671.778152: funcgraph_exit: + 65.184 us | }
     cat-9652 0.N.. 45671.778155: funcgraph_exit: ! 503828.973 us | }

rvb@athena:~$ apt-show-versions i8kutils
i8kutils:amd64/trusty 1.41 uptodate

Revision history for this message
Roman Bazalevsky (rvbglas) wrote :

Looks like it freezes on reading speed of non-existant fan.

Meybe solution is to determine it once when loading and than even don't try to read it?

Revision history for this message
Roman Bazalevsky (rvbglas) wrote :

Look at i8k.c code.

When accessing via i8k_is_visible it's OK:

        if (index >= 4 && index <= 5 &&
            !(i8k_hwmon_flags & I8K_HWMON_HAVE_FAN1))
                return 0;

But when accessing via /proc/i8k fan speed is always read, even if system has no fan.

Revision history for this message
postadelmaga (postadelmaga) wrote :

Same bug on 14.10, so it looks unfixed to me. ( it also affect psensors, sensors and ik8's tools )

Revision history for this message
postadelmaga (postadelmaga) wrote :

fix is not working on 14.04

Revision history for this message
postadelmaga (postadelmaga) wrote :

I found some great workaround on my system so I'm sharing them here, the following info can also be useful to fix the issue in i8kutils.

I'm on ubuntu 14.10 using last i8kutils version version `i8kutils-1.42-45`.

The lag issue is triggered *only* when the system read the fan speed ( i8kutils read the speed also when you set it, that is way is lagging )

Here some workaround:

- Set the fan speed using sysfs avoid the lag:
`watch echo 255 > /sys/class/hwmon/hwmon2/pwm2`

- Fix lag in sensors and psensor:
add this file `/etc/sensors.d/dell.conf` with the following content:
############
# Disable the fan speed sensor read
chip "i8k-virtual-0"
 ignore fan2
############

How to reproduce the lag:
`watch cat /sys/class/hwmon/hwmon2/fan_input2`

Suggested fix for the i8kutils:
So If it was possible to avoid the read speed while you set it in i8kutil, I think this will make the trick

I hope it helps ;)

Revision history for this message
postadelmaga (postadelmaga) wrote :

Sorry I have to correct myself:

Set the fan speed using sysfs does NOT avoid the lag ( the above command was wrong, that is why I was not experiencing the lag ).

Revision history for this message
Wacław Łabuda (tulcia6) wrote :

Hi,
I have Dell 17R SE 7720 running ubuntu 14.04. I`m using laptop-mode-tools but it doesn`t work fine for me. I tried i8k but same like other users here it makes freezes of system every time before fan starts working. I can see it the most in videos on e.g. YT.
What should I paste here to help improve this, I need to work on ubuntu and fan noise is terrible. It would be perfect if this i8k finally works good. Please help

Revision history for this message
vitorafsr (vitorafsr) wrote :

Hi,

I'm going to help you, the most I can.

To better understand what is happening, please follow what the steps in this post

https://bugs.launchpad.net/i8kutils/+bug/1349176/comments/11

Cheers.

Revision history for this message
raphzahn (raphael-ku) wrote :

Hi,

I think, the root cause, why we all want to use i8k is on the one hand the sensor features, but the more interresting thing on the other hand, the control of the fan to avaid unneeded noise.

In the meanwhile, I figured out that the noise can be nearly completely avoided by using powertop.

Just install it and open it by using "sudo powertop".
On the last tab "Einstellungen" (in the german version), you can improve the the setting of the system, to avoid unneeded Controller-Wakeups and even a few things more.
Usually, I set everything to "Good" except the wlan-Interface (wlan not, because this leads to bad wifi-connection).

Perhaps this helps some of you.
With powertop, you won't hear the fan as long as you do normal office stuff (browser, office, editor, ...).
For sure, the fan will get active if you run any application which will stress the cpu/gpu.

Have a nice day,
raphzahn

Revision history for this message
0cs935kb51-mail-wz6bkyhu4u (0cs935kb51-mail-wz6bkyhu4u) wrote :

Inspiron 17 SE

functions time
i8k_get_bios_version() = 0.502644
i8k_get_machine_id() = 0.000004
i8k_get_cpu_temp() = 0.000891
i8k_get_fan_status() = 0.000078
i8k_get_fan_status() = 0.000982
i8k_get_fan_speed() = 0.000078
i8k_get_fan_speed() = 0.500488
i8k_get_power_status() = 0.000074
i8k_get_fn_status() = 0.000074
i8k_set_fan() = 0.000077
i8k_set_fan() = 0.000075
i8k_set_fan() = 0.000077
i8k_set_fan() = 0.500910
i8k_set_fan() = 0.501688
i8k_set_fan() = 0.501599

Revision history for this message
Marcin Sągol (soee) wrote :

I have the same lag problem on Dell 17R SE 7720 when fan speed changes. Executing manually /cat /proc/i8k makes the lag to.

Revision history for this message
Petar Bojovic (petar-bojovic-paxy) wrote :

Same issue Dell Inspiron N7110
Ubuntu 15.04

root@paxy-ubuntu:~# i8kctl --version
i8kctl v1.6 05/30/2013
1.0 A06 GK4PSQ1 78 -1 0 -1 0 -1 -1

Revision history for this message
Guy (guy-b) wrote :
Download full text (5.0 KiB)

Hi,

I'm affected on a Dell Precision M3800 (2015). I ear an micro cut when the fans starts while listenning to a web radio.

The M3800 has two fans (CPU/GPU). Only one (Right Fan) is detected but both are controlled and running at the same speed. I don't know if it's the "normal" beaviour that only one of them is seen by i8k ?

i8k-virtual-0
Adapter: Virtual device
Right Fan: 69000 RPM
CPU: +40.0°C

Anyway, cat /proc/i8k doesn't produce any freeze but fills my syslog with low memory corruption spams :

02-28 05:50 kernel: [ 9235.657273] Corrupted low memory at ffff880000003a38 (3a38 phys) = 10000067
02-28 05:50 kernel: [ 9235.657273] Corrupted low memory at ffff880000003a40 (3a40 phys) = 1000006770
02-28 05:50 kernel: [ 9235.657274] Corrupted low memory at ffff880000003a48 (3a48 phys) = 100000678000
02-28 05:50 kernel: [ 9235.657275] Corrupted low memory at ffff880000003a50 (3a50 phys) = 10000067900000
02-28 05:50 kernel: [ 9235.657276] Corrupted low memory at ffff880000003a58 (3a58 phys) = 10000067a0000000
02-28 05:50 kernel: [ 9235.657277] Corrupted low memory at ffff880000003a60 (3a60 phys) = 67b000000000
02-28 05:50 kernel: [ 9235.657278] Corrupted low memory at ffff880000003a68 (3a68 phys) = 67c00000000010
02-28 05:50 kernel: [ 9235.657279] Corrupted low memory at ffff880000003a70 (3a70 phys) = 67d0000000001000
02-28 05:50 kernel: [ 9235.657280] Corrupted low memory at ffff880000003a78 (3a78 phys) = e000000000100000
02-28 05:50 kernel: [ 9235.657280] Corrupted low memory at ffff880000003a80 (3a80 phys) = 10000067
02-28 05:50 kernel: [ 9235.657281] Corrupted low memory at ffff880000003a88 (3a88 phys) = 10000067f0
02-28 05:50 kernel: [ 9235.657288] ------------[ cut here ]------------
02-28 05:50 kernel: [ 9235.657294] WARNING: CPU: 2 PID: 7877 at /build/linux-lts-utopic-b0JtBC/linux-lts-utopic-3.16.0/arch/x86/kernel/check.c:140 check_for_bios_corruption+0x10f/0x120()
02-28 05:50 kernel: [ 9235.657295] Memory corruption detected in low memory
02-28 05:50 kernel: [ 9235.657296] Modules linked in: xt_multiport nvram msr appletalk ipx p8023 p8022 psnap llc i8k hid_multitouch usbhid hid bbswitch(OE) snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic nls_iso8859_1 arc4 ip6t_REJECT xt_hl ip6t_rt nf_conntrack_ipv6 nf_defrag_ipv6 ipt_REJECT xt_LOG xt_limit xt_tcpudp xt_addrtype nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack ip6table_filter ip6_tables nf_conntrack_netbios_ns nf_conntrack_broadcast intel_rapl x86_pkg_temp_thermal nf_nat_ftp nf_nat intel_powerclamp nf_conntrack_ftp kvm_intel nf_conntrack dell_wmi sparse_keymap iptable_filter kvm mxm_wmi iwlmvm ip_tables x_tables crct10dif_pclmul mac80211 snd_hda_intel snd_hda_controller crc32_pclmul snd_hda_codec snd_hwdep aesni_intel aes_x86_64 dell_laptop snd_pcm lrw dcdbas iwlwifi gf128mul glue_helper ablk_helper snd_seq_midi cryptd snd_seq_midi_event rtsx_pci_ms snd_rawmidi memstick serio_raw i915 snd_seq cfg80211 snd_seq_device snd_timer lpc_ich snd drm_kms_helper drm video soundcore i2c_algo_bit int3403_thermal dell_rbtn wmi mei_me dell_smo8800 shpchp mei coretemp rtsx_pci_sdmmc ahci psmouse libahci rtsx_pci [last unloaded: nvidia]
02-28 05:50 kernel: [ 9235.657347] CPU: ...

Read more...

Revision history for this message
Guy (guy-b) wrote :

By launching i8k as deamon I got a bit more (usefull ?) infos :

i8kmon -d
reading system config file
i8kmon v1.31 12/05/2014 - Copyright (C) 2013-2014 Vitor Augusto <email address hidden>
config(0) = {-1 0} -1 40 -1 40
config(1) = {-1 1} 40 60 40 60
config(2) = {-1 2} 53 128 53 128
config(3) = {2 2} 70 128 75 128
config(acpi) = acpi
config(auto) = 1
config(daemon) = 1
config(font1) = fixed
config(font2) = 6x10
config(geometry) =
config(i8kfan) = /usr/bin/i8kfan
config(min_speed) = 2000
config(sysconfig) = /etc/i8kmon.conf
config(t_high) = 80
config(timeout) = 20
config(unit) = C
config(use_conf) = 1
config(userconfig) = ~/.i8kmon
config(verbose) = 1
status(ac) = 0
status(acpi_timer) = 0
status(leftspeed) = 0 -1 -1 -1
status(lspeed) = 0
status(lstate) = -2
status(lstuck) = 0
status(nfans) = 2
status(rightspeed) = 0 2200 4700 4800
status(rspeed) = 0
status(rstate) = -2
status(rstuck) = 0
status(state) = 0
status(t_high) = 0
status(t_low) = 0
status(temp) = 0
status(timer) =
status(ui) = 0

Revision history for this message
Guy (guy-b) wrote :

Same problems with Archlinux :

https://bbs.archlinux.org/viewtopic.php?id=204391

And only one fan detected on the M3800 (comment 8) :

https://bugzilla.kernel.org/show_bug.cgi?id=112021

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related questions

Remote bug watches

Bug watches keep track of this bug in other bug trackers.