Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Desktop Environments
  • Search

[SOLVED] strange keyboard repeat issue in X after upgrade

Problems with GUI applications? Questions about X, KDE, Gnome, Fluxbox, etc.? Come on in. NOTE: For multimedia, go up one forum
Post Reply
Advanced search
13 posts • Page 1 of 1
Author
Message
TheDiviner
n00b
n00b
Posts: 13
Joined: Thu Mar 04, 2004 7:05 am

[SOLVED] strange keyboard repeat issue in X after upgrade

  • Quote

Post by TheDiviner » Mon Jul 27, 2009 6:55 am

After upgrading my kernel from gentoo-sources 2.6.25 to 2.6.30 I am getting strange keyboard repeat issues in X. The keyboard works correctly in the console, but when I start X the following behaviors occur:

1. Each character in the text portion of the keyboard (including backspace) repeats three times for each key press for example pressing 'a' displays 'aaa', '3' -> '333', '=' -> '===', etc.
2. pressing two keys in rapid successing interleaves the results for example pressing 'ab' quickly displays 'aabbab'
3. the four arrow keys, delete, home, end, page up, and page down each perform one action per key press as normal
4. pressing a number other than 0 on the keypad performs its alternate action, then displays two of the character, for example pressing '5' displays '55', pressing '1' moves the cursor to the end and displays '11', '7' moves the cursor to the beginning and displays '77', etc.
5. pressing keypad '0' toggles insert mode and displays '00'
6. the keypad operators behave as follows: '/' toggles insert mode and then displays '/', '*' -> '***', '-' -> '---', '+' -> '+++'
7. if either shift key is pressed and released, the behavior is modified until X is restarted such that pressing 'a' displays 'aAa', '1' -> '1!1', '=' -> '=+=', etc.
8. after shift has been pressed, the keypad behavior changes such that the numbers perform their alternate action, then display the number only once, not twice
9. the caps lock and num lock keys work correctly
10. I have not been able to determine the exact workings of the tab, alt, ctrl, and super (win) keys yet
11. The main 'enter' key seems to perform its action 3 times as well, where as the keypad enter key seems to fire just once

Needless to say this makes doing anything nearly impossible. I can login with GDM by typing the first char of my username, then the left arrow twice and delete twice to get a single first char. I can repeat that for each char in the username, then hit keypad enter and do the same for my password to actually log into gnome, but this is very tedious and the keyboard repeat issues continue after logging in.

There are also issues with the mouse once logged into Gnome, for example I cannot single click on a File menu to keep it open, I MUST hold the left button down. I believe the mouse and keyboard issues are probably related.

The ONLY thing I did before this behavior started was upgrade my kernel so I highly suspect there is some kernel option I used or should have used that is causing this. If I boot into my old kernel everything works correctly again. In case it's relevant, I had this issue before when upgrading to 2.6.28, but I just moved back to 2.6.25 hoping it would go away if I waited and moved to a higher kernel version later on.

Here is my xorg.conf (with comments removed):

Code: Select all

Section "Module"

    Load        "dbe"   # Double buffer extension

    SubSection  "extmod"
      Option    "omit xfree86-dga"   # don't initialise the DGA extension
    EndSubSection

EndSection

Section "Files"

    FontPath   "/usr/share/fonts/misc/"
    FontPath   "/usr/share/fonts/Type1/"
    FontPath   "/usr/share/fonts/100dpi/"
    FontPath   "/usr/share/fonts/75dpi/"

EndSection

Section "ServerFlags"

    Option "AllowEmptyInput" "off"

    Option      "AIGLX" "on"
    Option      "Xinerama" "0"

EndSection

Section "InputDevice"

    Identifier  "Keyboard1"
    Driver      "kbd"

    Option "AutoRepeat" "500 30"

    Option "XkbRules"   "xorg"
    Option "XkbModel"   "logiclx300"
    Option "XkbLayout"  "us"

EndSection

