I attempted a git bisect. https://bugs.freedesktop.org/show_bug.cgi?id=46617
I'm new to this so I may not be correct. This it the patch that introduced this behaviour for me. phil@min:~/Development/synaptics.git$ git bisect good cddab79c408db3b13905a2be72aff4f7bf1406f8 is the first bad commit commit cddab79c408db3b13905a2be72aff4f7bf1406f8 Author: Peter Hutterer <peter.hutte...@who-t.net> Date: Thu Mar 1 16:27:01 2012 +1000 Fix scoll increment for non-smooth scrolling (#46617) Introduced in 2603ad69b997c999404ecc441e0d64ea2cc22018. Previously, the delta was incremented by (actual delta/scroll dist), button clicks where then sent while (delta-- >= 1). After 2603ad69b997c999404ecc441e0d64ea2cc22018, the delta was incremented by the delta only, scroll dist was used as increment in the smooth scrolling information. On non-smooth-scrolling servers, the driver would now send too many events. Restore the old behaviour by dividing by the scroll distance before entering the button click loop. X.Org Bug 46617 <http://bugs.freedesktop.org/show_bug.cgi?id=46617> Tested-by: Peter Zotov <whitequ...@whitequark.org> Signed-off-by: Peter Hutterer <peter.hutte...@who-t.net> :040000 040000 2949f0ddca5e3b158adcf9044eb6c5e3f0bff990 0958387eee6136a5aacdff9db87bbad7cddcdd98 M src