Bug 110590 - [Regression][Bisected] GTAⅣ under wine fails with GLXBadFBConfig
Summary: [Regression][Bisected] GTAⅣ under wine fails with GLXBadFBConfig
Status: RESOLVED DUPLICATE of bug 110632
Alias: None
Product: Mesa
Classification: Unclassified
Component: GLX (show other bugs)
Version: git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: mesa-dev
QA Contact: mesa-dev
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-05-03 00:53 UTC by Hi-Angel
Modified: 2019-05-07 07:51 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Hi-Angel 2019-05-03 00:53:24 UTC
When running `wine LaunchGTAIV.exe` with latest mesa, it blinks once, and then disappears with:

    X Error of failed request:  GLXBadFBConfig
    Major opcode of failed request:  153 (GLX)
    Minor opcode of failed request:  34 ()
    Serial number of failed request:  325
    Current serial number in output stream:  330

Bisection got me to the commit below. Reverting it locally fixes the problem.

    commit e91ee763c378d03883eb88cf0eadd8aa916f7878
    Author: Hal Gentz <zegentzy@protonmail.com>
    Date:   Sun Mar 24 16:52:39 2019 -0600

        glx: Fix synthetic error generation in __glXSendError

        To quote Uli Schlachter, who understands this stuff more than I do:

        >   The function __glXSendError() in mesa's src/glx/glx_error.c invents an X11
        > protocol error out of thin air. For the sequence number it uses dpy->request.
        > This is the sequence number of the last request that was sent. _XError() will
        > then update dpy->last_request_read based on the sequence number of the error
        > that just "came in".
        >
        >   If now another something comes in with a sequence number less than
        > dpy->last_request_read, since sequence numbers are monotonically increasing,
        > widen() will incorrectly add 1<<32 to the sequence number and things might go
        > downhill afterwards.

        `__glXSendErrorForXcb` was also patched, as that's the function that
        `glXCreateContextAttribsARB` actually uses.

        Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99781
        Cc: mesa-stable@lists.freedesktop.org
        Fixes: ad503c41 'apple: Initial import of libGL for OSX from AppleSGLX svn repository'
        Reviewed-by: Adam Jackson <ajax@redhat.com>
        Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
        Signed-off-by: Hal Gentz <zegentzy@protonmail.com>

Note: I couldn't reproduce it with other games with or without wine, but I only have a few of them though.
Comment 1 Michel Dänzer 2019-05-07 07:51:39 UTC

*** This bug has been marked as a duplicate of bug 110632 ***


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.