Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 205041

Summary: x11-drivers/xf86-input-evdev-1.2.0 breaks multi-head /multi-foot xorg layouts
Product: Gentoo Linux Reporter: Sumit Khanna <notify>
Component: Current packagesAssignee: Gentoo X packagers <x11>
Status: RESOLVED UPSTREAM    
Severity: major CC: dhp_gentoo, peper
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
URL: http://bugs.freedesktop.org/show_bug.cgi?id=19527
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 210710    
Attachments: xorg.conf
Server 0 Log
Server 1 Log

Description Sumit Khanna 2008-01-09 12:02:23 UTC
I currently have a multi-head/multi-leg system with two X servers running on two different video cards. I had a keyboard and mouse going to one and a keyboard and two mice going to the other.

With evdev-1.2.0, now all input events go to the first X server and nothing goes to the second. I am referencing most devices by name. I remember reading that 1.2.0 was masked due to needing hal-0.5.10 support. Is there a hotplug issue where an X server will see all USB devices as hotplugable and grab onto them without using what's statically defined in the X.org conf?

Also, my Logitech wireless mouse that is meant for the 2nd display..when it sends input to the first display, it can only move the mouse vertically, not horizontally similar to bug 199317

Reproducible: Always




Portage 2.1.4_rc14 (default-linux/amd64/2006.1/desktop, gcc-4.2.2, glibc-2.7-r1, 2.6.23-gentoo-r2 x86_64)
=================================================================
System uname: 2.6.23-gentoo-r2 x86_64 Intel(R) Pentium(R) D CPU 2.80GHz
Timestamp of tree: Wed, 09 Jan 2008 09:30:08 +0000
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7, 2.1.3
dev-lang/python:     2.3.6-r2, 2.4.4-r4, 2.5.1-r5
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.10-r5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O3 -march=nocona"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O3 -march=nocona"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac aalib acpi aim alsa amd64 audiofile berkdb bitmap-fonts browserplugin bzip2 cairo cdinstall cdparanoia cdr cli cracklib crypt cups dbus dri dts dvd dvdr dvdread eds emboss emul-linux-x86 encode exif fam ffmpeg firefox flac fortran ftp gdbm gif gnome gpm gstreamer gtk gtk2 gtkhtml hal iconv ipv6 isdnlog java jpeg kde ldap lirc log4j mad matroska midi mikmod mono mp3 mpeg msn mudflap mysql ncurses nls nptl nptlonly nsplugin nvidia offensive ogg oggvorbis opengl openmp pam pcre pda pdf perl png ppds pppd python qt3 qt4 quicktime readline reflection rtc samba sdl seamonkey session spell spl ssl svg tcpd theora truetype truetype-fonts type1-fonts unicode usb vcd vorbis wmf xinerama xml xorg xscreensaver xv xvid yahoo zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIRC_DEVICES="logitech" USERLAND="GNU" VIDEO_CARDS="nvidia trident"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Sumit Khanna 2008-01-09 12:03:37 UTC
Created attachment 140537 [details]
xorg.conf
Comment 2 Sumit Khanna 2008-01-09 12:07:17 UTC
Created attachment 140538 [details]
Server 0 Log
Comment 3 Sumit Khanna 2008-01-09 12:08:04 UTC
Created attachment 140540 [details]
Server 1 Log

Here we can see the second Xorg server can't grab any devices because the first one has attached onto them all
Comment 4 Sumit Khanna 2008-01-09 12:15:53 UTC
On an added note. Masking 1.2.0 and re-emerging doesn't help either. xorg is
configured with hal and it tries to grab the devices anyway and then segfaults
and two X servers compete for the same devices. I had to turn off hald and
remove it as a dependency from the xdm init script to get everything back to
normal 
Comment 5 DEMAINE Benoît-Pierre, aka DoubleHP 2008-01-15 09:15:12 UTC
I also have several regression bugs with X-1.4: bug 204401 and bug 194515

They dont seem to be related; but I think they are: X 1.4 introduce a new way to detect devices and for all those bugs it ends up with missdetected peripherals.

This morning I an having 2 more problems: layout broken (I have FR board and X defaulted me in US) and broken evdev/mouse so that the Y axis is inverted.

Visit bug 204128 ... that also tell about a HAL problem.
Comment 6 DEMAINE Benoît-Pierre, aka DoubleHP 2008-01-15 09:32:36 UTC
Before trying to mask sys-apps/hal-0.5.10 try to add
Option  "AutoAddDevices"        "False"
to your ServerLayout. It fixed my layout, but not my mouse. See http://bugs.gentoo.org/show_bug.cgi?id=200061#c22
Comment 7 Sumit Khanna 2008-01-15 14:13:02 UTC
I added  Option  "AutoAddDevices"        "False"

