Bug 1284210

Summary: GNOME-Shell hangs when scrolling with touchscreen and touchpad
Product: [Fedora] Fedora Reporter: Dominik Gronkiewicz <gronki>
Component: gnome-shellAssignee: Owen Taylor <otaylor>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 22CC: fmuellner, gronki, otaylor, peter.hutterer
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-19 19:59:25 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
output of libinput-debug-events
none
Output of: top -b -d 0,5 -n 1000 | grep shell > test.txt none

Description Dominik Gronkiewicz 2015-11-21 23:48:24 UTC
Description of problem:
Try to scroll content (for example in Firefox or Nautilus) using touch screen while scrolling with touchpad at the same time. Entire desktop (including cursor) freezes temporarily or completely. GUI can be restored by hitting alt+F2 and typing "r", erroneous input should not cause a total freeze of a GUI.


Version-Release number of selected component (if applicable):
libinput 1.1.0
Fedora 22
Gnome-SHELL 3.16


Actual results:
GUI freezes.

Expected results:
Such erroneous input should not cause GUI to crash.


Additional info:

Comment 1 Peter Hutterer 2015-12-07 06:42:14 UTC
run sudo libinput-debug-events on the terminal please - do you still see events come out of that when the rest of the UI freezes? note that if the UI is frozen it may take a bit of time until the rendering updates, ideally you could run this over ssh from a second machine to make sure you're unaffected from rendering.

