Skip to main content
Topic: mesa update broke ungoogled-chromium (Read 1285 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

mesa update broke ungoogled-chromium

After upgrading mesa 23.1.3-1 => 23.1.3-2, ungoogled-chromium (114.0.5735.134-2 from universe) fails to render most text and images. Reverting the mesa upgrade fixes the issue.

Since no one else has complained, maybe this is hardware dependant? I also suspect the fact the mesa package almost doubled in size(!?) has something to do with this.

Re: mesa update broke ungoogled-chromium

Reply #1
it seems I experience the same problem.

Re: mesa update broke ungoogled-chromium

Reply #2
Since no one else has complained, maybe this is hardware dependant?

Yeah it works on my machine. The thing is that 23.1.3-2 isn't actually a different mesa version: it's just a pkgrel. The only thing that changed was a couple of split packages were added so it really doesn't make sense why this would be any different?

Re: mesa update broke ungoogled-chromium

Reply #3
Here is some of what the dysfunctional chromium spits out into stderr (and I compared; the same is not printed with the old, working mesa version):
Code: [Select]
[18445:18445:0715/163105.255334:ERROR:shared_context_state.cc(81)] Skia shader compilation error
------------------------
// Vertex SKSL
#extension GL_NV_shader_noperspective_interpolation: require
uniform float4 sk_RTAdjust;uniform float2 uAtlasSizeInv_S0;in float2 inPosition;in half4 inColor;in ushort2 inTextureCoords;noperspective out float2 vTextureCoords_S0;flat out float vTexIndex_S0;noperspective out half4 vinColor_S0;void main() {// Primitive Processor BitmapText
int texIdx = 0;float2 unormTexCoords = float2(inTextureCoords.x, inTextureCoords.y);vTextureCoords_S0 = unormTexCoords * uAtlasSizeInv_S0;vTexIndex_S0 = float(texIdx);vinColor_S0 = inColor;float2 _tmp_1_inPosition = inPosition;sk_Position = inPosition.xy01;}
// Fragment SKSL
#extension GL_NV_shader_noperspective_interpolation: require
uniform sampler2D uTextureSampler_0_S0;
noperspective in float2 vTextureCoords_S0;flat in float vTexIndex_S0;noperspective in half4 vinColor_S0;void main() {// Stage 0, BitmapText
half4 outputColor_S0;outputColor_S0 = vinColor_S0;half4 texColor;{ texColor = sample(uTextureSampler_0_S0, vTextureCoords_S0).rrrr; }half4 outputCoverage_S0 = texColor;{ // Xfer Processor: Porter Duff
sk_FragColor = outputColor_S0 * outputCoverage_S0;}}
// Vertex GLSL
#version 300 es

#extension GL_NV_shader_noperspective_interpolation : require
precision mediump float;
precision mediump sampler2D;
uniform highp vec4 sk_RTAdjust;
uniform highp vec2 uAtlasSizeInv_S0;
in highp vec2 inPosition;
in mediump vec4 inColor;
in mediump uvec2 inTextureCoords;
noperspective out highp vec2 vTextureCoords_S0;
flat out highp float vTexIndex_S0;
noperspective out mediump vec4 vinColor_S0;
void main() {
    highp int texIdx = 0;
    highp vec2 unormTexCoords = vec2(float(inTextureCoords.x), float(inTextureCoords.y));
    vTextureCoords_S0 = unormTexCoords * uAtlasSizeInv_S0;
    vTexIndex_S0 = float(texIdx);
    vinColor_S0 = inColor;
    gl_Position = vec4(inPosition, 0.0, 1.0);
    gl_Position = vec4(gl_Position.xy * sk_RTAdjust.xz + gl_Position.ww * sk_RTAdjust.yw, 0.0, gl_Position.w);
}

// Fragment GLSL
#version 300 es

#extension GL_NV_shader_noperspective_interpolation : require
precision mediump float;
precision mediump sampler2D;
out mediump vec4 sk_FragColor;
uniform sampler2D uTextureSampler_0_S0;
noperspective in highp vec2 vTextureCoords_S0;
flat in highp float vTexIndex_S0;
noperspective in mediump vec4 vinColor_S0;
void main() {
    mediump vec4 outputColor_S0;
    outputColor_S0 = vinColor_S0;
    mediump vec4 texColor;
    {
        texColor = texture(uTextureSampler_0_S0, vTextureCoords_S0, -0.5).xxxx;
    }
    mediump vec4 outputCoverage_S0 = texColor;
    {
        sk_FragColor = outputColor_S0 * outputCoverage_S0;
    }
}


Errors:
link failed but did not provide an info log
And that same long thing repeats many many times.

Re: mesa update broke ungoogled-chromium

Reply #4
I want to mention `universe/ungoogled-chromium 114.0.5735.134-2` has the problem.

the ` omniverse/ungoogled-chromium 114.0.5735.199-1` works perfectly fine

Re: mesa update broke ungoogled-chromium

Reply #5
The problem - I had it myself and investigated and fixed it - is between chromium and mesa:
- the one but last mesa version caused chromium to cache - globally -  some files different than before
- the last mesa version changed this again, after which chromium could not process its own cached files correctly anymore
This causes chromium to display garbage.

A way to fix the issue is to restore ~/.config/chromium directory from a few weeks old backup.

What might fix the issue - I did not test this - is:
rm -rf ~/.config/chromium/GrShaderCache
rm -rf ~/.config/chromium/ShaderCache
rm -rf ~/.config/chromium/Default/GPUCache

artist

Re: mesa update broke ungoogled-chromium

Reply #6
What might fix the issue - I did not test this - is:
rm -rf ~/.config/chromium/GrShaderCache
rm -rf ~/.config/chromium/ShaderCache
rm -rf ~/.config/chromium/Default/GPUCache

Yeah that's worth trying, had problems before because of the shader caches in chromium/webkit based stuff before i made them regularly deleted as well :)

Re: mesa update broke ungoogled-chromium

Reply #7
this hit me too. solved with brave-bin uninstall and brave-beta-bin install from AUR.


Re: mesa update broke ungoogled-chromium

Reply #9
rm -rf ~/.config/chromium/GrShaderCache
rm -rf ~/.config/chromium/ShaderCache
rm -rf ~/.config/chromium/Default/GPUCache

Didn't help.

UPD: Also did: `rm -rf ~/.cache`. Now works. Thanks.

Re: mesa update broke ungoogled-chromium

Reply #10
What might fix the issue - I did not test this - is:
rm -rf ~/.config/chromium/GrShaderCache
rm -rf ~/.config/chromium/ShaderCache
rm -rf ~/.config/chromium/Default/GPUCache
the problem solved permanently by following this instruction.

If you use a chromium based browser and experience the same thing, the directory structure might be a bit different.

Re: mesa update broke ungoogled-chromium

Reply #11
I believe this hit me too. Posted in reddit and vivaldi forums looking for answers.

It seemed to affect vivaldi browser and electron apps like android messages and irccloud by removing all text and menu's but leaving colors and hover markers. Right clicking the mouse cursor still worked for context menu.

Deleting the cache files didn't appear to fix anything for me, but its very likely i missed a few. There were several.

My thread:
https://forum.vivaldi.net/topic/88891/break-mode

disabling hardware acceleration allowed me to use vivaldi again via this command in terminal:               /opt/vivaldi/vivaldi --disable-gpu
this trick also worked with irccloud, but not android messages:                         irccloud --disable-gpu

I'm using an nvidia mobile processor on a laptop. It's currently set to "hybrid" (nvidia-intel) on the gpu.

Re: mesa update broke ungoogled-chromium

Reply #12
del

Re: mesa update broke ungoogled-chromium

Reply #13
I dug into the .config GPUCache files of irccloud and android-messages-desktop and deleting the cache did restore function.   \o/

Re: mesa update broke ungoogled-chromium

Reply #14
This was a problem for Opera browser too (being also a Chrome based browser like many) and here those dirs were in .config/opera, but generally it's recommended as best practice for browser profiles to first mv the old dirs to something like this:

old-GPUCache.bak   old-GrShaderCache.bak   old-ShaderCache.bak

because if you delete the wrong thing and / or it does not have the desired effect you can easily reverse the process. Deleting the whole .cache file in your homedir as dimgel did might also cause problems because a lot of apps store data in there, safer to go into the dir and mv the relevant sub-dir first. Emptying the cache can sometimes break websites if the related cookies are not also cleared at the same time. Thanks for the info of how to fix this though!  ;D