After updating mesa to 24.3.3-2, GNOME's video player (totem) no longer works, always displaying a dialog box saying "Não foi possível inicializar o suporte a OpenGL". Running totem on the command line with "EGL_LOG_LEVEL=debug MESA_DEBUG=1 GST_DEBUG=2 totem" shows that the true (untranslated) error message from gstreamer (gtkgstglwidget) is "Could not create OpenGL context: Failed to create a OpenGL context: EGL_BAD_ALLOC". Reproducible: Always Steps to Reproduce: 1. Run totem on any video Actual Results: The totem window opens with a "broken video" icon, and a dialog box saying "Não foi possível inicializar o suporte a OpenGL" pops up. Expected Results: The video should play normally, as it used to before the mesa update. Relevant package versions: mesa-libEGL-24.3.3-2.fc41.x86_64 gstreamer1-plugins-good-gtk-1.24.11-1.fc41.x86_64 totem-43.1-1.fc41.x86_64 Running on GNOME (Wayland), with the display connected through DP to a Radeon 7600 dGPU (there's also the iGPU of the Ryzen 7600 CPU, with no displays connected). This is the GST_DEBUG=2 part of the output (will attach the log with the EGL_LOG_LEVEL=debug part later): 0:00:00.202602337 19682 0x560c876d3be0 WARN glcontext gstglcontext.c:1326:gst_gl_context_create_thread:<glcontextegl0> Failed to create context 0:00:00.202631532 19682 0x560c866d4d80 WARN gtkgstglwidget gtkgstglwidget.c:644:gtk_gst_gl_widget_init_winsys: Could not create OpenGL context: Failed to create a OpenGL context: EGL_BAD_ALLOC 0:00:00.202638765 19682 0x560c866d4d80 WARN gtkglsink gstgtkglsink.c:270:gst_gtk_gl_sink_start:<sink> error: Failed to initialize OpenGL with Gtk 0:00:00.202650477 19682 0x560c866d4d80 WARN basesink gstbasesink.c:5906:gst_base_sink_change_state:<sink> error: Failed to start 0:00:00.202681005 19682 0x560c866d4d80 ERROR playbin gstplaybin2.c:5554:activate_group:<play> failed to activate sinks 0:00:00.206734377 19682 0x560c866d4d80 ERROR default totem-gst-helpers.c:61:totem_gst_message_print: message = Failed to initialize OpenGL with Gtk 0:00:00.206740809 19682 0x560c866d4d80 ERROR default totem-gst-helpers.c:62:totem_gst_message_print: domain = 5186 (gst-resource-error-quark) 0:00:00.206743624 19682 0x560c866d4d80 ERROR default totem-gst-helpers.c:64:totem_gst_message_print: code = 3 0:00:00.206746179 19682 0x560c866d4d80 ERROR default totem-gst-helpers.c:65:totem_gst_message_print: debug = ../ext/gtk/gstgtkglsink.c(270): gst_gtk_gl_sink_start (): /GstGLSinkBin:glsinkbin/GstGtkGLSink:sink 0:00:00.206757180 19682 0x560c866d4d80 ERROR default totem-gst-helpers.c:66:totem_gst_message_print: source = <sink> 0:00:00.206759594 19682 0x560c866d4d80 ERROR default totem-gst-helpers.c:67:totem_gst_message_print: uri = (NULL)
Created attachment 2066236 [details] Output of EGL_LOG_LEVEL=debug MESA_DEBUG=1 GST_DEBUG=2 totem ...
The same issue also seems to break GNOME Web / epiphany since 24.3.3. There are errors about EGL_BAD_ALLOC on the command line, and it doesn't render any web pages.
Reproduced using pure gstreamer, which takes Totem out of the equation and simplifies the output: $ GST_DEBUG=5 gst-launch-1.0 videotestsrc ! glupload ! gtkglsink Comparing with another computer where this command works (with older mesa and a different GPU vendor), the place where the output diverges seems to be as follows (the working computer after "attempting to create OpenGL ES context version 3.2 flags 1 profile 0" says "gl context created" and then starts dumping information about the created context): 0:00:00.231511862 12420 0x55a0db0c7d50 INFO glcontext gstglcontext_egl.c:939:gst_gl_context_egl_create_context: Bound OpenGL|ES 0:00:00.231526500 12420 0x55a0db0c7d50 INFO glcontext gstglcontext_egl.c:757:gst_gl_context_egl_choose_config: config set: 94149356392512, 1 0:00:00.231529826 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:774:gst_gl_context_egl_choose_config:<glcontextegl0> chosen EGLConfig: 0:00:00.231534375 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:415:gst_gl_context_egl_dump_config:<glcontextegl0> dumping EGLConfig 0x55a0daf19040 with id 0x21 and native visual id 0x0 of type 0x3038 0:00:00.231538402 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:448:gst_gl_context_egl_dump_config:<glcontextegl0> Conformant for OpenGL|OpenGL ES|OpenGL ES 2.x|OpenGL ES 3.x 0:00:00.231543322 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:481:gst_gl_context_egl_dump_config:<glcontextegl0> Renderable for OpenGL|OpenGL ES|OpenGL ES 2.x|OpenGL ES 3.x 0:00:00.231547319 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:514:gst_gl_context_egl_dump_config:<glcontextegl0> Surface for (0x4) window 0:00:00.231552268 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:554:gst_gl_context_egl_dump_config:<glcontextegl0> [R, G, B, A] = [8, 8, 8, 8] 0:00:00.231556296 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:576:gst_gl_context_egl_dump_config:<glcontextegl0> [D, S] = [0, 0] 0:00:00.231560213 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:587:gst_gl_context_egl_dump_config:<glcontextegl0> Swap interval range is [0, 1] 0:00:00.231564482 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:601:gst_gl_context_egl_dump_config:<glcontextegl0> PBuffer maximum dimensions are [4096, 4096]. Max pixels are 0 0:00:00.231569170 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:614:gst_gl_context_egl_dump_config:<glcontextegl0> Multisample buffers: 0 and Samples per pixel: 0 0:00:00.231573789 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:811:_create_context_with_flags:<glcontextegl0> attempting to create OpenGL ES context version 3.2 flags 1 profile 0 0:00:00.232465343 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:811:_create_context_with_flags:<glcontextegl0> attempting to create OpenGL ES context version 3.2 flags 0 profile 0 0:00:00.232968062 12420 0x55a0db0c7d50 INFO glcontext gstglcontext_egl.c:757:gst_gl_context_egl_choose_config: config set: 94149356392512, 1 0:00:00.232974424 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:774:gst_gl_context_egl_choose_config:<glcontextegl0> chosen EGLConfig: 0:00:00.232982249 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:415:gst_gl_context_egl_dump_config:<glcontextegl0> dumping EGLConfig 0x55a0daf19040 with id 0x21 and native visual id 0x0 of type 0x3038 0:00:00.232988310 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:448:gst_gl_context_egl_dump_config:<glcontextegl0> Conformant for OpenGL|OpenGL ES|OpenGL ES 2.x|OpenGL ES 3.x 0:00:00.232993861 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:481:gst_gl_context_egl_dump_config:<glcontextegl0> Renderable for OpenGL|OpenGL ES|OpenGL ES 2.x|OpenGL ES 3.x 0:00:00.232999592 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:514:gst_gl_context_egl_dump_config:<glcontextegl0> Surface for (0x4) window 0:00:00.233007487 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:554:gst_gl_context_egl_dump_config:<glcontextegl0> [R, G, B, A] = [8, 8, 8, 8] 0:00:00.233013077 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:576:gst_gl_context_egl_dump_config:<glcontextegl0> [D, S] = [0, 0] 0:00:00.233019379 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:587:gst_gl_context_egl_dump_config:<glcontextegl0> Swap interval range is [0, 1] 0:00:00.233025360 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:601:gst_gl_context_egl_dump_config:<glcontextegl0> PBuffer maximum dimensions are [4096, 4096]. Max pixels are 0 0:00:00.233031131 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:614:gst_gl_context_egl_dump_config:<glcontextegl0> Multisample buffers: 0 and Samples per pixel: 0 0:00:00.233037233 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:811:_create_context_with_flags:<glcontextegl0> attempting to create OpenGL ES context version 3.1 flags 1 profile 0 0:00:00.233236279 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:811:_create_context_with_flags:<glcontextegl0> attempting to create OpenGL ES context version 3.1 flags 0 profile 0 0:00:00.233424444 12420 0x55a0db0c7d50 INFO glcontext gstglcontext_egl.c:757:gst_gl_context_egl_choose_config: config set: 94149356392512, 1 0:00:00.233430205 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:774:gst_gl_context_egl_choose_config:<glcontextegl0> chosen EGLConfig: 0:00:00.233437458 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:415:gst_gl_context_egl_dump_config:<glcontextegl0> dumping EGLConfig 0x55a0daf19040 with id 0x21 and native visual id 0x0 of type 0x3038 0:00:00.233443340 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:448:gst_gl_context_egl_dump_config:<glcontextegl0> Conformant for OpenGL|OpenGL ES|OpenGL ES 2.x|OpenGL ES 3.x 0:00:00.233448790 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:481:gst_gl_context_egl_dump_config:<glcontextegl0> Renderable for OpenGL|OpenGL ES|OpenGL ES 2.x|OpenGL ES 3.x 0:00:00.233454310 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:514:gst_gl_context_egl_dump_config:<glcontextegl0> Surface for (0x4) window 0:00:00.233462165 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:554:gst_gl_context_egl_dump_config:<glcontextegl0> [R, G, B, A] = [8, 8, 8, 8] 0:00:00.233467776 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:576:gst_gl_context_egl_dump_config:<glcontextegl0> [D, S] = [0, 0] 0:00:00.233473466 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:587:gst_gl_context_egl_dump_config:<glcontextegl0> Swap interval range is [0, 1] 0:00:00.233479247 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:601:gst_gl_context_egl_dump_config:<glcontextegl0> PBuffer maximum dimensions are [4096, 4096]. Max pixels are 0 0:00:00.233484948 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:614:gst_gl_context_egl_dump_config:<glcontextegl0> Multisample buffers: 0 and Samples per pixel: 0 0:00:00.233490719 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:811:_create_context_with_flags:<glcontextegl0> attempting to create OpenGL ES context version 3.0 flags 1 profile 0 0:00:00.233650771 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:811:_create_context_with_flags:<glcontextegl0> attempting to create OpenGL ES context version 3.0 flags 0 profile 0 0:00:00.233826393 12420 0x55a0db0c7d50 INFO glcontext gstglcontext_egl.c:757:gst_gl_context_egl_choose_config: config set: 94149356392512, 1 0:00:00.233832124 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:774:gst_gl_context_egl_choose_config:<glcontextegl0> chosen EGLConfig: 0:00:00.233839207 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:415:gst_gl_context_egl_dump_config:<glcontextegl0> dumping EGLConfig 0x55a0daf19040 with id 0x21 and native visual id 0x0 of type 0x3038 0:00:00.233844948 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:448:gst_gl_context_egl_dump_config:<glcontextegl0> Conformant for OpenGL|OpenGL ES|OpenGL ES 2.x|OpenGL ES 3.x 0:00:00.233850238 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:481:gst_gl_context_egl_dump_config:<glcontextegl0> Renderable for OpenGL|OpenGL ES|OpenGL ES 2.x|OpenGL ES 3.x 0:00:00.233855668 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:514:gst_gl_context_egl_dump_config:<glcontextegl0> Surface for (0x4) window 0:00:00.233863342 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:554:gst_gl_context_egl_dump_config:<glcontextegl0> [R, G, B, A] = [8, 8, 8, 8] 0:00:00.233868833 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:576:gst_gl_context_egl_dump_config:<glcontextegl0> [D, S] = [0, 0] 0:00:00.233875095 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:587:gst_gl_context_egl_dump_config:<glcontextegl0> Swap interval range is [0, 1] 0:00:00.233880996 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:601:gst_gl_context_egl_dump_config:<glcontextegl0> PBuffer maximum dimensions are [4096, 4096]. Max pixels are 0 0:00:00.233886807 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:614:gst_gl_context_egl_dump_config:<glcontextegl0> Multisample buffers: 0 and Samples per pixel: 0 0:00:00.233892738 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:811:_create_context_with_flags:<glcontextegl0> attempting to create OpenGL ES context version 2.0 flags 1 profile 0 0:00:00.234048883 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:811:_create_context_with_flags:<glcontextegl0> attempting to create OpenGL ES context version 2.0 flags 0 profile 0 0:00:00.234223102 12420 0x55a0db0c7d50 INFO glcontext gstglcontext_egl.c:757:gst_gl_context_egl_choose_config: config set: 94149356392512, 1 0:00:00.234228692 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:774:gst_gl_context_egl_choose_config:<glcontextegl0> chosen EGLConfig: 0:00:00.234235746 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:415:gst_gl_context_egl_dump_config:<glcontextegl0> dumping EGLConfig 0x55a0daf19040 with id 0x21 and native visual id 0x0 of type 0x3038 0:00:00.234241276 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:448:gst_gl_context_egl_dump_config:<glcontextegl0> Conformant for OpenGL|OpenGL ES|OpenGL ES 2.x|OpenGL ES 3.x 0:00:00.234247047 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:481:gst_gl_context_egl_dump_config:<glcontextegl0> Renderable for OpenGL|OpenGL ES|OpenGL ES 2.x|OpenGL ES 3.x 0:00:00.234252377 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:514:gst_gl_context_egl_dump_config:<glcontextegl0> Surface for (0x4) window 0:00:00.234259721 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:554:gst_gl_context_egl_dump_config:<glcontextegl0> [R, G, B, A] = [8, 8, 8, 8] 0:00:00.234265452 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:576:gst_gl_context_egl_dump_config:<glcontextegl0> [D, S] = [0, 0] 0:00:00.234270832 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:587:gst_gl_context_egl_dump_config:<glcontextegl0> Swap interval range is [0, 1] 0:00:00.234276723 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:601:gst_gl_context_egl_dump_config:<glcontextegl0> PBuffer maximum dimensions are [4096, 4096]. Max pixels are 0 0:00:00.234282464 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:614:gst_gl_context_egl_dump_config:<glcontextegl0> Multisample buffers: 0 and Samples per pixel: 0 0:00:00.234288655 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:811:_create_context_with_flags:<glcontextegl0> attempting to create OpenGL ES context version 0.0 flags 1 profile 0 0:00:00.234456923 12420 0x55a0db0c7d50 DEBUG glcontext gstglcontext_egl.c:811:_create_context_with_flags:<glcontextegl0> attempting to create OpenGL ES context version 0.0 flags 0 profile 0 0:00:00.234630040 12420 0x55a0db0c7d50 WARN glcontext gstglcontext.c:1326:gst_gl_context_create_thread:<glcontextegl0> Failed to create context 0:00:00.234645209 12420 0x55a0da884b50 INFO glcontext gstglcontext.c:1079:gst_gl_context_create:<glcontextegl0> gl thread created 0:00:00.234658173 12420 0x55a0da884b50 DEBUG gldisplay gstgldisplay.c:732:gst_gl_display_remove_window:<gldisplaywayland0> Removing window <glwindowwaylandegl0> (0x55a0dad54660) from internal list 0:00:00.234668743 12420 0x55a0da884b50 DEBUG glcontext gstglcontext.c:746:gst_gl_context_finalize:<glcontextegl0> End of finalize 0:00:00.234673923 12420 0x55a0da884b50 WARN gtkgstglwidget gtkgstglwidget.c:644:gtk_gst_gl_widget_init_winsys: Could not create OpenGL context: Failed to create a OpenGL context: EGL_BAD_ALLOC 0:00:00.234680866 12420 0x55a0da884b50 WARN gtkglsink gstgtkglsink.c:270:gst_gtk_gl_sink_start:<gtkglsink0> error: Failed to initialize OpenGL with Gtk
Tracing where it fails with gdb, after doing (suggested by gdb) "dnf --enablerepo='*debug*' install mesa-va-drivers-freeworld-debuginfo-24.3.3-4.fc41.x86_64", the point where it fails seems to be at _mesa_initialize_context, where "api" is API_OPENGLES2 which has the value 2, but according to the disassembly of the code around the switch, only 0 and 3 (API_OPENGL_COMPAT and API_OPENGL_CORE) are accepted. Which appears to indicate that neither HAVE_OPENGL_ES_2 nor HAVE_OPENGL_ES_1 are defined at that point. #0 0x00007fffc53f8e31 in _mesa_initialize_context (ctx=ctx@entry=0x7fffdf935010, api=api@entry=API_OPENGLES2, no_error=no_error@entry=false, visual=visual@entry=0x7fff7f7fd900, share_list=share_list@entry=0x7fffdff35010, driverFunctions=driverFunctions@entry=0x7fff7f7fd850) at ../src/mesa/main/context.c:1093 #1 0x00007fffc52b71c3 in st_create_context (api=API_OPENGLES2, pipe=pipe@entry=0x7fff70054c80, visual=0x7fff7f7fd900, share=share@entry=0x555555e5bc00, options=options@entry=0x7fff7f7fda28, no_error=no_error@entry=false, has_egl_image_validate=true) at ../src/mesa/state_tracker/st_context.c:845 #2 0x00007fffc52ca62c in st_api_create_context (fscreen=fscreen@entry=0x555555a4b810, attribs=attribs@entry=0x7fff7f7fda00, error=error@entry=0x7fff7f7fd9fc, shared_ctx=shared_ctx@entry=0x555555e5bc00) at ../src/mesa/state_tracker/st_manager.c:991 #3 0x00007fffc52205f1 in dri_create_context (screen=0x555555a4b810, api=<optimized out>, visual=visual@entry=0x555555c156f0, ctx_config=ctx_config@entry=0x7fff7f7fdaf0, error=error@entry=0x7fff7f7fdb8c, sharedContextPrivate=sharedContextPrivate@entry=0x555555d9ffd0, loaderPrivate=0x7fff700030a0) at ../src/gallium/frontends/dri/dri_context.c:181 #4 0x00007fffc5224658 in driCreateContextAttribs (screen=<optimized out>, api=<optimized out>, config=0x555555c156f0, shared=shared@entry=0x555555d9ffd0, num_attribs=<optimized out>, attribs=<optimized out>, error=0x7fff7f7fdb8c, data=0x7fff700030a0) at ../src/gallium/frontends/dri/dri_util.c:603 #5 0x00007fffe45574aa in dri2_create_context (disp=0x555555a46800, conf=0x555555c2c980, share_list=0x555555d9ff50, attrib_list=0x7fff7f7fdc80) at ../src/egl/drivers/dri2/egl_dri2.c:1284 #6 0x00007fffe4548e53 in eglCreateContext (dpy=<optimized out>, config=0x555555c2c980, share_list=0x555555d9ff50, attrib_list=0x7fff7f7fdc80) at ../src/egl/main/eglapi.c:913 #7 0x00007fffe96370e9 in _create_context_with_flags (egl=egl@entry=0x555555e83fe0 [GstGLContextEGL|glcontextegl0], share_context=share_context@entry=0x555555d9ff50, gl_api=gl_api@entry=GST_GL_API_GLES2, major=major@entry=3, minor=minor@entry=2, contextFlags=contextFlags@entry=1, profileMask=<optimized out>) at ../gst-libs/gst/gl/egl/gstglcontext_egl.c:844 #8 0x00007fffe9639a9e in gst_gl_context_egl_create_context (context=0x555555e83fe0 [GstGLContextEGL|glcontextegl0], gl_api=<optimized out>, other_context=0x555555e7f770 [GstGLWrappedContext|glwrappedcontext0], error=0x7fffffffd610) at ../gst-libs/gst/gl/egl/gstglcontext_egl.c:957 #9 0x00007fffe960c989 in gst_gl_context_create_thread (context=0x555555e83fe0 [GstGLContextEGL|glcontextegl0]) at ../gst-libs/gst/gl/gstglcontext.c:1324 #10 0x00007ffff7d7dd43 in g_thread_proxy (data=0x555555e7f260) at ../glib/gthread.c:892 #11 0x00007ffff7b28148 in start_thread (arg=<optimized out>) at pthread_create.c:448 #12 0x00007ffff7bac0cc in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
Doing the following pair of commands fixes this issue: sudo dnf swap mesa-va-drivers-freeworld mesa-va-drivers sudo dnf swap mesa-vdpau-drivers-freeworld mesa-vdpau-drivers So this is actually https://bugzilla.rpmfusion.org/show_bug.cgi?id=7147
Possible duplicated: https://bugzilla.redhat.com/show_bug.cgi?id=2337385
I can't check anymore since I already uninstalled the package, but I'm guessing that the offending commit was https://pkgs.rpmfusion.org/cgit/free/mesa-freeworld.git/commit/?h=f41&id=a11913c86bf02a4c190334fb4245f7b98143f4bd (Fix tearing due to fedora libgallium), since I recall that the offending function was in libgallium. If that's the case, removing the offending ld.so.conf.d file (and perhaps re-running ldconfig after that) could also be a workaround, instead of uninstalling the package. And if that's the case, then looking at https://pkgs.rpmfusion.org/cgit/free/mesa-freeworld.git/tree/mesa-freeworld.spec?h=f41&id=a11913c86bf02a4c190334fb4245f7b98143f4bd the offending arguments to meson would be "-Dgles1=disabled" and "-Dgles2=disabled", which match what I saw at _mesa_initialize_context. Compare with https://src.fedoraproject.org/rpms/mesa/blob/f41/f/mesa.spec which has them as "-Dgles1=enabled" and "-Dgles2=enabled". Perhaps other build arguments also have to be synchronized between these spec files (I only looked at these two arguments).
Indeed, swapping mesa*-drivers-freeworld for regular mesa*-drivers works around this issue.
The solution suggested by Cesar makes sense, but @leigh123linux might be able to confirm.
I agree with https://bugzilla.redhat.com/show_bug.cgi?id=2338414#c7 - it looks like the build flags need to be the same in both packages for them to be actually interchangeable.
I believe the build flags have been synced at rpmfusion.