Section "InputDevice"

    Identifier  "Mouse1"
    Driver      "mouse"
    Option "Protocol"    "Auto" # Auto detect
    Option "Device"      "/dev/input/mice"

    Option "ZAxisMapping"   "4 5 6 7"

EndSection

Section "Monitor"
    Identifier  "Samsung 226bw"
    HorizSync   30-81
    VertRefresh 56-75
EndSection

Section "Device"
    Identifier  "Standard VGA"
    VendorName  "Unknown"
    BoardName   "Unknown"
    Driver     "vga"

EndSection

Section "Device"
    Identifier  "Nvidia 7600GS"
    Driver      "nvidia"
    Option      "AddARGBGLXVisuals" "True"
EndSection

Section "Screen"
    Identifier  "Screen 1"
    Device      "Nvidia 7600GS"
    Monitor     "Samsung 226bw"
    DefaultDepth 24
    Option      "AddARGBGLXVisuals" "True"

    Subsection "Display"
        Depth       8
        Modes       "1680x1050" "1440x900" "1280x1024" "1280x720" "1024x768" "800x600" "640x480"
        ViewPort    0 0
    EndSubsection
    Subsection "Display"
        Depth       16
        Modes       "1680x1050" "1440x900" "1280x1024" "1280x720" "1024x768" "800x600" "640x480"
        ViewPort    0 0
    EndSubsection
    Subsection "Display"
        Depth       24
        Modes       "1680x1050" "1440x900" "1280x1024" "1280x720" "1024x768" "800x600" "640x480"
        ViewPort    0 0
    EndSubsection
EndSection

Section "ServerLayout"

    Identifier  "Simple Layout"
    Screen "Screen 1"
    InputDevice "Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"

EndSection

Section "Extensions"
        Option "Composite" "enable"
EndSection
Here is my make.conf:

Code: Select all

# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j3"

ACCEPT_KEYWORDS="~x86"

USE="a52 aac acpi alsa apache apache2 -arts artworkextra automount avahi bash-completion beagle branding bzip2 cairo cddb cdr daap dbus deskbar devhelp dts dvd dvdr dvi emerald encode esd exif ffmpeg firefox flac gcj gd gif gimp glade glitz gnome gnome-keyring gnome-print gphoto2 gstreamer gtk guile hal howl ieee1394 imagemagick inherit-graph ipod java jpeg -kde kerberos latex mad mdb mmx mono mpeg mp3 msn mysql mysqli nautilus network networkmanager nfs odbc offensive ogg opengl oss pdf php plotutils png policykit posix pulseaudio raw samba scanner sftp smp soap sockets sourceview spell sqlite3 sse sse2 -startup-notification subversion svg syslog tetex theora threads tiff tokenizer truetype usb valgrind vorbis win32codecs wmf X xcomposite xforms xine xinetd xml xpm xprint xscreensaver xsl xulrunner xv xvid zip"
INPUT_DEVICES="evdev keyboard mouse"
VIDEO_CARDS="i810 nv nvidia vesa vga"
CAMERAS="canon ptp2"
LINGUAS="en_US"

PORTDIR_OVERLAY="/usr/local/portage"

source /usr/local/portage/layman/make.conf
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"
If any other information might be helpful, let me know. Any help with this issue would be greatly appreciated.
Last edited by TheDiviner on Wed Jul 29, 2009 3:29 am, edited 1 time in total.
Top
TheDiviner
n00b
n00b
Posts: 13
Joined: Thu Mar 04, 2004 7:05 am

  • Quote

Post by TheDiviner » Mon Jul 27, 2009 8:15 am

After doing some more digging around, it seems this is actually an issue with evdev. My old kernel did not have evdev support built in so it was apparently falling back to the legacy kbd and mouse drivers.

I can fix the keyboard and mouse issues by forcing X to fall back to the legacy drivers by adding the following to my ServerFlags section:

Code: Select all

