FreeBSD: how PNG killed my touchpad

I wanted to install R, a scientific software package for statistical analysis and data visualization, on my FreeBSD box real quick. R can output its graphs to PNG images, among others. libpng was bumped recently to a new revision using a new interface. I didn't expect this to be a great hassle, but I had to find out the hard way that just about every installed port depends on PNG support. As R pulled in the new version of libpng, I had to update all packages that depend on this library. Rebuilding these ports from the sources takes a day or two. This is not unusual. But in my case it had some interesting side effects.

Among others, was updated too. I've set up my laptop so that I can use both the synaptics touchpad and an external USB mouse if I find that more convenient. In contrast to my original configuration (see here) I had switched off moused (using 'moused_enable="NO"' in /etc/rc.conf) in order to be able to use both touchpad and external mouse in an X session. X handled both real fine if the external mouse was used as /dev/sysmouse and the touchpad as /dev/psm0.

After rebuilding all packages was finished, I restarted the box just to find out that Xfce, which was upgraded to 4.10 from 4.8, had become sluggish and that the touchpad was working randomly, if at all. The Xorg log file gave a clue as it contained errors like:

xf86OpenSerial: Cannot open device/dev/psm0. Device busy.

This apparently caused X to use a default mouse driver to access the touchpad with ill effects. The underlying reason seems to be that X uses HAL to find and access its input devices. HAL apparently fails to talk to /dev/psm0 and thus wreaks havoc on my setup.

Googling pointed to a viable workaround:

1. Rebuild xorg-server with HAL support disabled: Change to /usr/ports/x11-servers/xorg-server and run "make config". Disable HAL support. Then run "make && make install && make clean" as usual.

2. Let moused handle USB mice: set 'moused_enable="YES"' in /etc/rc.conf

This cured the problem for me. Lets see what happens after the next upate.


Noch keine Kommentare

Mein Kommentar

Dieser Artikel ist geschlossen. Keine Kommentare mehr möglich.