Warning: evdev changes - no auto-grabs anymore

Peter Hutterer peter.hutterer at who-t.net
Wed Aug 13 21:43:37 PDT 2008

Just a warning to all evdev users. I just pushed a fix to disable device grabs
by default to evdev git (not X active/passive grabs, EVIOCGRAB ones).

If you grab a device, you will stop it from sending events to /dev/input/mice,
/dev/kbd, but breaks other (virtual) devices such as the Macintosh mouse
button emulation and rfkill.  We used to do it because it guaranteed that we
wouldn't open the same event twice. This can only be classified as
misbehaviour if we're breaking other stuff, and can usually be traced to a
misconfiguration of the server.

This may cause duplicate events in the following cases:
P: xorg.conf uses "kbd" and "mouse" drivers but also relies on hotplug.
S: get rid of these sections and surrender to hotplug already. 

P: xorg.conf uses an "evdev" device but that device is also hotplugged.
S: you should move the configuration into HAL's fdi file and remove it from
your xorg.conf.

P: xorg.conf references the same evdev device twice.
S: ++ out of cheese error, redo from start ++ 

Nevertheless, if you do want to grab the device, the option "GrabDevice" is
available now.

I'll leave evdev 2.0.x as-is, but this behaviour will be default in 2.1 which
I can hopefully roll out before September.


More information about the xorg mailing list