Bug 250013

Summary: Sensors applet failed to read /proc/* after upgrade to 2.6.22-.1-33.fc7
Product: [Fedora] Fedora Reporter: Edmond Hui <ymehui>
Component: gnome-applet-sensorsAssignee: Hans de Goede <hdegoede>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 7   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-08-03 09:02:26 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Attachments:
Description Flags
screenshot of error
none
ls -l from /proc/acpi none

Description Edmond Hui 2007-07-29 08:59:01 EDT
Description of problem:

The GNOME sensors applet failed to read sensor info from /proc after kernel upgrade.

Version-Release number of selected component (if applicable):
kernel-2.6.22.1-33.fc7
lm_sensors-2.10.3-2.fc7
gnome-applet-sensors-1.8.1-1.fc7

How reproducible:
reproducible every time

Steps to Reproduce:
1. upgrade to 2.6.22 kernel via yum
2. login to GNOME and add gnome sensor applet
3.
  
Actual results:
see attached screen shot

Expected results:
no impact

Additional info:
Comment 1 Edmond Hui 2007-07-29 08:59:01 EDT
Created attachment 160187 [details]
screenshot of error
Comment 2 Hans de Goede 2007-07-29 09:10:42 EDT
Its quite well possible that these files have moved, confusing the
sensors-applet, can you do:
ls -R /proc/acpi

And report the output here.

Also can you try adding the sensors applet to your panel a second time
(preferably to another panel if you have more then one) Then it will redetect
which sensors are there. Hopefully it will find the sensors in their new place,
then this can be fixed by simply removing the applet and then adding it again.
If the new applet doesn't find the sensors, then we will have to dig deeper.
Comment 3 Edmond Hui 2007-07-29 12:16:07 EDT
Only CPU sensor left after uninstall+re-install....
Comment 4 Edmond Hui 2007-07-29 12:17:38 EDT
Created attachment 160196 [details]
ls -l from /proc/acpi
Comment 5 Hans de Goede 2007-07-29 13:41:17 EDT
Hmm, no more acpi directory. I happen to have an 2.6.23 rc1 kenrel tree on my
disk, so I directly went to the ibm_acpi now thinkpad_acpi driver source, they
did some pretty major surgery on the interface to make it more standard (good),
but forgot to keep the old interface for backward compatibility (bad).

So this really is a kernel bug, but marking it as such isn't going to help you.
So instead I'll write libsensors support code for this, as the thinkpad_acpi
driver now uses the standard hwmon interface, which is supported in
gnome-applet-sensors through libsensors, but first libsensors must be thought
about the new thinkpad_acpi "chip"

Can you do an ls -R /sys/class/hwmon? If I'm right you will find your sensors
there, you can cat the _input files to get readings for now (until my patch is
done). Please let me know the output of ls -R /sys/class/hwmon, I will need that
to write libsensors support.

Also I will be going on vacation for 6 days starting tomorrow, so this will have
to wait till the next weekend, I hope to have something to test for you at the
end of the next weekend.
Comment 6 Edmond Hui 2007-07-29 22:43:34 EDT
no... it seems not that simple... 8(

#ls -R /sys/class/hwmon*
ls: cannot access /sys/class/hwmon*: No such file or directory

%114[ehui@mva]/sys/class#ls
backlight  graphics     mem            printer       scsi_host     usb_host
bluetooth  i2c-adapter  misc           rtc           sound         vc
dma        ieee80211    net            scsi_device   tty           vtconsole
dmi        input        pci_bus        scsi_disk     usb_device
firmware   leds         pcmcia_socket  scsi_generic  usb_endpoint


Thanks for looking into this.... have a good vacation. get back to me later.

cheers,
Comment 7 Hans de Goede 2007-07-30 02:49:07 EDT
Ah,

The driver got renamed too, so its probably not getting loaded because of this. Try:
modprobe thinkpad_acpi

And after that do the ls of both /proc/acpi and /sys/class/hwmon again. Also try
removing and adding the applet again.

Really leaving for vacation now :)
Comment 8 Edmond Hui 2007-07-30 08:14:22 EDT
indeed thinkpad_acpi is notloaded. after modprobe:

[root@mva ~]# ls /proc/acpi
ac_adapter  dsdt                 fadt  info            thermal_zone
battery     embedded_controller  fan   power_resource  video
button      event                ibm   processor       wakeup
[root@mva ~]# ls /sys/class/hwmon
hwmon0

see you when you are back.
Comment 9 Hans de Goede 2007-08-02 12:51:26 EDT
Hi back,

Could you do the following for me?:
ls -R /proc/acpi/ibm
ls -l /class/hwmon/hwmon0/device
cat /class/hwmon/hwmon0/device/name

And what happens if you remove and re-add the applet with the new driver loaded?
Comment 10 Edmond Hui 2007-08-03 08:23:13 EDT
Please see log below:

[root@mva ~]# ls -R /proc/acpi/ibm
ls: cannot access /proc/acpi/ibm: No such file or directory
[root@mva ~]# ls -l /class/hwmon/hwmon0/device
ls: cannot access /class/hwmon/hwmon0/device: No such file or directory
[root@mva ~]# cat /class/hwmon/hwmon0/device/name
[root@mva ~]# 
[root@mva ~]# !modp
modprobe thinkpad_acpi
[root@mva ~]# ls -R /proc/acpi/ibm
/proc/acpi/ibm:
beep       brightness  driver  hotkey  light    video
bluetooth  cmos        fan     led     thermal  volume
[root@mva ~]# ls -l /class/hwmon/hwmon0/device
ls: cannot access /class/hwmon/hwmon0/device: No such file or directory
[root@mva ~]# cat /class/hwmon/hwmon0/device/name
cat: /class/hwmon/hwmon0/device/name: No such file or directory


When I do a modprobe thinkpad_api and re-add, all senor is backed..... so I
guess the problem is thinkpad_api somehow not automatically load?
Comment 11 Hans de Goede 2007-08-03 09:02:26 EDT
Ah, so it was just the module name change, and the new version does have
backward compatibility, good!

Please open a new bug against udev for the not autoloading, I'm closing this one.

I still want to implement libsensors support for the now also available hwmon
interface though. So could you still do the following for me? :

[root@mva ~]# ls -l /class/hwmon/hwmon0/device
ls: cannot access /class/hwmon/hwmon0/device: No such file or directory
[root@mva ~]# cat /class/hwmon/hwmon0/device/name
cat: /class/hwmon/hwmon0/device/name: No such file or directory

My bad that should have been:
ls -l /sys/class/hwmon/hwmon0/device
cat /sys/class/hwmon/hwmon0/device/name
Comment 12 Edmond Hui 2007-08-06 10:36:09 EDT
k, will do.

Thanks for the help!
Comment 13 Edmond Hui 2007-08-06 10:52:50 EDT
bug opened: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=251015