Blank window starting up & high GPU usage
It looks like this has been reported a few different times, but nothing open recently; I apologize if this is a duplicate.
When Keybase starts up, I get a blank window, and my CPU fan kicks in to high gear. Since the window was blank, I took a look a the system logs, and see this logged repeatedly:
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: [38922:0102/143908.849904:ERROR:shared_context_state.cc(83)] Skia shader compilation error
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: ------------------------
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: // Vertex SKSL
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: #extension GL_NV_shader_noperspective_interpolation: require
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: uniform float4 sk_RTAdjust;in float2 position;in float2 localCoord;noperspective out float2 vlocalCoord_S0;void main() {// Primitive Processor QuadPerEdgeAAGeometryProcessor
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: vlocalCoord_S0 = localCoord;sk_Position = position.xy01;}
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: // Fragment SKSL
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: #extension GL_NV_shader_noperspective_interpolation: require
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: uniform sampler2D uTextureSampler_0_S0;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: noperspective in float2 vlocalCoord_S0;void main() {// Stage 0, QuadPerEdgeAAGeometryProcessor
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: half4 outputColor_S0 = half4(1);float2 texCoord;texCoord = vlocalCoord_S0;outputColor_S0 = (blend_modulate(sample(uTextureSampler_0_S0, texCoord), half4(1)));const half4 outputCoverage_S0 = half4(1);{ // Xfer Processor: Porter Duff
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: sk_FragColor = outputColor_S0 * outputCoverage_S0;}}
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: // Vertex GLSL
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: #version 300 es
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: #extension GL_NV_shader_noperspective_interpolation : require
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: precision mediump float;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: precision mediump sampler2D;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: uniform highp vec4 sk_RTAdjust;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: in highp vec2 position;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: in highp vec2 localCoord;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: noperspective out highp vec2 vlocalCoord_S0;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: void main() {
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: vlocalCoord_S0 = localCoord;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: gl_Position = vec4(position, 0.0, 1.0);
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: gl_Position = vec4(gl_Position.xy * sk_RTAdjust.xz + gl_Position.ww * sk_RTAdjust.yw, 0.0, gl_Position.w);
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: }
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: // Fragment GLSL
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: #version 300 es
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: #extension GL_NV_shader_noperspective_interpolation : require
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: precision mediump float;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: precision mediump sampler2D;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: out mediump vec4 sk_FragColor;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: uniform sampler2D uTextureSampler_0_S0;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: noperspective in highp vec2 vlocalCoord_S0;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: void main() {
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: mediump vec4 outputColor_S0 = vec4(1.0);
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: highp vec2 texCoord = vlocalCoord_S0;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: outputColor_S0 = texture(uTextureSampler_0_S0, texCoord, -0.5);
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: {
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: sk_FragColor = outputColor_S0;
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: }
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: }
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: Errors:
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: link failed but did not provide an info log
Jan 02 14:39:08 ironic-mullet.eminorinc.com Keybase[38922]: [38922:0102/143908.860210:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 3 times!
The PID that's complaining is the GPU process. The ps output for it, from a different run:
awatts 42921 11.1 0.3 34418984 120396 ? Sl 14:43 0:00 /opt/keybase/Keybase --type=gpu-process --enable-crash-reporter=f2c6b2f0-68ab-4786-8ba1-efb0936b0051,no_channel --user-data-dir=/home/awatts/.config/Keybase --gpu-preferences=WAAAAAAAAAAgAAAEAAAAAAAAAAAAAAAAAABgAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAGAAAAAAAAAAYAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAIAAAAAAAAAA== --shared-files --field-trial-handle=0,i,10379683291385471131,4716982485993926029,262144 --disable-features=SpareRendererForSitePerProcess
If I kill that process, the Keybase window appears and things appear to work normally (though I haven't tried to do anything significant beyond click around in the gui). I get the following message in the system log when I kill the GPU process:
Jan 02 14:43:52 ironic-mullet.eminorinc.com Keybase[42798]: [42798:0102/144352.419998:ERROR:gpu_process_host.cc(957)] GPU process exited unexpectedly: exit_code=15
Jan 02 14:43:52 ironic-mullet.eminorinc.com Keybase[43353]: [43353:0102/144352.585157:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times!
Jan 02 14:43:54 ironic-mullet.eminorinc.com Keybase[43353]: [43353:0102/144354.529164:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 2 times!
Jan 02 14:43:59 ironic-mullet.eminorinc.com Keybase[43353]: [43353:0102/144359.768438:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 3 times!
I'm on Fedora Linux 39 on a Lenovo Thinkpad T580. My video hardware is an "Intel Corporation UHD Graphics 620 (rev 07)" according to lspci. My keybase version is keybase version 6.2.4-20240101011938+ae7e4a1c15, though I think this has been happening for some time.
in case this is relevant https://github.com/keybase/client/issues/26102#issuecomment-1874506305
@dschneiderch I did uninstall the RPM package and then reinstall the RPM package according to the instructions at https://keybase.io/docs/the_app/install_linux (it installed the same version that I'd removed) before filing this bug, so I don't think the CA issue is affecting me.