Bug 1187553 - Xwayland crash with glxinfo
Summary: Xwayland crash with glxinfo
Keywords:
Status: CLOSED EOL
Alias: None
Product: Fedora
Classification: Fedora
Component: xorg-x11-server
Version: 21
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Olivier Fourdan
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-01-30 12:23 UTC by Olivier Fourdan
Modified: 2015-12-02 17:15 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-12-02 08:16:30 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1173801 0 unspecified CLOSED Xwayland extremely slow and eats 100% CPU rendering on Intel chipset 2021-02-22 00:41:40 UTC

Internal Links: 1173801

Description Olivier Fourdan 2015-01-30 12:23:17 UTC
Description of problem:

Xwayland crashes on i915 when invoking LIBGL_ALWAYS_INDIRECT=1  glxinfo

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

xorg-x11-server-Xwayland-1.16.2.901-1.fc21.i686

How reproducible:

100%

Steps to Reproduce:
1. run  LIBGL_ALWAYS_INDIRECT=1  glxinfo

Actual results:

Crash

Expected results:

No crash

Additional info:

Backtrace:

Program received signal SIGSEGV, Segmentation fault.
0xb5135774 in st_renderbuffer_delete (ctx=0xb6cb501c, rb=0x8d9e378)
    at ../../src/mesa/state_tracker/st_cb_fbo.c:240
240	      pipe_surface_release(st->pipe, &strb->surface);
(gdb) bt
#0  0xb5135774 in st_renderbuffer_delete (ctx=0xb6cb501c, rb=0x8d9e378)
    at ../../src/mesa/state_tracker/st_cb_fbo.c:240
#1  0xb50b018b in _mesa_reference_renderbuffer_ (ptr=ptr@entry=0x8d9e0d0, rb=rb@entry=0x0)
    at ../../src/mesa/main/renderbuffer.c:165
#2  0xb506e486 in _mesa_reference_renderbuffer (rb=0x0, ptr=0x8d9e0d0)
    at ../../src/mesa/main/renderbuffer.h:66
#3  _mesa_free_framebuffer_data (fb=0x8d9dfc8) at ../../src/mesa/main/framebuffer.c:221
#4  0xb506e531 in _mesa_destroy_framebuffer (fb=0x8d9dfc8)
    at ../../src/mesa/main/framebuffer.c:197
#5  0xb506e5d1 in _mesa_reference_framebuffer_ (ptr=ptr@entry=0x8d622bc, fb=fb@entry=0x0)
    at ../../src/mesa/main/framebuffer.c:254
#6  0xb4fd9652 in _mesa_reference_framebuffer (fb=0x0, ptr=0x8d622bc)
    at ../../src/mesa/main/framebuffer.h:63
#7  _mesa_free_context_data (ctx=ctx@entry=0x8d621f0) at ../../src/mesa/main/context.c:1256
#8  0xb513da6d in st_destroy_context (st=st@entry=0x8d92f20)
    at ../../src/mesa/state_tracker/st_context.c:380
#9  0xb5162c1c in st_context_destroy (stctxi=0x8d92f20)
    at ../../src/mesa/state_tracker/st_manager.c:622
#10 0xb522fbac in dri_destroy_context (cPriv=0x8afdd80) at dri_context.c:174
#11 0xb522be04 in driDestroyContext (pcp=0x8afdd80) at dri_util.c:485
#12 0x08108224 in __glXDRIcontextDestroy (baseContext=0x8c79dc8) at glxdriswrast.c:135
#13 0x08107347 in __glXFreeContext (cx=0x8c79dc8) at glxext.c:209
#14 0x081074dd in glxClientCallback (list=0x828a618 <ClientStateCallback>, closure=0x0, 
    data=0xbffff300) at glxext.c:294
#15 0x081c4d65 in _CallCallbacks (pcbl=pcbl@entry=0x828a618 <ClientStateCallback>, 
    call_data=call_data@entry=0xbffff300) at dixutils.c:718
