I am using a MS Wireless Intellimouse explorer v2.0. It behaves different from other mice in that its WHEEL events can have values that are greater than 1 and less than -1 in a single event. When these values exceed a certain threshold (which seems to be around 8 or 10), X.org will send a wrong event, possibly due to overflow in its mouse driver. I have the following xorg.conf section: Identifier "Mouse1" Driver "mouse" Option "Protocol" "evdev" Option "Device" "/dev/input/event1" Option "Buttons" "9" Option "ZAxisMapping" "6 7 8 9" Option "Dev Phys" "usb-0000:00:10.1-1/input0" Option "Resolution" "1200" Specifically, the WHEEL events (dz) overflow into HWHEEL events (dw). This may be important since the problem did not manifest itself before HWHEEL was enabled. (sorry if this should actually go into freedesktop's bugzilla, but gentoo applies a lot of patches, and the source of the problem may be one of the patches) Reproducible: Always Steps to Reproduce: 1. Get a mouse (possibly a fake one using uinput) that will produce large value WHEEL events, and also has HWHEEL events. 2. Configure the zaxismapping to handle both WHEEL and HWHEEL 3. Scroll vertically really fast 4. Watch the buttons that correspond to horizontal scroll appear in xev. Actual Results: Wrong button events are firing. Expected Results: send multiple button events for the vertical scroll I have a feeling that X.org can not handle any WHEEL events that are not -1 or 1. In fact it may be the case that those fast scroll events are being reduced to single scroll. I.e. WHEEL +4 is actually handled as WHEEL +1. Portage 2.0.50-r10 (default-amd64-2004.2, gcc-3.3.4, glibc-2.3.4.20040619-r1, 2. 6.8.1) ================================================================= System uname: 2.6.8.1 x86_64 AMD Athlon(tm) 64 Processor 3500+ Gentoo Base System version 1.4.16 distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CFLAGS="-pipe -O2" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2 /share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/ config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/shar e/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf /xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-pipe -O2" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://gentoo.osuosl.org http://distro.ibiblio.org/pub/Linux/dis tributions/gentoo" MAKEOPTS="-j4" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X aalib acl acpi aim alsa amd64 audiofile avi berkdb bidi bonobo bzlib cale ndar canna cdparanoia cdr cjk crypt cscope ctype cups divx4linux doc dvb dvd ema cs encode esd ethereal evo exif fam fftw flac foomaticdb gdbm ggi gif gmp gnome gpm gstreamer gtk gtk2 gtkhtml guile iconv icq imagemagick imap imlib ipv6 jabbe r java joystick jpeg kde latex ldap libg++ libwww lirc mad matroska mcve md5sum mdb mikmod mime mng motif mozcalendar mozdevelop mozilla mozp3p mozsvg mpeg mpla yer msn mssql mule mysql mythtv nas ncurses network nls nogcj nvidia ocaml offen sive oggvorbis openal opengl oscar oss pam pdflib perl png postgres ppds python qt quicktime readline rtc samba sdl shared sharedmem slang slp soap sockets sock s5 speex spell ssl svg tcpd theora tiff truetype usb v4l v4l2 videos vim-with-x wmf wxwindows xine xinerama xml2 xmlrpc xmms xosd xpm xprint xrandr xsl xv xvid yahoo yv12 zlib zvbi"
Issue continues to remain in xorg-x11 6.8.0
Might be a good idea to report this upstream too, they will probably know more about how to fix it.
This should definitely be reported upstream. Please file a bug at bugs.freedesktop.org, xorg product, and post the URL here. Thanks!