Summary: | xorg-server 1.19.3 InputThread stack overflow in VGA arbitration | ||||||
---|---|---|---|---|---|---|---|
Product: | xorg | Reporter: | Marcin Pertek <kat.zygfryd> | ||||
Component: | Server/Input/Core | Assignee: | Xorg Project Team <xorg-team> | ||||
Status: | RESOLVED FIXED | QA Contact: | Xorg Project Team <xorg-team> | ||||
Severity: | normal | ||||||
Priority: | medium | ||||||
Version: | unspecified | ||||||
Hardware: | x86-64 (AMD64) | ||||||
OS: | Linux (All) | ||||||
See Also: | https://launchpad.net/bugs/1839174 | ||||||
Whiteboard: | |||||||
i915 platform: | i915 features: | ||||||
Attachments: |
|
I've posted a proposed patch for this, although I have no way to test to see if it helps. What it does is prevent the main thread and input thread from scrambling the pointer private structures used by the VGA arbiter. commit cf7517675d988c2d1ff967d6d162a17acbdad466 Author: Keith Packard <keithp@keithp.com> Date: Wed Aug 2 21:34:52 2017 -0700 xfree86: Hold input_lock across SPRITE functions in VGA arbiter Avoid scrambling the sprite functions wrapper. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101995 Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Adam Jackson <ajax@redhat.com> |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
Created attachment 133165 [details] gdb log of Xorg execution and crash stacktrace Steps to reproduce: 1) Have an AMD GPU as your display device (radeon or modesetting, doesn't matter) 2) Have an Intel iGPU, unused 3) Start an X session, grab a window corner and keep moving your mouse for a couple minutes, or just use your computer normally for up to a couple hours. Xorg was compiled using GCC 4.9.4 with CFLAGS="-march=core-avx2 -O2 -pipe -ggdb"