per someone in the #xorg chat room on irc.freenode.net

I now no longer had to disable hal before starting X, so I then tried to go back up to evdev 1.2. I removed the mask in /etc/portage/package.mask and when I strated X, I got the following in the logs:

(**) Option "CorePointer"
(**) MouseConsole: always reports core events
(EE) MouseConsole: cannot open input pEvdev
(II) UnloadModule: "evdev"
(EE) PreInit returned NULL for "MouseConsole"
(**) Option "CoreKeyboard"
(**) KeyboardConsole: always reports core events
(EE) KeyboardConsole: cannot open input pEvdev
(II) UnloadModule: "evdev"
(EE) PreInit returned NULL for "KeyboardConsole"


None of my devices worked. It was a fresh emerge of xf86-input-evdev-1.2 and I am still using the xorg.conf I attached previously. 
Comment 8 DEMAINE Benoît-Pierre, aka DoubleHP 2008-01-15 14:27:23 UTC
(In reply to comment #7)
>  I got the following in the logs:
> 
> None of my devices worked.

I had the same problem. Xstarted, but was not usable. I mean, USB mouse was broken, but, my PS2 touchpad was still working ... (got a touchpad on workstation ^^ )

Comment 9 Sumit Khanna 2008-02-12 03:01:18 UTC
This is still a major issue for me and I really think it's related to the Ctrl key modifier in combination with mouse clicks. There is an existing bug on the freedesktop.org Bugzilla and I've added my information to it. Cross referencing it here:

https://bugs.freedesktop.org/show_bug.cgi?id=14428
Comment 10 Sumit Khanna 2008-02-20 15:26:42 UTC
According to the freedesktop bugzilla, the "Name" directive was removed in 1.2 which is why 1.2 wasn't working per my earlier comment (would be nice if they updated the man page wouldn't it?) So I went back to "Device"

Someone also sent me an e-mail noticing in my logs that Xorg couldn't connect to acpid. In fact acpid wasn't set to start at boot! If I tried to start it, it said the file it reads from in /proc was in use (turns out hald was grabbing a hold of it).

If I stopped HAL, started acpid and then restarted HAL, then hal grabs the socket acpid sets up instead of /proc directly. Xorg also gets a hold of that socket and so does my nvidia driver.

My system now runs stable. Adding acpid to my runlevel and upgrading to evdev-1.2 fixed my lockup problem. 


Comment 11 DEMAINE Benoît-Pierre, aka DoubleHP 2008-02-20 15:49:50 UTC
> turns out hald was grabbing a hold of it

Starting the service at boot may behave a different way than manually. If you disable parallel start, and get acpid starting automatically, then, maybe it could start before hal, and thus, fix your problem. Testing boot services manually is not a revealant method.

Comment 12 Sumit Khanna 2009-01-13 05:01:47 UTC
This bug has been sitting here for a while. I had my dual-seat layout disabled until just recently. It worked fine when I first used it and then an emerge world killed it. I masked xf86-input-evdev-2.1.0 (dropping to 2.0.8) and my multi-seat worked again.

With xf86-input-evdev-2.1.0, the first screen would be shifted about 20% over. EVERY TIME I pressed enter (and sometimes randomly) it would start shifting again. It would also lock up after about 20 min. The entire problem was caused by evdev-2.1.0. 
Comment 13 Rémi Cardona (RETIRED) gentoo-dev 2009-02-02 15:44:07 UTC
(In reply to comment #12)
> This bug has been sitting here for a while. I had my dual-seat layout disabled
> until just recently. It worked fine when I first used it and then an emerge
> world killed it. I masked xf86-input-evdev-2.1.0 (dropping to 2.0.8) and my
> multi-seat worked again.
> 
> With xf86-input-evdev-2.1.0, the first screen would be shifted about 20% over.
> EVERY TIME I pressed enter (and sometimes randomly) it would start shifting
> again. It would also lock up after about 20 min. The entire problem was caused
> by evdev-2.1.0. 

Could you try again with a newer xorg-server (ideally 1.5.3-r1) along with evdev-2.1.2?

If you still have issues, please file a bug over to FreeDesktop (with "remi@gentoo.org" as a CC on it so I can keep track of it).

Thanks
Comment 14 Sumit Khanna 2009-02-02 19:15:29 UTC
I should have updated this. There is a bug with xorg here:

https://bugs.freedesktop.org/show_bug.cgi?id=19527

The solution being to turn on GrabDevices option in the xorg.conf
Comment 15 Rémi Cardona (RETIRED) gentoo-dev 2009-02-02 20:21:16 UTC
Alright, thanks for the follow up. I've CCed myself on the upstream bug, let's see if Peter improves the documentation a bit.

Thanks