Bug 1410263 - touchpad - pointer jiggling after move
Summary: touchpad - pointer jiggling after move
Alias: None
Product: Fedora
Classification: Fedora
Component: libinput
Version: rawhide
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Peter Hutterer
QA Contact: Fedora Extras Quality Assurance
Depends On: 1407001
TreeView+ depends on / blocked
Reported: 2017-01-04 23:32 UTC by Peter Hutterer
Modified: 2017-01-12 00:38 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1407001
Last Closed: 2017-01-12 00:38:28 UTC
Type: Bug

Attachments (Terms of Use)
~10 of jiggles in one spot by pressing a pencil point on touchpad (48.38 KB, text/plain)
2017-01-05 18:13 UTC, John Ellson
no flags Details

Description Peter Hutterer 2017-01-04 23:32:06 UTC
This bug is for the pointer jiggling only, see Bug 1407001 for the "can't
reach the edges" issue.

+++ This bug was initially created as a clone of Bug #1407001 +++

Description of problem:
On the login screen, I can scroll to the edges of the desktop using the touchpad, but after I login, I am not able to reach the edges of the screen (or any menus) with the touchpad.

If I do a long stroke, it doesn't reach.  If I raise my finger and do a second stroke, it restarts motion in a different position (further away from my goal) and the stroke still won't reach.

If I add a USB mouse,  then with the mouse I can reach the menus.

I've tried mate and gnome desktops.

This problem just started in the last month, I think.

System Information:
        Manufacturer: Hewlett-Packard
        Product Name: HP Pavilion dv4 Notebook PC
        Version: F.43

        /dev/input/event6: AlpsPS/2 ALPS GlidePoint

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1.login, try to open any menu using touchpad

Actual results:
Can't reach edges of desktop

Expected results:
to be able to move the pointer to any part of the desktop using the touchpad

Additional info:
I have attached the output of evemu-record for two strokes across the touchpad from lower-right corner, to top-keft corner.

--- Additional comment from Peter Hutterer on 2017-01-02 18:32:06 EST ---

at least with this recording, I cannot reproduce this, the pointer moves in two movements towards the top-left. Was this a recording that reproduced the issue on your box?

Is there smething else running that may affect pointer position? synergy or something similar?

Can you try under GNOME on Wayland vs GNOME on Xorg to see if there's a difference?

does sudo libinput-debug-events show events from any other device as you move? Attach the output here please, that should also show up any jumps.

--- Additional comment from John Ellson on 2017-01-03 13:57:08 EST ---

Yes, those two swipes were an attempt to reach the top left corner.  One swipe didn't get there,  and some kind of recentering happens at the begging of the second swipe so that it still didn't reach to top-left corner.

I don't know of any other application that may affect pointer position.

I removed gpm and verified that that wasn't the cause.

The same problem occurs on the dm screen immediately after a fresh reboot and before first logi; so there were no user applications started.

I tried with gdm and with lightdm.  No diff

The problem now exists on a second laptop:

    System Information
        Manufacturer: Dell Inc.
        Product Name: Latitude E6510
        Version: 0001

        /dev/input/event7: AlpsPS/2 ALPS DualPoint TouchPad

I tried running libinput-debug-events  (I'll attach output)

One thing I noticed was the absence on any event for touching the mousepad.  The recentering occurs on touch.

--- Additional comment from John Ellson on 2017-01-03 14:08 EST ---

Note - no finger up/down events recorded between strokes.   Recentering happens at the beginning of the stroke.

--- Additional comment from John Ellson on 2017-01-03 14:23:16 EST ---

I'm seeing additional sporadic issues that may be related ..

    - one time the real mouse started being contrained in its movement...
    - shortly after, the system hung and had to be rebooted.

    - if I use the mousepad to move to the edge of a terminal window
      (a small one, in the center of the screen)  then there is a lot of
      jiggling of the pointer,  as if there were two event streams trying
      to move it.   No events are  recorded by libinput-debug-events when
      this jiggling is happening.

--- Additional comment from Peter Hutterer on 2017-01-03 17:28:18 EST ---

hmm, you're right, there is nothing in the libinput debug log that would indicate bad cursor movement, the movement is consistently towards the negative x/y axes.

when the jiggling happens, do you see any events on the event nodes? run sudo evemu-record against the various /dev/input/eventX devicess and see if you see events for them. If not, then this must be a bug in X somewhere - if the device works in gdm this means wayland is working fine.

Does the journal show any error messages?

Also, any chance you can film a short video that shows the effect. Makes it easier to understand what's going on.

--- Additional comment from John Ellson on 2017-01-04 00:37:09 EST ---

"consitently towards the negative x/y axis"  may be an artifact of my tests strokes always being from LR to TL.  I would have said something like "spontaneously centering"

I ran "sudo evemu-record"  against all 14 events on the HP laptop.

The only oddity was a continues stream of events from the "accelerometer"
(Why would I need an accelerometer in a laptop?  Can I disable it?).   See attached.

Nothing showing up in "journalctl -f" when I try to erach the corned from the touchpad.

I think earlier I might have claimed that the touchpad was working at gdm time.    That isn't true today.  Also tried LightDM,  with same problems.

The USB mouse usually works ok,  although at least once those motions wer also constrained into a small space,   followed shortly by a system crash.

Isn't it more likely to be a wayland bug?  Given that both laptops have works fine with X11 until a couple of weeks ago?

--- Additional comment from John Ellson on 2017-01-04 00:39 EST ---

--- Additional comment from John Ellson on 2017-01-04 00:40:48 EST ---

That should read "...a continuous stream of events..."

Working on your movie ....

--- Additional comment from John Ellson on 2017-01-04 00:44:53 EST ---

I can't reproduce the jiggling on the HP laptop.    I saw it earlier today at work on the Dell laptop.   I'll record your movie tomorrow when I'm back at work.

--- Additional comment from Peter Hutterer on 2017-01-04 00:58:03 EST ---

does xinput list show the accelerometer device? that cursor jump you describe is a common issue when an accelerometer is added as input device.

What's the most recent X log as shown in journalctl  -ef _COMM=gdm-x-session

--- Additional comment from John Ellson on 2017-01-04 11:09:15 EST ---

on the HP laptop:
    - no jiggling
    - evemu-record /dev/input/event9  - accelerometer - shows a continuous stream of events
    - xinput  - does *not* list an accelerometer   (see attached: xinput_hp_laptop.txt))