Comment 2 Dominik Gronkiewicz 2015-12-18 12:53:45 UTC
(In reply to Peter Hutterer from comment #1)
> run sudo libinput-debug-events on the terminal please - do you still see
> events come out of that when the rest of the UI freezes? note that if the UI
> is frozen it may take a bit of time until the rendering updates, ideally you
> could run this over ssh from a second machine to make sure you're unaffected
> from rendering.

Hey,

Sorry for my very late response.

I did as you requested. I attach a full file (it's quite long). I did the following test:

1. ran libinput-debug-events > loginp.txt

2. moved my touchpad for less than 1 sec

3. pressed space key (only to separate my actions in logs) 

4. moved finger on touchscreen (<1sec)

5. pressed space again

6. moved one finger on touchpad and another on touchscreen simultaneously (<1sec)

7. gui froze for about 10-15 seconds

8. after gui unfroze I pressed space and ctrl+c

The registered log between points 6 and 7 looks like this. What suprised me is that times registered in logs are consistent with my real-time actions (my finger motion was shorter than 1 second). The freeze of the GUI lasted for more than 10 seconds.  

pad:
event5 	POINTER_MOTION	 +2.49s	 31.68/-12.82
event5 	POINTER_MOTION	 +2.50s	 29.06/ -8.97
event5 	POINTER_MOTION	 +2.51s	 25.87/ -6.04
event5 	POINTER_MOTION	 +2.51s	 24.18/ -3.48
event5 	POINTER_MOTION	 +2.53s	 23.05/ -1.45
event5 	POINTER_MOTION	 +2.54s	 21.61/ -0.36
event5 	POINTER_MOTION	 +2.55s	 20.62/  0.00
event5 	POINTER_MOTION	 +2.56s	 19.64/  0.00
event5 	POINTER_MOTION	 +2.57s	 17.59/  0.00
event5 	POINTER_MOTION	 +2.58s	 14.42/  0.00
event5 	POINTER_MOTION	 +2.59s	 10.81/  2.56

screen:
event8 	TOUCH_MOTION	 +6.66s	0 (0) 40.14/35.99 (133.00/67.40mm)
event8 	TOUCH_FRAME	 +6.66s	
event8 	TOUCH_MOTION	 +6.67s	0 (0) 40.42/35.66 (133.90/66.80mm)
event8 	TOUCH_FRAME	 +6.67s	
event8 	TOUCH_MOTION	 +6.67s	0 (0) 40.66/35.40 (134.70/66.30mm)
event8 	TOUCH_FRAME	 +6.67s	
event8 	TOUCH_MOTION	 +6.68s	0 (0) 40.87/35.24 (135.40/66.00mm)
event8 	TOUCH_FRAME	 +6.68s	
event8 	TOUCH_MOTION	 +6.69s	0 (0) 41.05/35.08 (136.00/65.70mm)
event8 	TOUCH_FRAME	 +6.69s	

pad+screen:
event5 	POINTER_MOTION	+12.91s	 62.43/ 37.72
event8 	TOUCH_MOTION	+12.91s	0 (0) 59.86/49.28 (198.30/92.30mm)
event8 	TOUCH_FRAME	+12.91s	
event8 	TOUCH_MOTION	+12.92s	0 (0) 59.89/49.81 (198.40/93.30mm)
event8 	TOUCH_FRAME	+12.92s	
event5 	POINTER_MOTION	+12.92s	 63.55/ 34.24
event8 	TOUCH_MOTION	+12.93s	0 (0) 59.95/50.35 (198.60/94.30mm)
event8 	TOUCH_FRAME	+12.93s	
event5 	POINTER_MOTION	+12.93s	 63.93/ 27.65
event8 	TOUCH_MOTION	+12.93s	0 (0) 59.98/50.88 (198.70/95.30mm)
event8 	TOUCH_FRAME	+12.93s	
event5 	POINTER_MOTION	+12.94s	 60.74/ 20.51
event8 	TOUCH_MOTION	+12.94s	0 (0) 60.04/51.31 (198.90/96.10mm)
event8 	TOUCH_FRAME	+12.94s	
event8 	TOUCH_MOTION	+12.95s	0 (0) 60.10/51.79 (199.10/97.00mm)
event8 	TOUCH_FRAME	+12.95s	
event5 	POINTER_MOTION	+12.95s	 54.74/ 14.83
event8 	TOUCH_MOTION	+12.96s	0 (0) 60.16/52.22 (199.30/97.80mm)
event8 	TOUCH_FRAME	+12.96s	
event5 	POINTER_MOTION	+12.96s	 50.24/ 10.99
event8 	TOUCH_MOTION	+12.96s	0 (0) 60.22/52.59 (199.50/98.50mm)
event8 	TOUCH_FRAME	+12.96s	
event5 	POINTER_MOTION	+12.97s	 44.62/  6.96
event8 	TOUCH_MOTION	+12.97s	0 (0) 60.34/52.96 (199.90/99.20mm)

Comment 3 Dominik Gronkiewicz 2015-12-18 12:54:42 UTC
Created attachment 1107143 [details]
output of libinput-debug-events

Comment 4 Peter Hutterer 2015-12-20 23:53:41 UTC
we ran into this last week, looks like a gnome-shell bug - whenever this happens we see gnome-shell go to 100% CPU. 

Our test was: use touchscreen + touchpad (or mouse), then hit a key. Alt-tab or anything WM-related will freeze, even if it's a couple of sec after the interaction. My tests that key events are still delivered correctly, it's the WM interaction that makes gnome-shell freak out. Can you confirm this is the same issue?

Comment 5 Dominik Gronkiewicz 2015-12-27 11:57:26 UTC
Well, for me hitting any key is not required to cause the freeze. Using screen+pad is enough. I confirm it causes high CPU usage by gnome-shell. (attached file) And yes, as I noticed in my previous posts, key events seem to be delivered immediately (gui response is delayed).

Comment 6 Dominik Gronkiewicz 2015-12-27 11:58:17 UTC
Created attachment 1109793 [details]
Output of: top -b -d 0,5 -n 1000 | grep shell > test.txt

top -b -d 0,5 -n 1000 | grep shell > test.txt

Comment 7 Peter Hutterer 2016-01-03 21:50:14 UTC
Reassigning to gnome-shell, could be mutter too.

Comment 8 Dominik Gronkiewicz 2016-01-10 01:19:20 UTC
Still happens on F23 / GNOME 3.18.

Comment 9 Fedora End Of Life 2016-07-19 19:59:25 UTC
Fedora 22 changed to end-of-life (EOL) status on 2016-07-19. Fedora 22 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.