Option        "AutoAddDevices"        "false"
This is acceptable for now, but I'd really like to get evdev working if possible, so if anyone has any ideas as to what might be causing the problem I'd be interested. I suspect it's some sort of issue with an fdi setting in hal or something.
Top
VoidMage
Watchman
Watchman
User avatar
Posts: 6196
Joined: Sat Oct 14, 2006 8:43 am

  • Quote

Post by VoidMage » Mon Jul 27, 2009 8:39 am

TheDiviner wrote:After doing some more digging around, it seems this is actually an issue with evdev. My old kernel did not have evdev support built in so it was apparently falling back to the legacy kbd and mouse drivers.
I doubt that. While I'm not sure when exactly /dev/input/event* interface appeared in the kernel,
IIRC it was long before 2.6.25. Your problem was from the start

Code: Select all

Option "AllowEmptyInput" "off"
This does something different than many posts here (and on other pages) claim.
Multiple keys registered on single keypress is caused simply by your config.
The above mentioned option, combined with having both evdev and kbd driver installed,
results in xorg-sever registering one keyboard multiple times.
Top
TheDiviner
n00b
n00b
Posts: 13
Joined: Thu Mar 04, 2004 7:05 am

  • Quote

Post by TheDiviner » Tue Jul 28, 2009 4:54 am

Thanks for the information.

I'm having trouble finding the configuration error that is causing my keyboard to be registered multiple times.

In lshal, there is only one udi such that input.keyboard is included in info.capabilities. Should this mean that hal is registering only a single keyboard and the other registrations are happening somewhere else?

I tried to remove all of the input sections from my xorg.conf file, then restart hal and restart X, but that didn't have any effect.

I'm open to any suggestions that anyone may have on where I should start to look for a configuration problem causing this.
Top
Mike Hunt
Watchman
Watchman
User avatar
Posts: 5287
Joined: Sun Jul 19, 2009 11:01 pm

  • Quote

Post by Mike Hunt » Tue Jul 28, 2009 5:00 am

What happens if you don't use an xorg.conf?
Top
TheDiviner
n00b
n00b
Posts: 13
Joined: Thu Mar 04, 2004 7:05 am

  • Quote

Post by TheDiviner » Tue Jul 28, 2009 5:58 am

Using no xorg.conf seems to fix the keyboard issue, but it apparently uses the nv driver instead of nvidia. Also, I'm not sure how to tell if it is working with evdev, or if it is working because using no xorg.conf forces it to use the legacy keboard and mouse drivers.

I'll try tweaking my xorg.conf to see if there might be something else in there causing problems.
Top
Mike Hunt
Watchman
Watchman
User avatar
Posts: 5287
Joined: Sun Jul 19, 2009 11:01 pm

  • Quote

Post by Mike Hunt » Tue Jul 28, 2009 6:29 am

Please post your emerge --info
Top
TheDiviner
n00b
n00b
Posts: 13
Joined: Thu Mar 04, 2004 7:05 am

  • Quote

Post by TheDiviner » Tue Jul 28, 2009 7:08 am

emerge --info:

Code: Select all