on the Dell laptop:
    - jiggling
    - tried evemu-record on all 15 events - no accellerometer, no other events occuring during simple touchpad strokes
    - xinput   - (see attached: xinput_dell_laptop.txt)

CONCLUSION:  jiggling is *not* due to an accelerometer on the Dell

"journalctl  -ef _COMM=gdm-x-session"  produces a header, and then nothing, on both laptops.   I may be using LIGHTDM.  is there a corresponding command?

jiggling occurs on the Dell laptop only.   It does not occur when using the USB mouse.  It occurs with light finger pressure on the touch pad when trying to position the pointer over an edge of a window.

- movie attached
- evemu-record attached

--- Additional comment from John Ellson on 2017-01-04 11:09 EST ---

--- Additional comment from John Ellson on 2017-01-04 11:10 EST ---

--- Additional comment from John Ellson on 2017-01-04 11:17 EST ---

mp4 movie taken from Samsung Galaxy S4 cellphone

--- Additional comment from John Ellson on 2017-01-04 11:18 EST ---

--- Additional comment from John Ellson on 2017-01-04 11:28:12 EST ---

Maybe the jiggling is a different problem?

The primary issue of:  not being able to reach the corners of the desktop using the touchpad, still exists on both machines.

Comment 1 Peter Hutterer 2017-01-04 23:48:39 UTC
you mentioned it jiggles on light touch - how does it work for a harder touch? I can't imagine it would depend on where the pointer is but " when trying to position the pointer over an edge of a window." - do you really only see it then?

Comment 2 John Ellson 2017-01-05 16:26:49 UTC
Dell laptop,   GDM + GNOME (wayland presumably)  - no evidence of jiggling

Looking for an older kernel to try to get non-wayland desktops working again....

Comment 3 John Ellson 2017-01-05 17:26:17 UTC
Dell laptop:

I installed to the latest available, non-rc kernel listed on Koji:

GDM is OK.   using touchpad I can reach the corners of the screen
    no evidence of jiggling.

GDM+GNOME (wayland) fails with a black screen and a complete system lockup.
Needed to powercycle to recover.

GDM+Mate produces a semi-working desktop.
 - still can't use touchpad to reach the edges of the screen.
 - pointer jiggles everywhere the touchpad is touched
     -- some pressure is needed,  but more or less doesn't change the behavior.

The jiggling is more visible at window edges is because the pointer icon changes from an arrow to a |< .   The icon flipping makes the jigging more obvious, but in fact it is happening everywhere on the reachable parts of the desktop.

Comment 4 John Ellson 2017-01-05 18:13:35 UTC
Created attachment 1237773 [details]
~10 of jiggles in one spot by pressing a pencil point on touchpad

I used a pencil to avoid any suggestion that I might be developing Parkinson's  (who knows ... :)

The pointer was over the backgound of the desktop, and not moved during the test.

Dell laptop,  kernel-4.9.0-1, GDM+Mate desktop

Comment 5 John Ellson 2017-01-10 15:57:54 UTC
Same jiggle still occurs with latest available kernel:

Comment 6 Peter Hutterer 2017-01-11 04:38:01 UTC
see bug 1407001, evdev is assigned to the touchpad and evdev doesn't have a hysteresis implementation. Assigning the libinput driver (or synaptics-legacy) should fix the issue.

Comment 7 John Ellson 2017-01-11 14:53:57 UTC

    I removed the soft link:
    and the file it was linked to:
         /usr/share/X11/xorg.conf/10-mate-evdev.conf     (yes.  "99" -> "10")

jiggling gone.

Comment 8 Peter Hutterer 2017-01-12 00:38:28 UTC
ok, thanks. Closing this bug then, it's not a bug in libinput.

This is a mate issue in hat it forces input drivers when it shouldn't but I've given up on trying to convince the maintainer that it's a bad idea.

Note You need to log in before you can comment on or make changes to this bug.