Description of problem: I have a Dell Latitude D610 laptop, which has the volume buttons nominally controlled by the i8kbuttons binary in the i8kutils package. However, i8kbuttons fails at boot time, nor can it be started later. Running with strace shows this to be the failing step: ioctl(3, I8K_FN_STATUS, 0xbfac0404) = -1 EINVAL (Invalid argument) The i8k kernel module is successfully loaded, as witnessed by lsmod: i8k 6233 0 Just to be clear here, I verified that the i8k module was loaded BEFORE attempting to start i8kbuttons. The contents of /proc/i8k are: 1.0 A05 72JDS81 36 -22 1 27660 68940 -1 -22 Version-Release number of selected component (if applicable): i8kutils-1.25-8.fc5 How reproducible: Always, on my hardware Steps to Reproduce: 1. Install i8kutils on a Dell Latitude D610 2. Watch for a failed message from /etc/rc.d/init.d/i8kbuttons at bootup 3. Actual results: i8kbuttons fails on an ioctl call Expected results: i8kbuttons should run, since I do have the volume control buttons it controls Additional info: This problem has been reported to gentoo also, but with no resolution as yet: http://bugs.gentoo.org/show_bug.cgi?id=115756 It has also been discussed briefly on linux.debian.laptop: http://groups.google.com/group/linux.debian.laptop/browse_thread/thread/2fb4d763da111770/80bfa032984cc0f6?lnk=st&q=i8kbuttons+ioctl+failed&rnum=1&hl=en#80bfa032984cc0f6
Have you tried using the "System" -> "Preferences" -> "Keyboard Preferences" utility that GNOME offers directly? It is quite possible that the i8kbuttons is only needed on older Dell laptops : I had an Inspiron 8000 where it was needed to get the buttons to do something, but on a newer Inspiron 8600 (the D610 is even newer) the special buttons seem to send normal key codes properly by default.
Sure enough. It looks like the "inspiron" keyboard layout is in fact the closest to what I actually have on this Latitude. Thanks for the tip.
OK, then what I'll do it simply update the init script in order to have it disabled by default, since it doesn't make sense for all users who install the package to have it running. It's only confusing as you report shows!
I've just submitted a build in Extras development of a new package which contains quite a few enhancements. By default it now only loads the i8k kernel module (required to get the service tag and control fans), and editing an "i8k" file in /etc/sysconfig/ is required to get the i8kbuttons daemon to run too. Should get things working on modern hardware and be less confusing to users.