Linux 6.1 and 6.2-rc make mousewheel on Logitech G903 (046d:c091) report too many non-hires events

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi!

As it says in the subject.

At some point between 6.0 and 6.1, the kernel (if HID_LOGITECH_HIDPP was
m or y) started reporting a full event for every hires event on a
Logitech G903. 

In my quest of finding out what the root cause is, ive filed these bugs:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1029584
https://gitlab.freedesktop.org/libinput/libinput/-/issues/852

The libinput one has the most detail. The most relevant one is this log
from libinput record, showing what happens if I turn the mousewheel by
one notch:

    events:
    # Current time is 20:37:11
    - evdev:
      - [  3,  63476,   2,   8,      -1] # EV_REL / REL_WHEEL                -1
      - [  3,  63476,   2,  11,    -120] # EV_REL / REL_WHEEL_HI_RES       -120
      - [  3,  63476,   0,   0,       0] # ------------ SYN_REPORT (0) ---------- +3063ms
    - evdev:
      - [  3, 139476,   2,   8,      -1] # EV_REL / REL_WHEEL                -1
      - [  3, 139476,   2,  11,    -120] # EV_REL / REL_WHEEL_HI_RES       -120
      - [  3, 139476,   0,   0,       0] # ------------ SYN_REPORT (0) ---------- +76ms
    - evdev:
      - [  3, 197482,   2,   8,      -1] # EV_REL / REL_WHEEL                -1
      - [  3, 197482,   2,  11,    -120] # EV_REL / REL_WHEEL_HI_RES       -120
      - [  3, 197482,   0,   0,       0] # ------------ SYN_REPORT (0) ---------- +58ms
    - evdev:
      - [  3, 227485,   2,   8,      -1] # EV_REL / REL_WHEEL                -1
      - [  3, 227485,   2,  11,    -120] # EV_REL / REL_WHEEL_HI_RES       -120
      - [  3, 227485,   0,   0,       0] # ------------ SYN_REPORT (0) ---------- +30ms
    - evdev:
      - [  3, 240484,   2,   8,      -1] # EV_REL / REL_WHEEL                -1
      - [  3, 240484,   2,  11,    -120] # EV_REL / REL_WHEEL_HI_RES       -120
      - [  3, 240484,   0,   0,       0] # ------------ SYN_REPORT (0) ---------- +13ms
    - evdev:
      - [  3, 250470,   2,   8,      -1] # EV_REL / REL_WHEEL                -1
      - [  3, 250470,   2,  11,    -120] # EV_REL / REL_WHEEL_HI_RES       -120
      - [  3, 250470,   0,   0,       0] # ------------ SYN_REPORT (0) ---------- +10ms
    - evdev:
      - [  3, 256486,   2,   8,      -1] # EV_REL / REL_WHEEL                -1
      - [  3, 256486,   2,  11,    -120] # EV_REL / REL_WHEEL_HI_RES       -120
      - [  3, 256486,   0,   0,       0] # ------------ SYN_REPORT (0) ---------- +6ms
    - evdev:
      - [  3, 264472,   2,   8,      -1] # EV_REL / REL_WHEEL                -1
      - [  3, 264472,   2,  11,    -120] # EV_REL / REL_WHEEL_HI_RES       -120
      - [  3, 264472,   0,   0,       0] # ------------ SYN_REPORT (0) ---------- +8ms
    # Current time is 20:37:15

Note how it reports both REL_WHEEL and REL_WHEEL_HI_RES at every
instance.

I've tried assorted kernels, both Debian as well as hand-compiled
vanilla ones, and the problem only shows up if hid_logitech_hidpp.ko is
loaded, so I am blacklisting it for now. Also note that even unloading
the module didn't fix the behavior, though that may be because X11 was
still runing and so libinput's state ight have been still mangled.

The most recent kernels I have tested with are 6.1.4 and 6.2-rc5.

Best,
Tobias


-- 
printk(KERN_ERR "BIGMAC: Would you like that for here or to go?\n");
	linux-2.6.19/drivers/net/sunbmac.c



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux