Michael Tokarev [2009-12-25 1:51 +0300]: > > Not really :( We print in groups of longs so it is either 32 or 64 bits > > worth of data per number. > > Ok, I stand corrected. I verified the issue with 32bit kernel, and > there, hald works as expected, listing `synaptics' as x11_driver > and correct input.touchpad capability.
Just to have all the data, could you please find the input device number (from lshal, as you did before), and send the output of cat /sys/class/input/inputX/capabilities/key (replace X with the particular input device number) under a 32 and 64 bit system? Also, do you get correct or wrong ID_INPUT_* flags for the synaptics device in "udevadm info --export-db|less"? I expect it to be wrong as well, since it's pretty much the same code. udev/hal already use sizeof(long) to determine the length of a long word length, and it doesn't seem to happen everywhere. (I am running a 64 bit kernel/userspace and get correct results). I might have misunderstood you, but did you actually try to run a 64 bit kernel under 32 bit userspace? That would explain the bug, since hal/udev were compiled with the assumption that sizeof(long) == 4, while the kernel prints those in groups of 8 bytes. So if we want to support mixed kernel/userspace word lenghts, we need to change the logic to do a dynamic word size detection based on uname(). Martin -- Martin Pitt | http://www.piware.de Ubuntu Developer (www.ubuntu.com) | Debian Developer (www.debian.org) _______________________________________________ Pkg-utopia-maintainers mailing list [email protected] http://lists.alioth.debian.org/mailman/listinfo/pkg-utopia-maintainers
