[Kde-hardware-devel] Re: Review Request: Implement full Processor support in UDev backend

Alex Merry kde at randomguy3.me.uk
Tue Nov 23 00:45:20 CET 2010


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://svn.reviewboard.kde.org/r/5892/
-----------------------------------------------------------

(Updated 2010-11-22 23:45:20.033797)


Review request for Solid and Rafael Fernández López.


Changes
-------

Use sysfs interfaces.  For maxSpeed (as well as for the processor name and vendor), we fall back to parsing /proc/cpuinfo if we can't find the info from /sys.

I realised that the HAL backend gives misleading (ie: wrong) results for canChangeFrequency(), and that trying to emulate it is a mistake.  The HAL backend reports the value of can_throttle for this, but throttling is an entirely different (and deprecated) kettle of fish - throttling doesn't change the frequency, and does little to save power.  This, no doubt, is why this information isn't available from /sys.


Summary (updated)
-------

Implement support for all attributes of the Processor interface when using UDev.

With this patch, the udev backend does better than the hal one (notably, with linux 2.6.36, HAL's reporting of the throttling ability of a processor will break, as /proc/acpi/CPUX/info is removed in that kernel version; also, HAL does not report the processor vendor).

It might be good to do some caching of values, since there is a lot of opening and parsing files (although the opening and reading part should be fast on virtual filesystems, and there isn't a whole lot of text to parse).


This addresses bug 253667.
    https://bugs.kde.org/show_bug.cgi?id=253667


Diffs (updated)
-----

  /trunk/KDE/kdelibs/solid/solid/CMakeLists.txt 1199450 
  /trunk/KDE/kdelibs/solid/solid/backends/shared/udevqt.h 1199450 
  /trunk/KDE/kdelibs/solid/solid/backends/shared/udevqtdevice.cpp 1199450 
  /trunk/KDE/kdelibs/solid/solid/backends/udev/cpuinfo.h PRE-CREATION 
  /trunk/KDE/kdelibs/solid/solid/backends/udev/cpuinfo.cpp PRE-CREATION 
  /trunk/KDE/kdelibs/solid/solid/backends/udev/udevdevice.h 1199450 
  /trunk/KDE/kdelibs/solid/solid/backends/udev/udevdevice.cpp 1199450 
  /trunk/KDE/kdelibs/solid/solid/backends/udev/udevmanager.cpp 1199450 
  /trunk/KDE/kdelibs/solid/solid/backends/udev/udevprocessor.cpp 1199450 

Diff: http://svn.reviewboard.kde.org/r/5892/diff


Testing
-------

Reports information correctly on my computer.


Thanks,

Alex

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/kde-hardware-devel/attachments/20101122/d893ccd2/attachment.html 


More information about the Kde-hardware-devel mailing list