Bug 100390 - [steam] Grand Ages: Medieval crashes instantly
Summary: [steam] Grand Ages: Medieval crashes instantly
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/radeonsi (show other bugs)
Version: git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Default DRI bug account
QA Contact: Default DRI bug account
: 100388 (view as bug list)
Depends on:
Reported: 2017-03-25 15:08 UTC by Christoph Berliner
Modified: 2018-09-15 11:38 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:

crashlog (5.10 KB, text/plain)
2017-03-25 15:08 UTC, Christoph Berliner
crashdump (402.65 KB, application/vnd.tcpdump.pcap)
2017-03-25 15:09 UTC, Christoph Berliner
glxinfo (51.59 KB, text/plain)
2017-03-25 15:11 UTC, Christoph Berliner
basic system information (910 bytes, text/plain)
2017-03-25 15:27 UTC, Christoph Berliner

Description Christoph Berliner 2017-03-25 15:08:41 UTC
Created attachment 130451 [details]

The Steam game Grand Ages:Medieval crashes instantly after startup.

Please tell me what further information you need, this is my first bug report.
Comment 1 Christoph Berliner 2017-03-25 15:09:36 UTC
Created attachment 130452 [details]
Comment 2 Christoph Berliner 2017-03-25 15:11:57 UTC
Created attachment 130453 [details]
Comment 3 Christoph Berliner 2017-03-25 15:19:43 UTC
*** Bug 100388 has been marked as a duplicate of this bug. ***
Comment 4 Christoph Berliner 2017-03-25 15:27:30 UTC
Created attachment 130454 [details]
basic system information
Comment 5 Christoph Berliner 2017-03-25 15:30:27 UTC
And probably a similar problem described in the steam community:

Comment 6 Samuel Pitoiset 2017-03-27 23:07:22 UTC
The game requests a 4.1 compatibility profile which is unsupported by Mesa and it crashes because it doesn't check the return value of glXCreateContextAttribsARB.

I'm investigating in order to know if it's possible to add a driconf option, but it looks like the game really needs some unsupported features.
Comment 7 Samuel Pitoiset 2017-03-27 23:57:11 UTC
Okay, the game uses ARB_texture_buffer_object which is only exposed with a core profile for some reasons. I'm able to run the game with some hacky changes but it fails to render correctly at some point.

Unfortunately, I don't think we can do anything for it because compat >= 3.1 is not supported for now (and probably won't be in the near future).

Anyways, the game should not crash when the returned context is NULL.
Comment 8 Christoph Berliner 2017-03-28 07:28:36 UTC
That doesn't sound to bad, does it?
At least it looks like the problem could be isolated.

Thanks and I'm happily trying fixes as long they're not exhausting my capabilities.
Comment 9 Timothy Arceri 2018-05-09 04:48:21 UTC
This game should now be playable using MESA_GL_VERSION_OVERRIDE=4.1COMPAT MESA_GLSL_VERSION_OVERRIDE=410 after the following commit:

commit e7a7b712fe81aac96eaae267ad6cb5444f02e7f6
Author: Timothy Arceri <tarceri@itsqueeze.com>
Date:   Tue May 8 10:35:40 2018 +1000

    mesa: remove hard-coded OpenGL 3.2 compat limit
    Just let validate_context_version() do it instead. This fixes
    MESA_GL_VERSION_OVERRIDE for compat, it will also allow us to
    enable new compat versions on a per driver bases in future.
    Reviewed-by: Marek Olšák <marek.olsak@amd.com>

There are still bits missing in compat but the game seems playable with the overrides.

Since further work simply involves implementing compat profile I'm going to close this bug.
Comment 10 Christoph Berliner 2018-09-15 11:38:53 UTC
Thank you all for your efforts. Problem solved.
I have tested the game today and its playable without any glitches using mesa 18.2 so far.

System and driver information:

System:    Host: home Kernel: 4.18.7-arch1-1-ARCH x86_64 bits: 64 Desktop: Gnome 3.28.3 Distro: Antergos Linux 
Machine:   Type: Desktop Mobo: Gigabyte model: GA-78LMT-USB3 v: x.x serial: <root required> BIOS: Award v: F4 
           date: 10/19/2012 
CPU:       8-Core: AMD FX-8350 type: MCP speed: 2109 MHz min/max: 1400/4000 MHz 
Graphics:  Card-1: Advanced Micro Devices [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X] 
           driver: amdgpu v: kernel 
           Display: x11 server: X.Org 1.20.1 driver: modesetting resolution: 2560x1440~144Hz 
           OpenGL: renderer: AMD Radeon RX 480 Graphics (POLARIS10 DRM 3.26.0 4.18.7-arch1-1-ARCH LLVM 6.0.1) 
           v: 4.5 Mesa 18.2.0 
Network:   Card-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet driver: r8169

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.