Portage 2.1.6.13 (default/linux/x86/2008.0/desktop, gcc-4.3.3, glibc-2.10.1-r0, 2.6.30-gentoo-r4 i686)
=================================================================
System uname: Linux-2.6.30-gentoo-r4-i686-Intel-R-_Core-TM-2_CPU_6600_@_2.40GHz-with-gentoo-2.0.1
Timestamp of tree: Tue, 28 Jul 2009 05:00:01 +0000
app-shells/bash:     4.0_p28
dev-java/java-config: 2.1.8-r1
dev-lang/python:     2.5.4-r2, 2.6.2-r1
dev-python/pycrypto: 2.0.1-r8
dev-util/cmake:      2.6.4-r1
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.4.3-r3
sys-apps/sandbox:    2.0
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.5, 1.7.9-r1, 1.9.6-r2, 1.10.2, 1.11
sys-devel/binutils:  2.19.1-r1
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.30-r1
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="C"
LDFLAGS="-Wl,-O1"
LINGUAS="en_US"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/layman/desktop-effects /usr/local/portage/layman/gnome /usr/local/portage/layman/science /usr/local/portage/layman/sunrise /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa apache apache2 artworkextra automount avahi bash-completion beagle berkdb bluetooth branding bzip2 cairo cddb cdr cli cracklib crypt cups daap dbus deskbar devhelp dri dts dvd dvdr dvdread dvi eds emboss emerald encode esd evo exif fam ffmpeg firefox flac fortran gcj gd gdbm gif gimp glade glitz gnome gnome-keyring gnome-print gphoto2 gpm gstreamer gtk guile hal howl iconv ieee1394 imagemagick inherit-graph ipod ipv6 isdnlog java jpeg kerberos latex ldap libnotify mad mdb midi mikmod mmx mono mp3 mpeg msn mudflap mysql mysqli nautilus ncurses network networkmanager nfs nls nptl nptlonly odbc offensive ogg opengl openmp oss pam pcre pdf perl php plotutils png policykit posix ppds pppd pulseaudio python qt3 qt3support qt4 quicktime raw readline reflection samba scanner sdl session sftp smp soap sockets sourceview spell spl sqlite3 sse sse2 ssl subversion svg sysfs syslog tcpd tetex theora threads tiff tokenizer truetype unicode usb valgrind vorbis win32codecs wmf x86 xcomposite xforms xine xinetd xml xorg xpm xprint xscreensaver xsl xulrunner xv xvid zip zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 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 mmap_emul 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" CAMERAS="canon ptp2" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en_US" USERLAND="GNU" VIDEO_CARDS="i810 nv nvidia vesa vga"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Top
Mike Hunt
Watchman
Watchman
User avatar
Posts: 5287
Joined: Sun Jul 19, 2009 11:01 pm

  • Quote

Post by Mike Hunt » Tue Jul 28, 2009 7:25 am

Ok so if you put VIDEO_CARDS="nvidia"

and run emerge --depclean -pv carefully please to clean out the unused x11-drivers, then will X use nvidia w/o an xorg.conf file?

Otherwise this minimal xorg.conf might do the trick

Code: Select all

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
EndSection
Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
EndSection
Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection  
Top
TheDiviner
n00b
n00b
Posts: 13
Joined: Thu Mar 04, 2004 7:05 am

  • Quote

Post by TheDiviner » Wed Jul 29, 2009 3:28 am

Thanks, the minimal xorg.conf works great!
Top
Mike Hunt
Watchman
Watchman
User avatar
Posts: 5287
Joined: Sun Jul 19, 2009 11:01 pm

  • Quote

Post by Mike Hunt » Wed Jul 29, 2009 4:00 am

Ok, glad to help. :)
Top
piponazo
Tux's lil' helper
Tux's lil' helper
User avatar
Posts: 102
Joined: Sat Feb 09, 2008 2:55 pm
Location: Córdoba - Spain
Contact:
Contact piponazo
Website

  • Quote

Post by piponazo » Wed Aug 05, 2009 9:18 pm

I had a similar problem and removing the keyboard and mouse sections from xorg.conf now all runs correctly. Thanks for your replies ;)
La plaga tux! ;)
Top
rlittle
Apprentice
Apprentice
User avatar
Posts: 200
Joined: Wed Dec 17, 2003 9:59 pm

  • Quote

Post by rlittle » Tue Oct 13, 2009 4:04 am

This exact problem shows up on one of my machines when I attempt to upgrade xorg-server from 1.5 to 1.6. I'm going to recheck if I left "AllowEmptyInput" lines in my xorg.conf while I was fixing my evdev stuff. Thanks! It was killing me!
I need a better signature...
Top
Post Reply

13 posts • Page 1 of 1

Return to “Desktop Environments”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic