Bug 1677719 - X server crashes when starting a particular X client
Summary: X server crashes when starting a particular X client
Keywords:
Status: NEW
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: xorg-x11-server
Version: 7.6
Hardware: Unspecified
OS: Linux
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Adam Jackson
QA Contact: Desktop QE
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-02-15 17:10 UTC by comes
Modified: 2019-09-29 22:45 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Target Upstream Version:


Attachments (Terms of Use)

Description comes 2019-02-15 17:10:18 UTC
Description of problem:

We have here a custom X client that is used to monitor the status of our telescope. This application has been around for more than 15 years. It has worked on CentOS 7, 6, 5, Fedora 4, RedHat 9 and so on.
Recently with the last xorg-x11-server update on CentOS 7.5 and in CentOS 7.6 when we start our X client the X server crashes. The log contains the following error message

[ 57.084] (EE) Backtrace:
[ 57.084] (EE) 0: /usr/bin/X (xorg_backtrace+0x55) [0x557e4dd73185]
[ 57.084] (EE) 1: /usr/bin/X (0x557e4dbc2000+0x1b4e09) [0x557e4dd76e09]
[ 57.084] (EE) 2: /lib64/libpthread.so.0 (0x7fd71340e000+0xf5d0) [0x7fd71341d5d0]
[ 57.084] (EE) 3: /usr/bin/X (miHandleValidateExposures+0x29) [0x557e4dd6b9a9]
[ 57.084] (EE) 4: /usr/bin/X (0x557e4dbc2000+0x8652f) [0x557e4dc4852f]
[ 57.084] (EE) 5: /usr/bin/X (ConfigureWindow+0xa94) [0x557e4dc49684]
[ 57.084] (EE) 6: /usr/bin/X (0x557e4dbc2000+0x569b8) [0x557e4dc189b8]
[ 57.084] (EE) 7: /usr/bin/X (0x557e4dbc2000+0x5c35b) [0x557e4dc1e35b]
[ 57.084] (EE) 8: /usr/bin/X (0x557e4dbc2000+0x603aa) [0x557e4dc223aa]
[ 57.084] (EE) 9: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x7fd7130633d5]
[ 57.084] (EE) 10: /usr/bin/X (0x557e4dbc2000+0x4a4ce) [0x557e4dc0c4ce]
[ 57.084] (EE)
[ 57.084] (EE) Segmentation fault at address 0x30000000c
[ 57.084] (EE)
Fatal server error:
[ 57.084] (EE) Caught signal 11 (Segmentation fault). Server aborting

The problem has been introduced in the X server with the patch:

# Bug 1599885 - RFE: enable backing store's Always mode
Patch9750: 0001-composite-Implement-backing-store-Always.patch

Removing such patch and recompiling the X server makes the crash go away.

More information about the crash:
If I start the client without a window manager (startx /usr/bin/myclient) , the X server does not crash.
If I have a desktop with two monitor and I start the client on a non primary output monitor, then the X server does not crash.
If, on a two monitor desktop I start the client on the primary output monitor, or if I have only a single monitor connected (which is, of course, a primary output monitor), then the X server crashes.

The patch has a RFE attached, so I'm letting you know that such patch creates trouble.

Comment 2 Adam Jackson 2019-05-02 20:42:24 UTC
Thank you for the report. Can you test the following build? The patch contents in this build are
targeted for 7.7, but the build is against a 7.6 buildroot and should be binary-compatible.

https://people.redhat.com/ajackson/1677719/

If you would prefer to test just this change in isolation, extract the patch named
0001-composite-Fix-some-backing-store-bugs-1677719.patch from the SRPM and apply it to your own build.

Comment 3 comes 2019-05-03 17:52:10 UTC
I have tested the patch 0001-composite-Fix-some-backing-store-bugs-1677719.patch
and it does not fix the crash problem I have.
Moreover, I have found that the first patch (0001-composite-Implement-backing-store-Always.patch)
can cause a X crash also in particular setup involving IDL and Xvnc.

Comment 4 Derek Schrock 2019-09-29 22:45:04 UTC
I'm seeing the same issue xfreerdp when run on top of fvwm.  The same backtrace with miHandleValidateExposures Segmentation fault.
Sometimes xfreerdp crashes X on startup post authentication or when xfreerdp is minimized.

Rebuilding xorg-x11-server-Xorg without the Patch9750: 0001-composite-Implement-backing-store-Always.patch patch doesn't cause any issue.

This is on a fully update RHEL 7.7 system.  Did the patch from Comment 2 not make it in 7.7's Xorg or is it there under a different name/package/location?


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