Summary: | Enabling disabled working OpenGL 2.1 in the i915 driver | ||
---|---|---|---|
Product: | Mesa | Reporter: | Indie <indie> |
Component: | Drivers/Gallium/i915g | Assignee: | Default DRI bug account <dri-devel> |
Status: | RESOLVED INVALID | QA Contact: | Default DRI bug account <dri-devel> |
Severity: | normal | ||
Priority: | medium | CC: | pedretti.fabio |
Version: | 17.1 | ||
Hardware: | x86 (IA32) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: | OS details |
Description
Indie
2017-07-10 12:31:14 UTC
Afaict the drirc bits were left so that people can override them based on their liking. Something like the following should do it. Do enhance to your liking. Note that separate hunk is needed for each application. --- a/src/mesa/drivers/dri/common/drirc +++ b/src/mesa/drivers/dri/common/drirc @@ -187,4 +187,10 @@ TODO: document the other workarounds. <option name="glx_disable_oml_sync_control" value="true" /> </application> </device> + <device driver="i915"> + <application name="App symbolic name" executable="actual-binary-name"> + <option name="fragment_shader" value="true" /> + <option name="stub_occlusion_query" value="true" /> + </application> + </device> The method you proposed doesn't work, because the system doesn't have a working version of OpenGL 2.1 libraries. See the attachment. I need a version of the drivers in which the OpenGL 2.1 libraries are installed. Where can I find them? (In reply to Indie from comment #2) > The method you proposed doesn't work, because the system doesn't have a > working version of OpenGL 2.1 libraries. See the attachment. I need a > version of the drivers in which the OpenGL 2.1 libraries are installed. Have you actually tried it? Admittedly I'm not expert in i915 code (despite being around a few times) although the suggestion should just work. (In reply to Indie from comment #3) > Where can I find them? There is no such thing as "version of OpenGL 2.1 libraries". There's should be just one libGL.so (In reply to Emil Velikov from comment #4) > Have you actually tried it? Admittedly I'm not expert in i915 code (despite > being around a few times) although the suggestion should just work. Yes I've edited the file /etc/drirc as you said and successfully parsed it with driconf after adding this lines: <device driver="i915"> <application name="Krita" executable="krita"> <option name="fragment_shader" value="true" /> <option name="stub_occlusion_query" value="true" /> </application> <application name="Don't Starve" executable="/home/user/GOG Games/Dont Starve/start.sh"> <option name="fragment_shader" value="true" /> <option name="stub_occlusion_query" value="true" /> </application> None of these programs were launched in the right mode, and they still require support for OpenGL 2.1. (In reply to Emil Velikov from comment #4) > There is no such thing as "version of OpenGL 2.1 libraries". There's should > be just one libGL.so I apologize for not saying at once, I'm not an experienced Linux user, and I don't know what is in this library and where is it located. But this is what I get using glxinfo | grep OpenGL command in terminal: OpenGL vendor string: Intel Open Source Technology Center OpenGL renderer string: Mesa DRI Intel(R) 945G x86/MMX/SSE2 OpenGL version string: 1.4 Mesa 17.2.0-devel OpenGL extensions: OpenGL ES profile version string: OpenGL ES 2.0 Mesa 17.2.0-devel OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16 OpenGL ES profile extensions: Before this ill-fated update, these two programs worked without significant problems. There was one bug when changing the size of application window working with these OpenGL 2.1 graphics libraries. If you change the proportions of the window larger than a certain value, then on the sides of this window the image starts blinking constantly. But it's better to have this bug than not be able to run these programs at all. Important information: As far as I can tell, I used to have a gallium i915 driver installed earlier. But now the developer of this repository has switched to classic version of these drivers. But I'm not so sure in this information because I'm new to these things. Also in the first post, there is a link to the bug that I had. This bug is indicated as belonging to gallium i915g driver. It's also known that this driver is no longer supported. But I need it in the form in which it was before appearance of segfault in i915_dri.so library that's described there: https://bugs.freedesktop.org/show_bug.cgi?id=100189 (In reply to Indie from comment #5) > <application name="Don't Starve" executable="/home/user/GOG > Games/Dont Starve/start.sh"> As said above: this must be the actual binary name - no path, no script. Take a look inside the script for the details. If you have a $HOME/.drirc file update that one as well. > I apologize for not saying at once, I'm not an experienced Linux user, and I > don't know what is in this library and where is it located. But this is what > I get using glxinfo | grep OpenGL command in terminal: No worries. If you want to see things in action add "glxinfo" as the binary name and observe the output ;-) I won't object if you really want to address the gallium (i915g) issue, not sure how others will feel. -Emil (In reply to Emil Velikov from comment #8) > As said above: this must be the actual binary name - no path, no script. > Take a look inside the script for the details. Inside this file a lot of things are started. There are Wine, ScummVM and something else. In addition, I wasn't able to run the Krita with support of OpenGL 2.1. Given that it's written there correctly. (In reply to Emil Velikov from comment #8) > No worries. If you want to see things in action add "glxinfo" as the binary > name and observe the output ;-) However, I was able to run Krita and Don't Starve, using this commands: MESA_GL_VERSION_OVERRIDE=2.1 /home/user/GOG\ Games/Dont\ Starve/start.sh MESA_GL_VERSION_OVERRIDE=2.1 krita But earlier this game started and worked much faster, using older drivers than using this command now. If I Use this commands there are about one frame per 20-30 seconds. Previously, everything worked at a speed of 15-20 frames per second. So using these commands isn't an option. As I figured out I need not only OpenGL 2.1 drivers support, but also i915 Gallium 2d driver acceleration. |
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.