#16 0x081be70d in CallCallbacks (call_data=0xbffff300, pcbl=0x828a618 <ClientStateCallback>)
    at ../include/callback.h:83
#17 CloseDownClient (client=client@entry=0x8c79ed8) at dispatch.c:3384
#18 0x081bf3a5 in Dispatch () at dispatch.c:444
#19 0x081c38ca in dix_main (argc=argc@entry=2, argv=argv@entry=0xbffff494, 
    envp=envp@entry=0xbffff4a0) at main.c:296
#20 0x08066e5f in main (argc=2, argv=0xbffff494, envp=0xbffff4a0) at stubmain.c:34

Comment 2 Olivier Fourdan 2015-02-02 10:31:52 UTC
Should be fixed with this merge upstream:

commit 3e7218a6c23354d66f508b18164cac98a346b3ee
Merge: 6f4c398 bc71081
Author: Keith Packard <keithp>
Date:   Mon Dec 8 18:07:55 2014 -0800

    Merge remote-tracking branch 'jturney/indirect-glx-fixes'

Comment 3 Alex Villacís Lasso 2015-05-31 22:47:22 UTC
Update Fedora 22: no crashes, but this happens instead.

Without LIBGL_ALWAYS_INDIRECT=1, glxinfo works and displays information for llvmpipe.

With LIBGL_ALWAYS_INDIRECT=1, this error shows instead:
name of display: :0
X Error of failed request:  GLXBadContext
  Major opcode of failed request:  150 (GLX)
  Minor opcode of failed request:  6 (X_GLXIsDirect)
  Serial number of failed request:  16
  Current serial number in output stream:  15

BTW, I had to type this by hand because of https://bugzilla.redhat.com/show_bug.cgi?id=1214702

Comment 4 Olivier Fourdan 2015-06-01 07:26:49 UTC
(In reply to Alex Villacís Lasso from comment #3)
> Update Fedora 22: no crashes, but this happens instead.
> 
> Without LIBGL_ALWAYS_INDIRECT=1, glxinfo works and displays information for
> llvmpipe.
> 
> With LIBGL_ALWAYS_INDIRECT=1, this error shows instead:
> name of display: :0
> X Error of failed request:  GLXBadContext
>   Major opcode of failed request:  150 (GLX)
>   Minor opcode of failed request:  6 (X_GLXIsDirect)
>   Serial number of failed request:  16
>   Current serial number in output stream:  15

I think this is expected with the patches that were merged as mentioned in comment 2.

But now these patches have been recently reverted upstream, see:

https://bugs.freedesktop.org/show_bug.cgi?id=90442

and

http://cgit.freedesktop.org/xorg/xserver/commit/?id=bf6344e

So I am not exactly sure where we stand with this bug upstream.

Comment 5 Olivier Fourdan 2015-06-01 10:08:12 UTC
(In reply to Olivier Fourdan from comment #4)
> But now these patches have been recently reverted upstream [...]

Oh sorry, please disregard my last comment 4, the relevant patch for this particular bug here has not been reverted upstream and the crash does not occur neither in F22 nor in current upstream xserver code.

Comment 6 Olivier Fourdan 2015-06-03 08:34:56 UTC
... and just to clarify, the error reported in comment 3 is expected because indirect context support is not now disabled, thus the GLXBadContext with  LIBGL_ALWAYS_INDIRECT=1

This is http://cgit.freedesktop.org/xorg/xserver/commit/?id=d0da0e

Comment 7 Olivier Fourdan 2015-06-03 08:36:24 UTC
This bug is fixed upstream in xserver 1.17 and in F22.

Comment 8 Fedora End Of Life 2015-11-04 11:36:27 UTC
This message is a reminder that Fedora 21 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 21. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '21'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 21 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 9 Fedora End Of Life 2015-12-02 08:16:32 UTC
Fedora 21 changed to end-of-life (EOL) status on 2015-12-01. Fedora 21 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.


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