Cross-regressions between wine and mesa: how to handle them?

Ruslan Kabatsayev b7.10110111 at gmail.com
Mon Jan 27 14:14:04 CST 2014


On Mon, Jan 27, 2014 at 11:48 PM, Ruslan Kabatsayev
<b7.10110111 at gmail.com> wrote:
> On Mon, Jan 27, 2014 at 5:53 PM, Stefan Dösinger
> <stefandoesinger at gmail.com> wrote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> Am 2014-01-26 14:08, schrieb Ruslan Kabatsayev:
>>> For end user this looks like failing software, and moreover, it's
>>> not easy to understand which software does have bug. Wine
>>> perspective: On the one hand, wine seems to use what Mesa exposes.
>>> On the other, why use shaders for games which don't need them?
>> There are some corner cases in the d3d fixed function pipeline which
>> we can't handle properly without shaders. Unfortunately, once we
>> detect such a corner case it's too late to turn on shaders.
>>
>> A possible workaround for the user is to set UseGLSL=disabled. It's
>> not a good long-term fix though.
>>
>>> Mesa perspective: On the one hand, it wants to advertise more
>>> support for latest OpenGL standards. On the other, why do it for
>>> very old HW which doesn't support it?
>> Does the "slow" mean that Wine hits a software rendering fallback and
>> Mesa emulates vertex shaders with the CPU? I hated it when OSX
>> advertised features the card didn't have, and I think it's a very bad
>> idea for Mesa to do the same thing.
>
> Yes, a SW fallback. Vertex shaders are always on CPU on i915 by
> design. It's fragment shaders which suffer from SW fallback when
> something is used which is unsupported by the chip.
>
>>
>> The GL errors should be fixed though. Can you try to find the commits
>> in Wine and Mesa that started those errors?
> Yeah, I've already bisected Mesa. Its commits (which appear next to
> each other in history) are:
>
> 1) The one making wine 1.5.17 slow:
> 97217a40f97cdeae0304798b607f704deb0c3558 is the first bad commit
> commit 97217a40f97cdeae0304798b607f704deb0c3558
> Author: Eric Anholt <eric at anholt.net>
> Date:   Wed Apr 17 13:55:08 2013 -0700
>
>     i915: Always enable GL 2.0 support.
>
>     There's no point in shipping a non-GL2 driver today.
>
> :040000 040000 d039f68bbc5a5e610adbeb3d310350a844911fea
> efac289465401566fec6063b544c0a844e302559 M      src
>
> 2) The one leading to GL_INVALID_FRAMEBUFFER_OPERATION:
> 4df1b986d3e44dc035227054000a1d0e1846ef07 is the first bad commit
> commit 4df1b986d3e44dc035227054000a1d0e1846ef07
> Author: Eric Anholt <eric at anholt.net>
> Date:   Wed Apr 17 19:10:29 2013 -0700
>
>     i915: Add support for GL_EXT_texture_sRGB and GL_EXT_texture_sRGB_decode.
>
>     This brings the driver up to GL 2.1.
>
> :040000 040000 efac289465401566fec6063b544c0a844e302559
> 5bd49114ce64a359f4a0e3673ec27ca01590adbc M      src
>
>
> I'm bisecting wine now to find which commit starts
> GL_INVALID_FRAMEBUFFER_OPERATION error.

Bisection gives this (with Mesa $(git describe)=snb-magic-15798-g4df1b98):
09443f14e75e134328643b5d33aff61bdf4dca32 is the first bad commit
commit 09443f14e75e134328643b5d33aff61bdf4dca32
Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Wed Jul 18 21:32:34 2012 +0200

    wined3d: Enable "AlwaysOffscreen" by default.

:040000 040000 c37d9d0fe4165e09a89c9e22066e3acc17537bbb
0dd4d64233f4441ab3613327e86d9fe8187ec4ed M      dlls

>>
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG v2.0.22 (GNU/Linux)
>> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
>>
>> iQIcBAEBAgAGBQJS5mTVAAoJEN0/YqbEcdMwViwP/3iPmbKEtH/5BBcNLg/IqxGJ
>> sie+Qn2Yibp+LBf2iYPqshjDKAHBNXiaiMKqTKG8GWzGC235K/Nqc0QoV2sFRRJW
>> EiroXisQlG6AupmWKqzqldSVYC93tehCQdp982Rk3XYENQmmsuE+OSwMwXAg32ji
>> 8gKSrZ7EYwT2b4NYy79o7p/KiR5+nO/Mwm7m8wNYLoYPPjQ3yk95pxPxlNlsuAZw
>> eEeDRNU7lXtIGrYsO+xpA4saCW93vZp2rUqXLlQjAMdOi2HU3F5R7jmsLn/pqvJV
>> rIawm53PMP7bauUcB926StXYwW8yLeEHAbGtER4t2nJKf9tHNrNNKD0Q8CwrpE1F
>> fKwMJDHx5YVkeftADm2OiX4PNKflvwfeKTeib9ChCP7ApXbulbRi3Qx/n7Al+ZWv
>> 6THEBaSS9PlxvPQQ1zwSduATfAMKsMulxDz6I0SPclVTnFTmMcfLxcNtFIHsjkCR
>> US7Q6hKGHfqLO/OQEdpiJ/4KlQmXrkQkWj0VOwnsBmWjBFv02Q/8Xoj4i50f7Qev
>> 7KadSvgpgAg5Yu468jBbiVwxibxaxNQZNuJgFUnDfMyMdwBYXD613Ngnm1GriOUO
>> F+MWvaCKpMK4zsAYIZg366GTjH7XqANVZ1vaCruoAdmB6r39A3/mMiS5kmPoPLP5
>> /6tpS/N9eJfBOVyzv9Au
>> =q+e8
>> -----END PGP SIGNATURE-----



More information about the wine-devel mailing list