Bug 107052 - [Regression][bisected]. Crookz - The Big Heist Demo can't be launched despite the "true" flag in "drirc"
Summary: [Regression][bisected]. Crookz - The Big Heist Demo can't be launched despite...
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965 (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: Intel 3D Bugs Mailing List
QA Contact: Intel 3D Bugs Mailing List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-06-27 14:20 UTC by Denis
Modified: 2019-02-27 23:28 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
screenshot with error (526.05 KB, image/png)
2018-06-27 14:20 UTC, Denis
Details

Description Denis 2018-06-27 14:20:29 UTC
Created attachment 140363 [details]
screenshot with error

Mesa 17.2.8
drirc

<application name="Crookz - The Big Heist" executable="Crookz">
    <option name="allow_higher_compat_version" value="true" />
</application>

Application can be launched

(side note - If I set this value to "false" - I will see an error about OpenGL mismatch)
______________________________________________________________
Mesa 18.1.0 (or 18.2.0 latest from git)
drirc - the same (true)

Application can't be launched and shows OpenGL mismatch.

As I found out from the thread, related to fixes in radeon, this "drirc" list was created for the games which require higher openGL version, but, in fact - don't use it features.


upd - again, according to discussion in radeon, I can suppose that the same problem can be related and to these games (because they are using same workaround):
Worms W.M.D and Tropico 5
Comment 1 Danylo 2018-06-27 15:32:54 UTC
Sent the patch with fix https://patchwork.freedesktop.org/patch/232844/

The workaround 'allow_higher_compat_version' was designed to allow setting of 3.1+ compatibility profiles but later checks if current api is not API_OPENGL_COMPAT were introduced later in order to enable certain extensions that were enabled unconditionally before (I believe it started from commit https://gitlab.freedesktop.org/mesa/mesa/commit/272fe9494232baab159d10901aecfe1786595b17). 
These extensions are required for profiles higher than 3.0 which caused the workaround to become useless.
Comment 2 Sergii Romantsov 2019-02-12 11:40:02 UTC
As workaround a game can be launched with vars:
MESA_GL_VERSION_OVERRIDE=3.2 MESA_GLSL_VERSION_OVERRIDE=150
Comment 3 Timothy Arceri 2019-02-27 23:28:35 UTC
Fixed by:

commit 07f4b4e4034d6c9f48d136ec39a03e59f65783cb
Author: Yevhenii Kolesnikov <yevhenii.kolesnikov@globallogic.com>
Date:   Mon Feb 25 16:21:48 2019 +0200

    i965: Fix allow_higher_compat_version workaround limited by OpenGL 3.0
    
    Added check for higher compat profile being allowed
    before assigning certain extensions.
    
    Fixes: 272fe9494232 (mesa: enable ARB_texture_buffer_* extensions in the Compatibility profile)
    
    Signed-off-by: Danylo Piliaiev <danylo.piliaiev@globallogic.com>
    Signed-off-by: Yevhenii Kolesnikov <yevhenii.kolesnikov@globallogic.com>
    Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107052


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.