Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SIGSEGV in init on Iris Xe #1538

Open
tv42 opened this issue Sep 18, 2024 · 9 comments
Open

SIGSEGV in init on Iris Xe #1538

tv42 opened this issue Sep 18, 2024 · 9 comments

Comments

@tv42
Copy link

tv42 commented Sep 18, 2024

Hi. I'm trying to use niri >v0.1.6 on NixOS 24.05 and Smithay startup is segfaulting in

(gdb) bt
#0  0x00007fbf5b84c95c in __strlen_evex () from /nix/store/3dyw8dzj9ab4m8hv5dpyx7zii8d0w6fi-glibc-2.39-52/lib/libc.so.6
#1  0x00007fbf5b77ad32 in strdup () from /nix/store/3dyw8dzj9ab4m8hv5dpyx7zii8d0w6fi-glibc-2.39-52/lib/libc.so.6
#2  0x00007fbf4c9d8aca in dri2_initialize_drm ()
   from /nix/store/sqg9g1xw98fy3cmh59jhp8x0k164d9y0-mesa-24.0.7-drivers/lib/libEGL_mesa.so.0
#3  0x00007fbf4c9d0900 in dri2_initialize ()
   from /nix/store/sqg9g1xw98fy3cmh59jhp8x0k164d9y0-mesa-24.0.7-drivers/lib/libEGL_mesa.so.0
#4  0x00007fbf4c9c24a8 in eglInitialize ()
   from /nix/store/sqg9g1xw98fy3cmh59jhp8x0k164d9y0-mesa-24.0.7-drivers/lib/libEGL_mesa.so.0
#5  0x00005653a1afe35f in smithay::backend::egl::display::EGLDisplay::new ()
#6  0x00005653a16796e2 in niri::backend::tty::Tty::device_added ()
#7  0x00005653a16734d9 in niri::backend::tty::Tty::init ()
#8  0x00005653a161d1a4 in niri::niri::State::new ()
#9  0x00005653a1ba9d19 in niri::main ()
#10 0x00005653a1bc5493 in std::sys::backtrace::__rust_begin_short_backtrace ()
#11 0x00005653a1bd50d9 in std::rt::lang_start::{{closure}} ()
#12 0x00005653a2067285 in std::rt::lang_start_internal ()
#13 0x00005653a1bafe7c in main ()

The call stack is

  • smithay::backend::egl::display::EGLDisplay::new
  • ffi::egl::Initialize
  • dri2_initialize_drm
  • __strdup
  • __strlen_evex

I have debug output on both sides of EGLDisplay::new and it never returns.
That strdup SIGSEGV is typically caused by passing it a NULL string, but I haven't yet figured out what string that is (gdb isn't getting symbol tables, haven't figured that out).

00:02.0 VGA compatible controller: Intel Corporation TigerLake-LP GT2 [Iris Xe Graphics] (rev 01) (prog-if 00 [VGA controller])
        Subsystem: Framework Computer Inc. Device 0001
        Flags: bus master, fast devsel, latency 0, IRQ 202, IOMMU group 4
        Memory at 605c000000 (64-bit, non-prefetchable) [size=16M]
        Memory at 4000000000 (64-bit, prefetchable) [size=256M]
        I/O ports at 3000 [size=64]
        Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
        Capabilities: <access denied>
        Kernel driver in use: i915
        Kernel modules: i915, xe
@Drakulix
Copy link
Member

Since eglInitialize is not a call that takes a string (see here), I am not convinced, this is a smithay bug from this stack trace.

@tv42
Copy link
Author

tv42 commented Sep 18, 2024

That is totally plausible, I'd be thrilled to demonstrate the same crash with a small C program but I'm not that far in debugging yet.

@cmeissl
Copy link
Collaborator

cmeissl commented Sep 18, 2024

The only strdup in dri2_initialize_drm is here. So for some reason the driver_name itself seems to be NULL. The gbm_dri should be valid as it is already used befor on line 632.

@cmeissl
Copy link
Collaborator

cmeissl commented Sep 18, 2024

I only had a quick look at this and from what I can tell the driver_name should only ever be NULL in an error case, if for example the driver failed to load. But in this cases we should not reach dri2_initialize_drm at all, so either there is some corruption going on or something is seriously broken on this system. Would be interesting to see what gdb prints for dri2_dpy->gbm_dri in dri2_initialize_drm. You might be able to print it by using something like p *dri2_dpy->gbm_dri (might require selecting the correct frame). If this does not work after the segfault occured it might be possible to launch the application through gdb and set a breakpoint for dri2_initialize_drm with b dri2_initialize_drm before continuing the program and then stepping through the function printing out gbm_dri before the segfault occurs.

@ids1024
Copy link
Member

ids1024 commented Sep 18, 2024

Not sure if NixOS has a way to get debug symbols for Mesa. I'd personally try building Mesa from source to get better debugging output and be able to try things (and see if the issue applies to the latest Mesa commit).

You could also see if eglinfo runs without error. If it's a Mesa problem I might expect anything using the same EGL platform to run into this.

@tv42
Copy link
Author

tv42 commented Sep 18, 2024

Hmm. Smithay logs

2024-09-18T15:46:33.358267Z  INFO smithay::backend::egl::display: Successfully selected EGL platform: PLATFORM_GBM_KHR

but eglinfo with those libraries in that same setting (run on tty) says

GBM platform:
eglinfo: eglInitialize failed

It does pick up the Iris Xe as a "Device platform".

full eglinfo output

EGL client extensions string:
    EGL_EXT_client_extensions, EGL_EXT_device_base, 
    EGL_EXT_device_enumeration, EGL_EXT_device_query, EGL_EXT_explicit_device, 
    EGL_EXT_platform_base, EGL_EXT_platform_device, EGL_EXT_platform_wayland, 
    EGL_EXT_platform_x11, EGL_EXT_platform_xcb, 
    EGL_KHR_client_get_all_proc_addresses, EGL_KHR_debug, 
    EGL_KHR_platform_gbm, EGL_KHR_platform_wayland, EGL_KHR_platform_x11, 
    EGL_MESA_platform_gbm, EGL_MESA_platform_surfaceless

GBM platform:
eglinfo: eglInitialize failed

Wayland platform:
eglinfo: eglInitialize failed

X11 platform:
eglinfo: eglInitialize failed

Surfaceless platform:
EGL API version: 1.5
EGL vendor string: Mesa Project
EGL version string: 1.5
EGL client APIs: OpenGL OpenGL_ES 
EGL driver name: iris
EGL extensions string:
    EGL_ANDROID_blob_cache, EGL_ANDROID_native_fence_sync, 
    EGL_EXT_create_context_robustness, EGL_EXT_image_dma_buf_import, 
    EGL_EXT_image_dma_buf_import_modifiers, EGL_EXT_pixel_format_float, 
    EGL_EXT_query_reset_notification_strategy, EGL_IMG_context_priority, 
    EGL_KHR_cl_event2, EGL_KHR_config_attribs, EGL_KHR_context_flush_control, 
    EGL_KHR_create_context, EGL_KHR_create_context_no_error, 
    EGL_KHR_fence_sync, EGL_KHR_get_all_proc_addresses, EGL_KHR_gl_colorspace, 
    EGL_KHR_gl_renderbuffer_image, EGL_KHR_gl_texture_2D_image, 
    EGL_KHR_gl_texture_3D_image, EGL_KHR_gl_texture_cubemap_image, 
    EGL_KHR_image_base, EGL_KHR_no_config_context, EGL_KHR_reusable_sync, 
    EGL_KHR_surfaceless_context, EGL_KHR_wait_sync, 
    EGL_MESA_configless_context, EGL_MESA_drm_image, EGL_MESA_gl_interop, 
    EGL_MESA_image_dma_buf_export, EGL_MESA_query_driver, 
    EGL_WL_bind_wayland_display
OpenGL core profile vendor: Intel
OpenGL core profile renderer: Mesa Intel(R) Xe Graphics (TGL GT2)
OpenGL core profile version: 4.6 (Core Profile) Mesa 24.0.7
OpenGL core profile shading language version: 4.60
OpenGL core profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth, 
    GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, 
    GL_AMD_gpu_shader_int64, GL_AMD_multi_draw_indirect, 
    GL_AMD_performance_monitor, GL_AMD_pinned_memory, 
    GL_AMD_query_buffer_object, GL_AMD_seamless_cubemap_per_texture, 
    GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax, 
    GL_AMD_texture_texture4, GL_AMD_vertex_shader_layer, 
    GL_AMD_vertex_shader_viewport_index, GL_ANGLE_texture_compression_dxt3, 
    GL_ANGLE_texture_compression_dxt5, GL_ARB_ES2_compatibility, 
    GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, 
    GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, 
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, 
    GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, 
    GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image, 
    GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, 
    GL_ARB_depth_clamp, GL_ARB_derivative_control, GL_ARB_direct_state_access, 
    GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend, 
    GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, 
    GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, 
    GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, 
    GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, 
    GL_ARB_framebuffer_sRGB, GL_ARB_get_program_binary, 
    GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, 
    GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, 
    GL_ARB_half_float_vertex, GL_ARB_indirect_parameters, 
    GL_ARB_instanced_arrays, GL_ARB_internalformat_query, 
    GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, 
    GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_multi_bind, 
    GL_ARB_multi_draw_indirect, GL_ARB_occlusion_query2, 
    GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, 
    GL_ARB_pixel_buffer_object, GL_ARB_point_sprite, 
    GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, 
    GL_ARB_program_interface_query, GL_ARB_provoking_vertex, 
    GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, 
    GL_ARB_robustness, GL_ARB_sample_shading, GL_ARB_sampler_objects, 
    GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, 
    GL_ARB_separate_shader_objects, GL_ARB_shader_atomic_counter_ops, 
    GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, 
    GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, 
    GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, 
    GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, 
    GL_ARB_shader_objects, GL_ARB_shader_precision, 
    GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, 
    GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, 
    GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, 
    GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, 
    GL_ARB_shading_language_packing, GL_ARB_spirv_extensions, 
    GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, 
    GL_ARB_texture_barrier, GL_ARB_texture_border_clamp, 
    GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, 
    GL_ARB_texture_buffer_range, GL_ARB_texture_compression_bptc, 
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map_array, 
    GL_ARB_texture_filter_anisotropic, GL_ARB_texture_float, 
    GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, 
    GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, 
    GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, 
    GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, 
    GL_ARB_texture_stencil8, GL_ARB_texture_storage, 
    GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, 
    GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, 
    GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, 
    GL_ARB_transform_feedback_overflow_query, GL_ARB_uniform_buffer_object, 
    GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object, 
    GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, 
    GL_ARB_vertex_buffer_object, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_viewport_array, GL_ATI_blend_equation_separate, 
    GL_ATI_texture_float, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, 
    GL_EXT_abgr, GL_EXT_blend_equation_separate, GL_EXT_debug_label, 
    GL_EXT_demote_to_helper_invocation, GL_EXT_depth_bounds_test, 
    GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_framebuffer_blit, 
    GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, 
    GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_packed_depth_stencil, GL_EXT_packed_float, 
    GL_EXT_pixel_buffer_object, GL_EXT_polygon_offset_clamp, 
    GL_EXT_provoking_vertex, GL_EXT_semaphore, GL_EXT_semaphore_fd, 
    GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_integer_mix, 
    GL_EXT_shader_samples_identical, GL_EXT_texture_array, 
    GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_rgtc, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_filter_anisotropic, 
    GL_EXT_texture_integer, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, 
    GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, 
    GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, 
    GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, 
    GL_IBM_multimode_draw_arrays, GL_INTEL_blackhole_render, 
    GL_INTEL_conservative_rasterization, GL_INTEL_performance_query, 
    GL_INTEL_shader_atomic_float_minmax, GL_INTEL_shader_integer_functions2, 
    GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, 
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, 
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, 
    GL_KHR_robustness, GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y, 
    GL_MESA_pack_invert, GL_MESA_shader_integer_functions, 
    GL_MESA_texture_const_bandwidth, GL_MESA_texture_signed_rgba, 
    GL_NV_alpha_to_coverage_dither_control, GL_NV_compute_shader_derivatives, 
    GL_NV_conditional_render, GL_NV_copy_image, GL_NV_depth_clamp, 
    GL_NV_fragment_shader_interlock, GL_NV_packed_depth_stencil, 
    GL_NV_texture_barrier, GL_OES_EGL_image, GL_S3_s3tc
OpenGL compatibility profile vendor: Intel
OpenGL compatibility profile renderer: Mesa Intel(R) Xe Graphics (TGL GT2)
OpenGL compatibility profile version: 4.6 (Compatibility Profile) Mesa 24.0.7
OpenGL compatibility profile shading language version: 4.60
OpenGL compatibility profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth, 
    GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, 
    GL_AMD_multi_draw_indirect, GL_AMD_performance_monitor, 
    GL_AMD_pinned_memory, GL_AMD_query_buffer_object, 
    GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_stencil_export, 
    GL_AMD_shader_trinary_minmax, GL_AMD_texture_texture4, 
    GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_viewport_index, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_packed_pixels, GL_ARB_ES2_compatibility, 
    GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, 
    GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, 
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, 
    GL_ARB_color_buffer_float, GL_ARB_compatibility, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, 
    GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, 
    GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image, 
    GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, 
    GL_ARB_depth_clamp, GL_ARB_depth_texture, GL_ARB_derivative_control, 
    GL_ARB_direct_state_access, GL_ARB_draw_buffers, 
    GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, 
    GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, 
    GL_ARB_fragment_program, GL_ARB_fragment_program_shadow, 
    GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, 
    GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, 
    GL_ARB_framebuffer_sRGB, GL_ARB_get_program_binary, 
    GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, 
    GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, 
    GL_ARB_half_float_vertex, GL_ARB_indirect_parameters, 
    GL_ARB_instanced_arrays, GL_ARB_internalformat_query, 
    GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, 
    GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_multi_bind, 
    GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, 
    GL_ARB_occlusion_query, GL_ARB_occlusion_query2, 
    GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, 
    GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite, 
    GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, 
    GL_ARB_program_interface_query, GL_ARB_provoking_vertex, 
    GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, 
    GL_ARB_robustness, GL_ARB_sample_shading, GL_ARB_sampler_objects, 
    GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, 
    GL_ARB_separate_shader_objects, GL_ARB_shader_atomic_counter_ops, 
    GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, 
    GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, 
    GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, 
    GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, 
    GL_ARB_shader_objects, GL_ARB_shader_precision, 
    GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, 
    GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, 
    GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, 
    GL_ARB_shading_language_100, GL_ARB_shading_language_420pack, 
    GL_ARB_shading_language_include, GL_ARB_shading_language_packing, 
    GL_ARB_shadow, GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, 
    GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, 
    GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, 
    GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, 
    GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, 
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map, 
    GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, 
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 
    GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, 
    GL_ARB_texture_float, GL_ARB_texture_gather, 
    GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, 
    GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, 
    GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, 
    GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, 
    GL_ARB_texture_stencil8, GL_ARB_texture_storage, 
    GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, 
    GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, 
    GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, 
    GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, 
    GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, 
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, 
    GL_ARB_vertex_attrib_binding, GL_ARB_vertex_buffer_object, 
    GL_ARB_vertex_program, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_viewport_array, GL_ARB_window_pos, GL_ATI_blend_equation_separate, 
    GL_ATI_draw_buffers, GL_ATI_fragment_shader, GL_ATI_separate_stencil, 
    GL_ATI_texture_compression_3dc, GL_ATI_texture_env_combine3, 
    GL_ATI_texture_float, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, 
    GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, 
    GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, 
    GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array, 
    GL_EXT_copy_texture, GL_EXT_debug_label, 
    GL_EXT_demote_to_helper_invocation, GL_EXT_depth_bounds_test, 
    GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, 
    GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, 
    GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, 
    GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, 
    GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_multi_draw_arrays, 
    GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, 
    GL_EXT_pixel_buffer_object, GL_EXT_point_parameters, 
    GL_EXT_polygon_offset_clamp, GL_EXT_provoking_vertex, 
    GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, 
    GL_EXT_semaphore_fd, GL_EXT_separate_specular_color, 
    GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_integer_mix, 
    GL_EXT_shader_samples_identical, GL_EXT_shadow_funcs, 
    GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, 
    GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_array, 
    GL_EXT_texture_buffer_object, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_latc, GL_EXT_texture_compression_rgtc, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, 
    GL_EXT_texture_edge_clamp, GL_EXT_texture_env_add, 
    GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_integer, 
    GL_EXT_texture_lod_bias, GL_EXT_texture_object, GL_EXT_texture_rectangle, 
    GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_decode, 
    GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, 
    GL_EXT_texture_snorm, GL_EXT_texture_swizzle, GL_EXT_timer_query, 
    GL_EXT_transform_feedback, GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, 
    GL_EXT_vertex_attrib_64bit, GL_IBM_multimode_draw_arrays, 
    GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat, 
    GL_INGR_blend_func_separate, GL_INTEL_blackhole_render, 
    GL_INTEL_performance_query, GL_INTEL_shader_atomic_float_minmax, 
    GL_INTEL_shader_integer_functions2, GL_KHR_blend_equation_advanced, 
    GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, 
    GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile, 
    GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, 
    GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y, 
    GL_MESA_pack_invert, GL_MESA_shader_integer_functions, 
    GL_MESA_texture_const_bandwidth, GL_MESA_texture_signed_rgba, 
    GL_MESA_window_pos, GL_NV_ES1_1_compatibility, 
    GL_NV_alpha_to_coverage_dither_control, GL_NV_blend_square, 
    GL_NV_compute_shader_derivatives, GL_NV_conditional_render, 
    GL_NV_copy_image, GL_NV_depth_clamp, GL_NV_fog_distance, 
    GL_NV_fragment_shader_interlock, GL_NV_half_float, 
    GL_NV_light_max_exponent, GL_NV_packed_depth_stencil, 
    GL_NV_primitive_restart, GL_NV_texgen_reflection, GL_NV_texture_barrier, 
    GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image, 
    GL_OES_read_format, GL_S3_s3tc, GL_SGIS_generate_mipmap, 
    GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp, 
    GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays
OpenGL ES profile vendor: Intel
OpenGL ES profile renderer: Mesa Intel(R) Xe Graphics (TGL GT2)
OpenGL ES profile version: OpenGL ES 3.2 Mesa 24.0.7
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
    GL_AMD_performance_monitor, GL_ANDROID_extension_pack_es31a, 
    GL_ANGLE_pack_reverse_row_order, GL_ANGLE_texture_compression_dxt3, 
    GL_ANGLE_texture_compression_dxt5, GL_APPLE_sync, 
    GL_APPLE_texture_max_level, GL_EXT_EGL_image_storage, 
    GL_EXT_base_instance, GL_EXT_blend_func_extended, GL_EXT_blend_minmax, 
    GL_EXT_buffer_storage, GL_EXT_clear_texture, GL_EXT_clip_control, 
    GL_EXT_clip_cull_distance, GL_EXT_color_buffer_float, 
    GL_EXT_color_buffer_half_float, GL_EXT_compressed_ETC1_RGB8_sub_texture, 
    GL_EXT_copy_image, GL_EXT_debug_label, GL_EXT_demote_to_helper_invocation, 
    GL_EXT_depth_clamp, GL_EXT_discard_framebuffer, 
    GL_EXT_disjoint_timer_query, GL_EXT_draw_buffers, 
    GL_EXT_draw_buffers_indexed, GL_EXT_draw_elements_base_vertex, 
    GL_EXT_draw_instanced, GL_EXT_float_blend, GL_EXT_frag_depth, 
    GL_EXT_geometry_point_size, GL_EXT_geometry_shader, GL_EXT_gpu_shader5, 
    GL_EXT_instanced_arrays, GL_EXT_map_buffer_range, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_multi_draw_arrays, 
    GL_EXT_occlusion_query_boolean, GL_EXT_polygon_offset_clamp, 
    GL_EXT_primitive_bounding_box, GL_EXT_read_format_bgra, 
    GL_EXT_render_snorm, GL_EXT_robustness, GL_EXT_sRGB_write_control, 
    GL_EXT_semaphore, GL_EXT_semaphore_fd, GL_EXT_separate_shader_objects, 
    GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_group_vote, 
    GL_EXT_shader_implicit_conversions, GL_EXT_shader_integer_mix, 
    GL_EXT_shader_io_blocks, GL_EXT_shader_samples_identical, 
    GL_EXT_tessellation_point_size, GL_EXT_tessellation_shader, 
    GL_EXT_texture_border_clamp, GL_EXT_texture_buffer, 
    GL_EXT_texture_compression_bptc, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, 
    GL_EXT_texture_compression_s3tc_srgb, GL_EXT_texture_cube_map_array, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_format_BGRA8888, 
    GL_EXT_texture_mirror_clamp_to_edge, GL_EXT_texture_norm16, 
    GL_EXT_texture_query_lod, GL_EXT_texture_rg, GL_EXT_texture_sRGB_R8, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, 
    GL_EXT_texture_type_2_10_10_10_REV, GL_EXT_texture_view, 
    GL_EXT_unpack_subimage, GL_INTEL_blackhole_render, 
    GL_INTEL_conservative_rasterization, GL_INTEL_performance_query, 
    GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, 
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, 
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, 
    GL_KHR_robustness, GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_bgra, 
    GL_MESA_framebuffer_flip_y, GL_MESA_sampler_objects, 
    GL_MESA_shader_integer_functions, GL_MESA_texture_const_bandwidth, 
    GL_NV_alpha_to_coverage_dither_control, GL_NV_compute_shader_derivatives, 
    GL_NV_conditional_render, GL_NV_draw_buffers, GL_NV_fbo_color_attachments, 
    GL_NV_fragment_shader_interlock, GL_NV_generate_mipmap_sRGB, 
    GL_NV_image_formats, GL_NV_pack_subimage, GL_NV_pixel_buffer_object, 
    GL_NV_read_buffer, GL_NV_read_depth, GL_NV_read_depth_stencil, 
    GL_NV_read_stencil, GL_NV_shader_noperspective_interpolation, 
    GL_NV_texture_barrier, GL_OES_EGL_image, GL_OES_EGL_image_external, 
    GL_OES_EGL_image_external_essl3, GL_OES_EGL_sync, 
    GL_OES_compressed_ETC1_RGB8_texture, GL_OES_copy_image, GL_OES_depth24, 
    GL_OES_depth_texture, GL_OES_depth_texture_cube_map, 
    GL_OES_draw_buffers_indexed, GL_OES_draw_elements_base_vertex, 
    GL_OES_element_index_uint, GL_OES_fbo_render_mipmap, 
    GL_OES_geometry_point_size, GL_OES_geometry_shader, 
    GL_OES_get_program_binary, GL_OES_gpu_shader5, GL_OES_mapbuffer, 
    GL_OES_packed_depth_stencil, GL_OES_primitive_bounding_box, 
    GL_OES_required_internalformat, GL_OES_rgb8_rgba8, GL_OES_sample_shading, 
    GL_OES_sample_variables, GL_OES_shader_image_atomic, 
    GL_OES_shader_io_blocks, GL_OES_shader_multisample_interpolation, 
    GL_OES_standard_derivatives, GL_OES_stencil8, GL_OES_surfaceless_context, 
    GL_OES_tessellation_point_size, GL_OES_tessellation_shader, 
    GL_OES_texture_3D, GL_OES_texture_border_clamp, GL_OES_texture_buffer, 
    GL_OES_texture_cube_map_array, GL_OES_texture_float, 
    GL_OES_texture_float_linear, GL_OES_texture_half_float, 
    GL_OES_texture_half_float_linear, GL_OES_texture_npot, 
    GL_OES_texture_stencil8, GL_OES_texture_storage_multisample_2d_array, 
    GL_OES_texture_view, GL_OES_vertex_array_object, GL_OES_vertex_half_float, 
    GL_OES_viewport_array
Configurations:
     bf lv colorbuffer dp st  ms    vis   cav bi  renderable  supported
  id sz  l  r  g  b  a th cl ns b    id   eat nd gl es es2 vg surfaces 
---------------------------------------------------------------------
0x01 32  0 10 10 10  2  0  0  0 0 0x00--      a  y  y  y     pb
0x02 32  0 10 10 10  2 16  0  0 0 0x00--      a  y  y  y     pb
0x03 32  0 10 10 10  2 24  0  0 0 0x00--      a  y  y  y     pb
0x04 32  0 10 10 10  2 24  8  0 0 0x00--      a  y  y  y     pb
0x05 32  0 10 10 10  2  0  0  2 1 0x00--      a  y  y  y     pb
0x06 32  0 10 10 10  2  0  0  4 1 0x00--      a  y  y  y     pb
0x07 32  0 10 10 10  2  0  0  8 1 0x00--      a  y  y  y     pb
0x08 32  0 10 10 10  2  0  0 16 1 0x00--      a  y  y  y     pb
0x09 32  0 10 10 10  2 16  0  2 1 0x00--      a  y  y  y     pb
0x0a 32  0 10 10 10  2 16  0  4 1 0x00--      a  y  y  y     pb
0x0b 32  0 10 10 10  2 16  0  8 1 0x00--      a  y  y  y     pb
0x0c 32  0 10 10 10  2 16  0 16 1 0x00--      a  y  y  y     pb
0x0d 32  0 10 10 10  2 24  0  2 1 0x00--      a  y  y  y     pb
0x0e 32  0 10 10 10  2 24  0  4 1 0x00--      a  y  y  y     pb
0x0f 32  0 10 10 10  2 24  0  8 1 0x00--      a  y  y  y     pb
0x10 32  0 10 10 10  2 24  0 16 1 0x00--      a  y  y  y     pb
0x11 32  0 10 10 10  2 24  8  2 1 0x00--      a  y  y  y     pb
0x12 32  0 10 10 10  2 24  8  4 1 0x00--      a  y  y  y     pb
0x13 32  0 10 10 10  2 24  8  8 1 0x00--      a  y  y  y     pb
0x14 32  0 10 10 10  2 24  8 16 1 0x00--      a  y  y  y     pb
0x15 30  0 10 10 10  0  0  0  0 0 0x00--      y  y  y  y     pb
0x16 30  0 10 10 10  0 16  0  0 0 0x00--      y  y  y  y     pb
0x17 30  0 10 10 10  0 24  0  0 0 0x00--      y  y  y  y     pb
0x18 30  0 10 10 10  0 24  8  0 0 0x00--      y  y  y  y     pb
0x19 30  0 10 10 10  0  0  0  2 1 0x00--      y  y  y  y     pb
0x1a 30  0 10 10 10  0  0  0  4 1 0x00--      y  y  y  y     pb
0x1b 30  0 10 10 10  0  0  0  8 1 0x00--      y  y  y  y     pb
0x1c 30  0 10 10 10  0  0  0 16 1 0x00--      y  y  y  y     pb
0x1d 30  0 10 10 10  0 16  0  2 1 0x00--      y  y  y  y     pb
0x1e 30  0 10 10 10  0 16  0  4 1 0x00--      y  y  y  y     pb
0x1f 30  0 10 10 10  0 16  0  8 1 0x00--      y  y  y  y     pb
0x20 30  0 10 10 10  0 16  0 16 1 0x00--      y  y  y  y     pb
0x21 30  0 10 10 10  0 24  0  2 1 0x00--      y  y  y  y     pb
0x22 30  0 10 10 10  0 24  0  4 1 0x00--      y  y  y  y     pb
0x23 30  0 10 10 10  0 24  0  8 1 0x00--      y  y  y  y     pb
0x24 30  0 10 10 10  0 24  0 16 1 0x00--      y  y  y  y     pb
0x25 30  0 10 10 10  0 24  8  2 1 0x00--      y  y  y  y     pb
0x26 30  0 10 10 10  0 24  8  4 1 0x00--      y  y  y  y     pb
0x27 30  0 10 10 10  0 24  8  8 1 0x00--      y  y  y  y     pb
0x28 30  0 10 10 10  0 24  8 16 1 0x00--      y  y  y  y     pb
0x29 32  0  8  8  8  8  0  0  0 0 0x00--      a  y  y  y     pb
0x2a 32  0  8  8  8  8 16  0  0 0 0x00--      a  y  y  y     pb
0x2b 32  0  8  8  8  8 24  0  0 0 0x00--      a  y  y  y     pb
0x2c 32  0  8  8  8  8 24  8  0 0 0x00--      a  y  y  y     pb
0x2d 32  0  8  8  8  8  0  0  2 1 0x00--      a  y  y  y     pb
0x2e 32  0  8  8  8  8  0  0  4 1 0x00--      a  y  y  y     pb
0x2f 32  0  8  8  8  8  0  0  8 1 0x00--      a  y  y  y     pb
0x30 32  0  8  8  8  8  0  0 16 1 0x00--      a  y  y  y     pb
0x31 32  0  8  8  8  8 16  0  2 1 0x00--      a  y  y  y     pb
0x32 32  0  8  8  8  8 16  0  4 1 0x00--      a  y  y  y     pb
0x33 32  0  8  8  8  8 16  0  8 1 0x00--      a  y  y  y     pb
0x34 32  0  8  8  8  8 16  0 16 1 0x00--      a  y  y  y     pb
0x35 32  0  8  8  8  8 24  0  2 1 0x00--      a  y  y  y     pb
0x36 32  0  8  8  8  8 24  0  4 1 0x00--      a  y  y  y     pb
0x37 32  0  8  8  8  8 24  0  8 1 0x00--      a  y  y  y     pb
0x38 32  0  8  8  8  8 24  0 16 1 0x00--      a  y  y  y     pb
0x39 32  0  8  8  8  8 24  8  2 1 0x00--      a  y  y  y     pb
0x3a 32  0  8  8  8  8 24  8  4 1 0x00--      a  y  y  y     pb
0x3b 32  0  8  8  8  8 24  8  8 1 0x00--      a  y  y  y     pb
0x3c 32  0  8  8  8  8 24  8 16 1 0x00--      a  y  y  y     pb
0x3d 24  0  8  8  8  0  0  0  0 0 0x00--      y  y  y  y     pb
0x3e 24  0  8  8  8  0 16  0  0 0 0x00--      y  y  y  y     pb
0x3f 24  0  8  8  8  0 24  0  0 0 0x00--      y  y  y  y     pb
0x40 24  0  8  8  8  0 24  8  0 0 0x00--      y  y  y  y     pb
0x41 24  0  8  8  8  0  0  0  2 1 0x00--      y  y  y  y     pb
0x42 24  0  8  8  8  0  0  0  4 1 0x00--      y  y  y  y     pb
0x43 24  0  8  8  8  0  0  0  8 1 0x00--      y  y  y  y     pb
0x44 24  0  8  8  8  0  0  0 16 1 0x00--      y  y  y  y     pb
0x45 24  0  8  8  8  0 16  0  2 1 0x00--      y  y  y  y     pb
0x46 24  0  8  8  8  0 16  0  4 1 0x00--      y  y  y  y     pb
0x47 24  0  8  8  8  0 16  0  8 1 0x00--      y  y  y  y     pb
0x48 24  0  8  8  8  0 16  0 16 1 0x00--      y  y  y  y     pb
0x49 24  0  8  8  8  0 24  0  2 1 0x00--      y  y  y  y     pb
0x4a 24  0  8  8  8  0 24  0  4 1 0x00--      y  y  y  y     pb
0x4b 24  0  8  8  8  0 24  0  8 1 0x00--      y  y  y  y     pb
0x4c 24  0  8  8  8  0 24  0 16 1 0x00--      y  y  y  y     pb
0x4d 24  0  8  8  8  0 24  8  2 1 0x00--      y  y  y  y     pb
0x4e 24  0  8  8  8  0 24  8  4 1 0x00--      y  y  y  y     pb
0x4f 24  0  8  8  8  0 24  8  8 1 0x00--      y  y  y  y     pb
0x50 24  0  8  8  8  0 24  8 16 1 0x00--      y  y  y  y     pb
0x51 16  0  5  6  5  0  0  0  0 0 0x00--      y  y  y  y     pb
0x52 16  0  5  6  5  0 16  0  0 0 0x00--      y  y  y  y     pb
0x53 16  0  5  6  5  0 24  0  0 0 0x00--      y  y  y  y     pb
0x54 16  0  5  6  5  0 24  8  0 0 0x00--      y  y  y  y     pb
0x55 16  0  5  6  5  0  0  0  2 1 0x00--      y  y  y  y     pb
0x56 16  0  5  6  5  0  0  0  4 1 0x00--      y  y  y  y     pb
0x57 16  0  5  6  5  0  0  0  8 1 0x00--      y  y  y  y     pb
0x58 16  0  5  6  5  0  0  0 16 1 0x00--      y  y  y  y     pb
0x59 16  0  5  6  5  0 16  0  2 1 0x00--      y  y  y  y     pb
0x5a 16  0  5  6  5  0 16  0  4 1 0x00--      y  y  y  y     pb
0x5b 16  0  5  6  5  0 16  0  8 1 0x00--      y  y  y  y     pb
0x5c 16  0  5  6  5  0 16  0 16 1 0x00--      y  y  y  y     pb
0x5d 16  0  5  6  5  0 24  0  2 1 0x00--      y  y  y  y     pb
0x5e 16  0  5  6  5  0 24  0  4 1 0x00--      y  y  y  y     pb
0x5f 16  0  5  6  5  0 24  0  8 1 0x00--      y  y  y  y     pb
0x60 16  0  5  6  5  0 24  0 16 1 0x00--      y  y  y  y     pb
0x61 16  0  5  6  5  0 24  8  2 1 0x00--      y  y  y  y     pb
0x62 16  0  5  6  5  0 24  8  4 1 0x00--      y  y  y  y     pb
0x63 16  0  5  6  5  0 24  8  8 1 0x00--      y  y  y  y     pb
0x64 16  0  5  6  5  0 24  8 16 1 0x00--      y  y  y  y     pb
0x65 64  0 16 16 16 16  0  0  0 0 0x00--      a  y  y  y     pb
0x66 64  0 16 16 16 16 16  0  0 0 0x00--      a  y  y  y     pb
0x67 64  0 16 16 16 16 24  0  0 0 0x00--      a  y  y  y     pb
0x68 64  0 16 16 16 16 24  8  0 0 0x00--      a  y  y  y     pb
0x69 64  0 16 16 16 16  0  0  2 1 0x00--      a  y  y  y     pb
0x6a 64  0 16 16 16 16  0  0  4 1 0x00--      a  y  y  y     pb
0x6b 64  0 16 16 16 16  0  0  8 1 0x00--      a  y  y  y     pb
0x6c 64  0 16 16 16 16  0  0 16 1 0x00--      a  y  y  y     pb
0x6d 64  0 16 16 16 16 16  0  2 1 0x00--      a  y  y  y     pb
0x6e 64  0 16 16 16 16 16  0  4 1 0x00--      a  y  y  y     pb
0x6f 64  0 16 16 16 16 16  0  8 1 0x00--      a  y  y  y     pb
0x70 64  0 16 16 16 16 16  0 16 1 0x00--      a  y  y  y     pb
0x71 64  0 16 16 16 16 24  0  2 1 0x00--      a  y  y  y     pb
0x72 64  0 16 16 16 16 24  0  4 1 0x00--      a  y  y  y     pb
0x73 64  0 16 16 16 16 24  0  8 1 0x00--      a  y  y  y     pb
0x74 64  0 16 16 16 16 24  0 16 1 0x00--      a  y  y  y     pb
0x75 64  0 16 16 16 16 24  8  2 1 0x00--      a  y  y  y     pb
0x76 64  0 16 16 16 16 24  8  4 1 0x00--      a  y  y  y     pb
0x77 64  0 16 16 16 16 24  8  8 1 0x00--      a  y  y  y     pb
0x78 64  0 16 16 16 16 24  8 16 1 0x00--      a  y  y  y     pb
0x79 48  0 16 16 16  0  0  0  0 0 0x00--      y  y  y  y     pb
0x7a 48  0 16 16 16  0 16  0  0 0 0x00--      y  y  y  y     pb
0x7b 48  0 16 16 16  0 24  0  0 0 0x00--      y  y  y  y     pb
0x7c 48  0 16 16 16  0 24  8  0 0 0x00--      y  y  y  y     pb
0x7d 48  0 16 16 16  0  0  0  2 1 0x00--      y  y  y  y     pb
0x7e 48  0 16 16 16  0  0  0  4 1 0x00--      y  y  y  y     pb
0x7f 48  0 16 16 16  0  0  0  8 1 0x00--      y  y  y  y     pb
0x80 48  0 16 16 16  0  0  0 16 1 0x00--      y  y  y  y     pb
0x81 48  0 16 16 16  0 16  0  2 1 0x00--      y  y  y  y     pb
0x82 48  0 16 16 16  0 16  0  4 1 0x00--      y  y  y  y     pb
0x83 48  0 16 16 16  0 16  0  8 1 0x00--      y  y  y  y     pb
0x84 48  0 16 16 16  0 16  0 16 1 0x00--      y  y  y  y     pb
0x85 48  0 16 16 16  0 24  0  2 1 0x00--      y  y  y  y     pb
0x86 48  0 16 16 16  0 24  0  4 1 0x00--      y  y  y  y     pb
0x87 48  0 16 16 16  0 24  0  8 1 0x00--      y  y  y  y     pb
0x88 48  0 16 16 16  0 24  0 16 1 0x00--      y  y  y  y     pb
0x89 48  0 16 16 16  0 24  8  2 1 0x00--      y  y  y  y     pb
0x8a 48  0 16 16 16  0 24  8  4 1 0x00--      y  y  y  y     pb
0x8b 48  0 16 16 16  0 24  8  8 1 0x00--      y  y  y  y     pb
0x8c 48  0 16 16 16  0 24  8 16 1 0x00--      y  y  y  y     pb

Device platform:
Device #0:

EGL device extensions string:
    EGL_EXT_device_drm, EGL_EXT_device_drm_render_node
Platform Device platform:
EGL API version: 1.5
EGL vendor string: Mesa Project
EGL version string: 1.5
EGL client APIs: OpenGL OpenGL_ES 
EGL driver name: iris
EGL extensions string:
    EGL_ANDROID_blob_cache, EGL_ANDROID_native_fence_sync, 
    EGL_EXT_create_context_robustness, EGL_EXT_image_dma_buf_import, 
    EGL_EXT_image_dma_buf_import_modifiers, EGL_EXT_pixel_format_float, 
    EGL_EXT_query_reset_notification_strategy, EGL_IMG_context_priority, 
    EGL_KHR_cl_event2, EGL_KHR_config_attribs, EGL_KHR_context_flush_control, 
    EGL_KHR_create_context, EGL_KHR_create_context_no_error, 
    EGL_KHR_fence_sync, EGL_KHR_get_all_proc_addresses, EGL_KHR_gl_colorspace, 
    EGL_KHR_gl_renderbuffer_image, EGL_KHR_gl_texture_2D_image, 
    EGL_KHR_gl_texture_3D_image, EGL_KHR_gl_texture_cubemap_image, 
    EGL_KHR_image_base, EGL_KHR_no_config_context, EGL_KHR_reusable_sync, 
    EGL_KHR_surfaceless_context, EGL_KHR_wait_sync, 
    EGL_MESA_configless_context, EGL_MESA_drm_image, EGL_MESA_gl_interop, 
    EGL_MESA_image_dma_buf_export, EGL_MESA_query_driver, 
    EGL_WL_bind_wayland_display
OpenGL core profile vendor: Intel
OpenGL core profile renderer: Mesa Intel(R) Xe Graphics (TGL GT2)
OpenGL core profile version: 4.6 (Core Profile) Mesa 24.0.7
OpenGL core profile shading language version: 4.60
OpenGL core profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth, 
    GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, 
    GL_AMD_gpu_shader_int64, GL_AMD_multi_draw_indirect, 
    GL_AMD_performance_monitor, GL_AMD_pinned_memory, 
    GL_AMD_query_buffer_object, GL_AMD_seamless_cubemap_per_texture, 
    GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax, 
    GL_AMD_texture_texture4, GL_AMD_vertex_shader_layer, 
    GL_AMD_vertex_shader_viewport_index, GL_ANGLE_texture_compression_dxt3, 
    GL_ANGLE_texture_compression_dxt5, GL_ARB_ES2_compatibility, 
    GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, 
    GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, 
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, 
    GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, 
    GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image, 
    GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, 
    GL_ARB_depth_clamp, GL_ARB_derivative_control, GL_ARB_direct_state_access, 
    GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend, 
    GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, 
    GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, 
    GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, 
    GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, 
    GL_ARB_framebuffer_sRGB, GL_ARB_get_program_binary, 
    GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, 
    GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, 
    GL_ARB_half_float_vertex, GL_ARB_indirect_parameters, 
    GL_ARB_instanced_arrays, GL_ARB_internalformat_query, 
    GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, 
    GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_multi_bind, 
    GL_ARB_multi_draw_indirect, GL_ARB_occlusion_query2, 
    GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, 
    GL_ARB_pixel_buffer_object, GL_ARB_point_sprite, 
    GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, 
    GL_ARB_program_interface_query, GL_ARB_provoking_vertex, 
    GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, 
    GL_ARB_robustness, GL_ARB_sample_shading, GL_ARB_sampler_objects, 
    GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, 
    GL_ARB_separate_shader_objects, GL_ARB_shader_atomic_counter_ops, 
    GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, 
    GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, 
    GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, 
    GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, 
    GL_ARB_shader_objects, GL_ARB_shader_precision, 
    GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, 
    GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, 
    GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, 
    GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, 
    GL_ARB_shading_language_packing, GL_ARB_spirv_extensions, 
    GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, 
    GL_ARB_texture_barrier, GL_ARB_texture_border_clamp, 
    GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, 
    GL_ARB_texture_buffer_range, GL_ARB_texture_compression_bptc, 
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map_array, 
    GL_ARB_texture_filter_anisotropic, GL_ARB_texture_float, 
    GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, 
    GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, 
    GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, 
    GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, 
    GL_ARB_texture_stencil8, GL_ARB_texture_storage, 
    GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, 
    GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, 
    GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, 
    GL_ARB_transform_feedback_overflow_query, GL_ARB_uniform_buffer_object, 
    GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object, 
    GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, 
    GL_ARB_vertex_buffer_object, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_viewport_array, GL_ATI_blend_equation_separate, 
    GL_ATI_texture_float, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, 
    GL_EXT_abgr, GL_EXT_blend_equation_separate, GL_EXT_debug_label, 
    GL_EXT_demote_to_helper_invocation, GL_EXT_depth_bounds_test, 
    GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_framebuffer_blit, 
    GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, 
    GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_packed_depth_stencil, GL_EXT_packed_float, 
    GL_EXT_pixel_buffer_object, GL_EXT_polygon_offset_clamp, 
    GL_EXT_provoking_vertex, GL_EXT_semaphore, GL_EXT_semaphore_fd, 
    GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_integer_mix, 
    GL_EXT_shader_samples_identical, GL_EXT_texture_array, 
    GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_rgtc, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_filter_anisotropic, 
    GL_EXT_texture_integer, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, 
    GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, 
    GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, 
    GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, 
    GL_IBM_multimode_draw_arrays, GL_INTEL_blackhole_render, 
    GL_INTEL_conservative_rasterization, GL_INTEL_performance_query, 
    GL_INTEL_shader_atomic_float_minmax, GL_INTEL_shader_integer_functions2, 
    GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, 
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, 
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, 
    GL_KHR_robustness, GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y, 
    GL_MESA_pack_invert, GL_MESA_shader_integer_functions, 
    GL_MESA_texture_const_bandwidth, GL_MESA_texture_signed_rgba, 
    GL_NV_alpha_to_coverage_dither_control, GL_NV_compute_shader_derivatives, 
    GL_NV_conditional_render, GL_NV_copy_image, GL_NV_depth_clamp, 
    GL_NV_fragment_shader_interlock, GL_NV_packed_depth_stencil, 
    GL_NV_texture_barrier, GL_OES_EGL_image, GL_S3_s3tc
OpenGL compatibility profile vendor: Intel
OpenGL compatibility profile renderer: Mesa Intel(R) Xe Graphics (TGL GT2)
OpenGL compatibility profile version: 4.6 (Compatibility Profile) Mesa 24.0.7
OpenGL compatibility profile shading language version: 4.60
OpenGL compatibility profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth, 
    GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, 
    GL_AMD_multi_draw_indirect, GL_AMD_performance_monitor, 
    GL_AMD_pinned_memory, GL_AMD_query_buffer_object, 
    GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_stencil_export, 
    GL_AMD_shader_trinary_minmax, GL_AMD_texture_texture4, 
    GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_viewport_index, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_packed_pixels, GL_ARB_ES2_compatibility, 
    GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, 
    GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, 
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, 
    GL_ARB_color_buffer_float, GL_ARB_compatibility, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, 
    GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, 
    GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image, 
    GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, 
    GL_ARB_depth_clamp, GL_ARB_depth_texture, GL_ARB_derivative_control, 
    GL_ARB_direct_state_access, GL_ARB_draw_buffers, 
    GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, 
    GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, 
    GL_ARB_fragment_program, GL_ARB_fragment_program_shadow, 
    GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, 
    GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, 
    GL_ARB_framebuffer_sRGB, GL_ARB_get_program_binary, 
    GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, 
    GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, 
    GL_ARB_half_float_vertex, GL_ARB_indirect_parameters, 
    GL_ARB_instanced_arrays, GL_ARB_internalformat_query, 
    GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, 
    GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_multi_bind, 
    GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, 
    GL_ARB_occlusion_query, GL_ARB_occlusion_query2, 
    GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, 
    GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite, 
    GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, 
    GL_ARB_program_interface_query, GL_ARB_provoking_vertex, 
    GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, 
    GL_ARB_robustness, GL_ARB_sample_shading, GL_ARB_sampler_objects, 
    GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, 
    GL_ARB_separate_shader_objects, GL_ARB_shader_atomic_counter_ops, 
    GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, 
    GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, 
    GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, 
    GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, 
    GL_ARB_shader_objects, GL_ARB_shader_precision, 
    GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, 
    GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, 
    GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, 
    GL_ARB_shading_language_100, GL_ARB_shading_language_420pack, 
    GL_ARB_shading_language_include, GL_ARB_shading_language_packing, 
    GL_ARB_shadow, GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, 
    GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, 
    GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, 
    GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, 
    GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, 
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map, 
    GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, 
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 
    GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, 
    GL_ARB_texture_float, GL_ARB_texture_gather, 
    GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, 
    GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, 
    GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, 
    GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, 
    GL_ARB_texture_stencil8, GL_ARB_texture_storage, 
    GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, 
    GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, 
    GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, 
    GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, 
    GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, 
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, 
    GL_ARB_vertex_attrib_binding, GL_ARB_vertex_buffer_object, 
    GL_ARB_vertex_program, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_viewport_array, GL_ARB_window_pos, GL_ATI_blend_equation_separate, 
    GL_ATI_draw_buffers, GL_ATI_fragment_shader, GL_ATI_separate_stencil, 
    GL_ATI_texture_compression_3dc, GL_ATI_texture_env_combine3, 
    GL_ATI_texture_float, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, 
    GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, 
    GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, 
    GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_compiled_vertex_array, 
    GL_EXT_copy_texture, GL_EXT_debug_label, 
    GL_EXT_demote_to_helper_invocation, GL_EXT_depth_bounds_test, 
    GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, 
    GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, 
    GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, 
    GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, 
    GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_multi_draw_arrays, 
    GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, 
    GL_EXT_pixel_buffer_object, GL_EXT_point_parameters, 
    GL_EXT_polygon_offset_clamp, GL_EXT_provoking_vertex, 
    GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, 
    GL_EXT_semaphore_fd, GL_EXT_separate_specular_color, 
    GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_integer_mix, 
    GL_EXT_shader_samples_identical, GL_EXT_shadow_funcs, 
    GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, 
    GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_array, 
    GL_EXT_texture_buffer_object, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_latc, GL_EXT_texture_compression_rgtc, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, 
    GL_EXT_texture_edge_clamp, GL_EXT_texture_env_add, 
    GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_integer, 
    GL_EXT_texture_lod_bias, GL_EXT_texture_object, GL_EXT_texture_rectangle, 
    GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_decode, 
    GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, 
    GL_EXT_texture_snorm, GL_EXT_texture_swizzle, GL_EXT_timer_query, 
    GL_EXT_transform_feedback, GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, 
    GL_EXT_vertex_attrib_64bit, GL_IBM_multimode_draw_arrays, 
    GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat, 
    GL_INGR_blend_func_separate, GL_INTEL_blackhole_render, 
    GL_INTEL_performance_query, GL_INTEL_shader_atomic_float_minmax, 
    GL_INTEL_shader_integer_functions2, GL_KHR_blend_equation_advanced, 
    GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, 
    GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile, 
    GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, 
    GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y, 
    GL_MESA_pack_invert, GL_MESA_shader_integer_functions, 
    GL_MESA_texture_const_bandwidth, GL_MESA_texture_signed_rgba, 
    GL_MESA_window_pos, GL_NV_ES1_1_compatibility, 
    GL_NV_alpha_to_coverage_dither_control, GL_NV_blend_square, 
    GL_NV_compute_shader_derivatives, GL_NV_conditional_render, 
    GL_NV_copy_image, GL_NV_depth_clamp, GL_NV_fog_distance, 
    GL_NV_fragment_shader_interlock, GL_NV_half_float, 
    GL_NV_light_max_exponent, GL_NV_packed_depth_stencil, 
    GL_NV_primitive_restart, GL_NV_texgen_reflection, GL_NV_texture_barrier, 
    GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image, 
    GL_OES_read_format, GL_S3_s3tc, GL_SGIS_generate_mipmap, 
    GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp, 
    GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays
OpenGL ES profile vendor: Intel
OpenGL ES profile renderer: Mesa Intel(R) Xe Graphics (TGL GT2)
OpenGL ES profile version: OpenGL ES 3.2 Mesa 24.0.7
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
    GL_AMD_performance_monitor, GL_ANDROID_extension_pack_es31a, 
    GL_ANGLE_pack_reverse_row_order, GL_ANGLE_texture_compression_dxt3, 
    GL_ANGLE_texture_compression_dxt5, GL_APPLE_sync, 
    GL_APPLE_texture_max_level, GL_EXT_EGL_image_storage, 
    GL_EXT_base_instance, GL_EXT_blend_func_extended, GL_EXT_blend_minmax, 
    GL_EXT_buffer_storage, GL_EXT_clear_texture, GL_EXT_clip_control, 
    GL_EXT_clip_cull_distance, GL_EXT_color_buffer_float, 
    GL_EXT_color_buffer_half_float, GL_EXT_compressed_ETC1_RGB8_sub_texture, 
    GL_EXT_copy_image, GL_EXT_debug_label, GL_EXT_demote_to_helper_invocation, 
    GL_EXT_depth_clamp, GL_EXT_discard_framebuffer, 
    GL_EXT_disjoint_timer_query, GL_EXT_draw_buffers, 
    GL_EXT_draw_buffers_indexed, GL_EXT_draw_elements_base_vertex, 
    GL_EXT_draw_instanced, GL_EXT_float_blend, GL_EXT_frag_depth, 
    GL_EXT_geometry_point_size, GL_EXT_geometry_shader, GL_EXT_gpu_shader5, 
    GL_EXT_instanced_arrays, GL_EXT_map_buffer_range, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_multi_draw_arrays, 
    GL_EXT_occlusion_query_boolean, GL_EXT_polygon_offset_clamp, 
    GL_EXT_primitive_bounding_box, GL_EXT_read_format_bgra, 
    GL_EXT_render_snorm, GL_EXT_robustness, GL_EXT_sRGB_write_control, 
    GL_EXT_semaphore, GL_EXT_semaphore_fd, GL_EXT_separate_shader_objects, 
    GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_group_vote, 
    GL_EXT_shader_implicit_conversions, GL_EXT_shader_integer_mix, 
    GL_EXT_shader_io_blocks, GL_EXT_shader_samples_identical, 
    GL_EXT_tessellation_point_size, GL_EXT_tessellation_shader, 
    GL_EXT_texture_border_clamp, GL_EXT_texture_buffer, 
    GL_EXT_texture_compression_bptc, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, 
    GL_EXT_texture_compression_s3tc_srgb, GL_EXT_texture_cube_map_array, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_format_BGRA8888, 
    GL_EXT_texture_mirror_clamp_to_edge, GL_EXT_texture_norm16, 
    GL_EXT_texture_query_lod, GL_EXT_texture_rg, GL_EXT_texture_sRGB_R8, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, 
    GL_EXT_texture_type_2_10_10_10_REV, GL_EXT_texture_view, 
    GL_EXT_unpack_subimage, GL_INTEL_blackhole_render, 
    GL_INTEL_conservative_rasterization, GL_INTEL_performance_query, 
    GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, 
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, 
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, 
    GL_KHR_robustness, GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_bgra, 
    GL_MESA_framebuffer_flip_y, GL_MESA_sampler_objects, 
    GL_MESA_shader_integer_functions, GL_MESA_texture_const_bandwidth, 
    GL_NV_alpha_to_coverage_dither_control, GL_NV_compute_shader_derivatives, 
    GL_NV_conditional_render, GL_NV_draw_buffers, GL_NV_fbo_color_attachments, 
    GL_NV_fragment_shader_interlock, GL_NV_generate_mipmap_sRGB, 
    GL_NV_image_formats, GL_NV_pack_subimage, GL_NV_pixel_buffer_object, 
    GL_NV_read_buffer, GL_NV_read_depth, GL_NV_read_depth_stencil, 
    GL_NV_read_stencil, GL_NV_shader_noperspective_interpolation, 
    GL_NV_texture_barrier, GL_OES_EGL_image, GL_OES_EGL_image_external, 
    GL_OES_EGL_image_external_essl3, GL_OES_EGL_sync, 
    GL_OES_compressed_ETC1_RGB8_texture, GL_OES_copy_image, GL_OES_depth24, 
    GL_OES_depth_texture, GL_OES_depth_texture_cube_map, 
    GL_OES_draw_buffers_indexed, GL_OES_draw_elements_base_vertex, 
    GL_OES_element_index_uint, GL_OES_fbo_render_mipmap, 
    GL_OES_geometry_point_size, GL_OES_geometry_shader, 
    GL_OES_get_program_binary, GL_OES_gpu_shader5, GL_OES_mapbuffer, 
    GL_OES_packed_depth_stencil, GL_OES_primitive_bounding_box, 
    GL_OES_required_internalformat, GL_OES_rgb8_rgba8, GL_OES_sample_shading, 
    GL_OES_sample_variables, GL_OES_shader_image_atomic, 
    GL_OES_shader_io_blocks, GL_OES_shader_multisample_interpolation, 
    GL_OES_standard_derivatives, GL_OES_stencil8, GL_OES_surfaceless_context, 
    GL_OES_tessellation_point_size, GL_OES_tessellation_shader, 
    GL_OES_texture_3D, GL_OES_texture_border_clamp, GL_OES_texture_buffer, 
    GL_OES_texture_cube_map_array, GL_OES_texture_float, 
    GL_OES_texture_float_linear, GL_OES_texture_half_float, 
    GL_OES_texture_half_float_linear, GL_OES_texture_npot, 
    GL_OES_texture_stencil8, GL_OES_texture_storage_multisample_2d_array, 
    GL_OES_texture_view, GL_OES_vertex_array_object, GL_OES_vertex_half_float, 
    GL_OES_viewport_array
Configurations:
     bf lv colorbuffer dp st  ms    vis   cav bi  renderable  supported
  id sz  l  r  g  b  a th cl ns b    id   eat nd gl es es2 vg surfaces 
---------------------------------------------------------------------
0x01 32  0 10 10 10  2  0  0  0 0 0x00--      a  y  y  y     pb
0x02 32  0 10 10 10  2 16  0  0 0 0x00--      a  y  y  y     pb
0x03 32  0 10 10 10  2 24  0  0 0 0x00--      a  y  y  y     pb
0x04 32  0 10 10 10  2 24  8  0 0 0x00--      a  y  y  y     pb
0x05 32  0 10 10 10  2  0  0  2 1 0x00--      a  y  y  y     pb
0x06 32  0 10 10 10  2  0  0  4 1 0x00--      a  y  y  y     pb
0x07 32  0 10 10 10  2  0  0  8 1 0x00--      a  y  y  y     pb
0x08 32  0 10 10 10  2  0  0 16 1 0x00--      a  y  y  y     pb
0x09 32  0 10 10 10  2 16  0  2 1 0x00--      a  y  y  y     pb
0x0a 32  0 10 10 10  2 16  0  4 1 0x00--      a  y  y  y     pb
0x0b 32  0 10 10 10  2 16  0  8 1 0x00--      a  y  y  y     pb
0x0c 32  0 10 10 10  2 16  0 16 1 0x00--      a  y  y  y     pb
0x0d 32  0 10 10 10  2 24  0  2 1 0x00--      a  y  y  y     pb
0x0e 32  0 10 10 10  2 24  0  4 1 0x00--      a  y  y  y     pb
0x0f 32  0 10 10 10  2 24  0  8 1 0x00--      a  y  y  y     pb
0x10 32  0 10 10 10  2 24  0 16 1 0x00--      a  y  y  y     pb
0x11 32  0 10 10 10  2 24  8  2 1 0x00--      a  y  y  y     pb
0x12 32  0 10 10 10  2 24  8  4 1 0x00--      a  y  y  y     pb
0x13 32  0 10 10 10  2 24  8  8 1 0x00--      a  y  y  y     pb
0x14 32  0 10 10 10  2 24  8 16 1 0x00--      a  y  y  y     pb
0x15 30  0 10 10 10  0  0  0  0 0 0x00--      y  y  y  y     pb
0x16 30  0 10 10 10  0 16  0  0 0 0x00--      y  y  y  y     pb
0x17 30  0 10 10 10  0 24  0  0 0 0x00--      y  y  y  y     pb
0x18 30  0 10 10 10  0 24  8  0 0 0x00--      y  y  y  y     pb
0x19 30  0 10 10 10  0  0  0  2 1 0x00--      y  y  y  y     pb
0x1a 30  0 10 10 10  0  0  0  4 1 0x00--      y  y  y  y     pb
0x1b 30  0 10 10 10  0  0  0  8 1 0x00--      y  y  y  y     pb
0x1c 30  0 10 10 10  0  0  0 16 1 0x00--      y  y  y  y     pb
0x1d 30  0 10 10 10  0 16  0  2 1 0x00--      y  y  y  y     pb
0x1e 30  0 10 10 10  0 16  0  4 1 0x00--      y  y  y  y     pb
0x1f 30  0 10 10 10  0 16  0  8 1 0x00--      y  y  y  y     pb
0x20 30  0 10 10 10  0 16  0 16 1 0x00--      y  y  y  y     pb
0x21 30  0 10 10 10  0 24  0  2 1 0x00--      y  y  y  y     pb
0x22 30  0 10 10 10  0 24  0  4 1 0x00--      y  y  y  y     pb
0x23 30  0 10 10 10  0 24  0  8 1 0x00--      y  y  y  y     pb
0x24 30  0 10 10 10  0 24  0 16 1 0x00--      y  y  y  y     pb
0x25 30  0 10 10 10  0 24  8  2 1 0x00--      y  y  y  y     pb
0x26 30  0 10 10 10  0 24  8  4 1 0x00--      y  y  y  y     pb
0x27 30  0 10 10 10  0 24  8  8 1 0x00--      y  y  y  y     pb
0x28 30  0 10 10 10  0 24  8 16 1 0x00--      y  y  y  y     pb
0x29 32  0  8  8  8  8  0  0  0 0 0x00--      a  y  y  y     pb
0x2a 32  0  8  8  8  8 16  0  0 0 0x00--      a  y  y  y     pb
0x2b 32  0  8  8  8  8 24  0  0 0 0x00--      a  y  y  y     pb
0x2c 32  0  8  8  8  8 24  8  0 0 0x00--      a  y  y  y     pb
0x2d 32  0  8  8  8  8  0  0  2 1 0x00--      a  y  y  y     pb
0x2e 32  0  8  8  8  8  0  0  4 1 0x00--      a  y  y  y     pb
0x2f 32  0  8  8  8  8  0  0  8 1 0x00--      a  y  y  y     pb
0x30 32  0  8  8  8  8  0  0 16 1 0x00--      a  y  y  y     pb
0x31 32  0  8  8  8  8 16  0  2 1 0x00--      a  y  y  y     pb
0x32 32  0  8  8  8  8 16  0  4 1 0x00--      a  y  y  y     pb
0x33 32  0  8  8  8  8 16  0  8 1 0x00--      a  y  y  y     pb
0x34 32  0  8  8  8  8 16  0 16 1 0x00--      a  y  y  y     pb
0x35 32  0  8  8  8  8 24  0  2 1 0x00--      a  y  y  y     pb
0x36 32  0  8  8  8  8 24  0  4 1 0x00--      a  y  y  y     pb
0x37 32  0  8  8  8  8 24  0  8 1 0x00--      a  y  y  y     pb
0x38 32  0  8  8  8  8 24  0 16 1 0x00--      a  y  y  y     pb
0x39 32  0  8  8  8  8 24  8  2 1 0x00--      a  y  y  y     pb
0x3a 32  0  8  8  8  8 24  8  4 1 0x00--      a  y  y  y     pb
0x3b 32  0  8  8  8  8 24  8  8 1 0x00--      a  y  y  y     pb
0x3c 32  0  8  8  8  8 24  8 16 1 0x00--      a  y  y  y     pb
0x3d 24  0  8  8  8  0  0  0  0 0 0x00--      y  y  y  y     pb
0x3e 24  0  8  8  8  0 16  0  0 0 0x00--      y  y  y  y     pb
0x3f 24  0  8  8  8  0 24  0  0 0 0x00--      y  y  y  y     pb
0x40 24  0  8  8  8  0 24  8  0 0 0x00--      y  y  y  y     pb
0x41 24  0  8  8  8  0  0  0  2 1 0x00--      y  y  y  y     pb
0x42 24  0  8  8  8  0  0  0  4 1 0x00--      y  y  y  y     pb
0x43 24  0  8  8  8  0  0  0  8 1 0x00--      y  y  y  y     pb
0x44 24  0  8  8  8  0  0  0 16 1 0x00--      y  y  y  y     pb
0x45 24  0  8  8  8  0 16  0  2 1 0x00--      y  y  y  y     pb
0x46 24  0  8  8  8  0 16  0  4 1 0x00--      y  y  y  y     pb
0x47 24  0  8  8  8  0 16  0  8 1 0x00--      y  y  y  y     pb
0x48 24  0  8  8  8  0 16  0 16 1 0x00--      y  y  y  y     pb
0x49 24  0  8  8  8  0 24  0  2 1 0x00--      y  y  y  y     pb
0x4a 24  0  8  8  8  0 24  0  4 1 0x00--      y  y  y  y     pb
0x4b 24  0  8  8  8  0 24  0  8 1 0x00--      y  y  y  y     pb
0x4c 24  0  8  8  8  0 24  0 16 1 0x00--      y  y  y  y     pb
0x4d 24  0  8  8  8  0 24  8  2 1 0x00--      y  y  y  y     pb
0x4e 24  0  8  8  8  0 24  8  4 1 0x00--      y  y  y  y     pb
0x4f 24  0  8  8  8  0 24  8  8 1 0x00--      y  y  y  y     pb
0x50 24  0  8  8  8  0 24  8 16 1 0x00--      y  y  y  y     pb
0x51 16  0  5  6  5  0  0  0  0 0 0x00--      y  y  y  y     pb
0x52 16  0  5  6  5  0 16  0  0 0 0x00--      y  y  y  y     pb
0x53 16  0  5  6  5  0 24  0  0 0 0x00--      y  y  y  y     pb
0x54 16  0  5  6  5  0 24  8  0 0 0x00--      y  y  y  y     pb
0x55 16  0  5  6  5  0  0  0  2 1 0x00--      y  y  y  y     pb
0x56 16  0  5  6  5  0  0  0  4 1 0x00--      y  y  y  y     pb
0x57 16  0  5  6  5  0  0  0  8 1 0x00--      y  y  y  y     pb
0x58 16  0  5  6  5  0  0  0 16 1 0x00--      y  y  y  y     pb
0x59 16  0  5  6  5  0 16  0  2 1 0x00--      y  y  y  y     pb
0x5a 16  0  5  6  5  0 16  0  4 1 0x00--      y  y  y  y     pb
0x5b 16  0  5  6  5  0 16  0  8 1 0x00--      y  y  y  y     pb
0x5c 16  0  5  6  5  0 16  0 16 1 0x00--      y  y  y  y     pb
0x5d 16  0  5  6  5  0 24  0  2 1 0x00--      y  y  y  y     pb
0x5e 16  0  5  6  5  0 24  0  4 1 0x00--      y  y  y  y     pb
0x5f 16  0  5  6  5  0 24  0  8 1 0x00--      y  y  y  y     pb
0x60 16  0  5  6  5  0 24  0 16 1 0x00--      y  y  y  y     pb
0x61 16  0  5  6  5  0 24  8  2 1 0x00--      y  y  y  y     pb
0x62 16  0  5  6  5  0 24  8  4 1 0x00--      y  y  y  y     pb
0x63 16  0  5  6  5  0 24  8  8 1 0x00--      y  y  y  y     pb
0x64 16  0  5  6  5  0 24  8 16 1 0x00--      y  y  y  y     pb
0x65 64  0 16 16 16 16  0  0  0 0 0x00--      a  y  y  y     pb
0x66 64  0 16 16 16 16 16  0  0 0 0x00--      a  y  y  y     pb
0x67 64  0 16 16 16 16 24  0  0 0 0x00--      a  y  y  y     pb
0x68 64  0 16 16 16 16 24  8  0 0 0x00--      a  y  y  y     pb
0x69 64  0 16 16 16 16  0  0  2 1 0x00--      a  y  y  y     pb
0x6a 64  0 16 16 16 16  0  0  4 1 0x00--      a  y  y  y     pb
0x6b 64  0 16 16 16 16  0  0  8 1 0x00--      a  y  y  y     pb
0x6c 64  0 16 16 16 16  0  0 16 1 0x00--      a  y  y  y     pb
0x6d 64  0 16 16 16 16 16  0  2 1 0x00--      a  y  y  y     pb
0x6e 64  0 16 16 16 16 16  0  4 1 0x00--      a  y  y  y     pb
0x6f 64  0 16 16 16 16 16  0  8 1 0x00--      a  y  y  y     pb
0x70 64  0 16 16 16 16 16  0 16 1 0x00--      a  y  y  y     pb
0x71 64  0 16 16 16 16 24  0  2 1 0x00--      a  y  y  y     pb
0x72 64  0 16 16 16 16 24  0  4 1 0x00--      a  y  y  y     pb
0x73 64  0 16 16 16 16 24  0  8 1 0x00--      a  y  y  y     pb
0x74 64  0 16 16 16 16 24  0 16 1 0x00--      a  y  y  y     pb
0x75 64  0 16 16 16 16 24  8  2 1 0x00--      a  y  y  y     pb
0x76 64  0 16 16 16 16 24  8  4 1 0x00--      a  y  y  y     pb
0x77 64  0 16 16 16 16 24  8  8 1 0x00--      a  y  y  y     pb
0x78 64  0 16 16 16 16 24  8 16 1 0x00--      a  y  y  y     pb
0x79 48  0 16 16 16  0  0  0  0 0 0x00--      y  y  y  y     pb
0x7a 48  0 16 16 16  0 16  0  0 0 0x00--      y  y  y  y     pb
0x7b 48  0 16 16 16  0 24  0  0 0 0x00--      y  y  y  y     pb
0x7c 48  0 16 16 16  0 24  8  0 0 0x00--      y  y  y  y     pb
0x7d 48  0 16 16 16  0  0  0  2 1 0x00--      y  y  y  y     pb
0x7e 48  0 16 16 16  0  0  0  4 1 0x00--      y  y  y  y     pb
0x7f 48  0 16 16 16  0  0  0  8 1 0x00--      y  y  y  y     pb
0x80 48  0 16 16 16  0  0  0 16 1 0x00--      y  y  y  y     pb
0x81 48  0 16 16 16  0 16  0  2 1 0x00--      y  y  y  y     pb
0x82 48  0 16 16 16  0 16  0  4 1 0x00--      y  y  y  y     pb
0x83 48  0 16 16 16  0 16  0  8 1 0x00--      y  y  y  y     pb
0x84 48  0 16 16 16  0 16  0 16 1 0x00--      y  y  y  y     pb
0x85 48  0 16 16 16  0 24  0  2 1 0x00--      y  y  y  y     pb
0x86 48  0 16 16 16  0 24  0  4 1 0x00--      y  y  y  y     pb
0x87 48  0 16 16 16  0 24  0  8 1 0x00--      y  y  y  y     pb
0x88 48  0 16 16 16  0 24  0 16 1 0x00--      y  y  y  y     pb
0x89 48  0 16 16 16  0 24  8  2 1 0x00--      y  y  y  y     pb
0x8a 48  0 16 16 16  0 24  8  4 1 0x00--      y  y  y  y     pb
0x8b 48  0 16 16 16  0 24  8  8 1 0x00--      y  y  y  y     pb
0x8c 48  0 16 16 16  0 24  8 16 1 0x00--      y  y  y  y     pb

Device #1:

EGL device extensions string:
    EGL_EXT_device_drm_render_node, EGL_MESA_device_software
Platform Device platform:
EGL API version: 1.5
EGL vendor string: Mesa Project
EGL version string: 1.5
EGL client APIs: OpenGL OpenGL_ES 
EGL driver name: swrast
EGL extensions string:
    EGL_EXT_create_context_robustness, EGL_EXT_pixel_format_float, 
    EGL_EXT_query_reset_notification_strategy, EGL_KHR_cl_event2, 
    EGL_KHR_config_attribs, EGL_KHR_context_flush_control, 
    EGL_KHR_create_context, EGL_KHR_create_context_no_error, 
    EGL_KHR_fence_sync, EGL_KHR_get_all_proc_addresses, EGL_KHR_gl_colorspace, 
    EGL_KHR_gl_renderbuffer_image, EGL_KHR_gl_texture_2D_image, 
    EGL_KHR_gl_texture_3D_image, EGL_KHR_gl_texture_cubemap_image, 
    EGL_KHR_image_base, EGL_KHR_no_config_context, EGL_KHR_reusable_sync, 
    EGL_KHR_surfaceless_context, EGL_KHR_wait_sync, 
    EGL_MESA_configless_context, EGL_MESA_drm_image, EGL_MESA_query_driver
OpenGL core profile vendor: Mesa
OpenGL core profile renderer: llvmpipe (LLVM 17.0.6, 256 bits)
OpenGL core profile version: 4.5 (Core Profile) Mesa 24.0.7
OpenGL core profile shading language version: 4.50
OpenGL core profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth, 
    GL_AMD_draw_buffers_blend, GL_AMD_gpu_shader_int64, 
    GL_AMD_multi_draw_indirect, GL_AMD_pinned_memory, 
    GL_AMD_query_buffer_object, GL_AMD_seamless_cubemap_per_texture, 
    GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax, 
    GL_AMD_texture_texture4, GL_AMD_vertex_shader_layer, 
    GL_AMD_vertex_shader_viewport_index, GL_ANGLE_texture_compression_dxt3, 
    GL_ANGLE_texture_compression_dxt5, GL_ARB_ES2_compatibility, 
    GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, 
    GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, 
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, 
    GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, 
    GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance, 
    GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, 
    GL_ARB_derivative_control, GL_ARB_direct_state_access, 
    GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend, 
    GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, 
    GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, 
    GL_ARB_fragment_shader, GL_ARB_framebuffer_no_attachments, 
    GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, 
    GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, 
    GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, 
    GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, 
    GL_ARB_indirect_parameters, GL_ARB_instanced_arrays, 
    GL_ARB_internalformat_query, GL_ARB_internalformat_query2, 
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, 
    GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile, 
    GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, 
    GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, 
    GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, 
    GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, 
    GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, 
    GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, 
    GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, 
    GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, 
    GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, 
    GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, 
    GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, 
    GL_ARB_shader_objects, GL_ARB_shader_precision, 
    GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, 
    GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, 
    GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, 
    GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, 
    GL_ARB_shading_language_packing, GL_ARB_spirv_extensions, 
    GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, 
    GL_ARB_texture_barrier, GL_ARB_texture_border_clamp, 
    GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, 
    GL_ARB_texture_buffer_range, GL_ARB_texture_compression_bptc, 
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map_array, 
    GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, 
    GL_ARB_texture_float, GL_ARB_texture_gather, 
    GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_multisample, 
    GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, 
    GL_ARB_texture_query_lod, GL_ARB_texture_rectangle, GL_ARB_texture_rg, 
    GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, 
    GL_ARB_texture_storage, GL_ARB_texture_storage_multisample, 
    GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, 
    GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, 
    GL_ARB_transform_feedback_instanced, 
    GL_ARB_transform_feedback_overflow_query, GL_ARB_uniform_buffer_object, 
    GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object, 
    GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, 
    GL_ARB_vertex_buffer_object, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_viewport_array, GL_ARM_shader_framebuffer_fetch_depth_stencil, 
    GL_ATI_blend_equation_separate, GL_ATI_meminfo, GL_ATI_texture_float, 
    GL_ATI_texture_mirror_once, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, 
    GL_EXT_abgr, GL_EXT_blend_equation_separate, GL_EXT_debug_label, 
    GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_framebuffer_blit, 
    GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, 
    GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_packed_depth_stencil, GL_EXT_packed_float, 
    GL_EXT_pixel_buffer_object, GL_EXT_polygon_offset_clamp, 
    GL_EXT_provoking_vertex, GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, 
    GL_EXT_shader_image_load_formatted, GL_EXT_shader_integer_mix, 
    GL_EXT_texture_array, GL_EXT_texture_compression_dxt1, 
    GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, 
    GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, 
    GL_EXT_texture_integer, GL_EXT_texture_mirror_clamp, GL_EXT_texture_sRGB, 
    GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, 
    GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, 
    GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, 
    GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, 
    GL_IBM_multimode_draw_arrays, GL_INTEL_shader_atomic_float_minmax, 
    GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, 
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, 
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, 
    GL_KHR_robustness, GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y, 
    GL_MESA_pack_invert, GL_MESA_shader_integer_functions, 
    GL_MESA_texture_signed_rgba, GL_MESA_ycbcr_texture, 
    GL_NVX_gpu_memory_info, GL_NV_conditional_render, GL_NV_copy_image, 
    GL_NV_depth_clamp, GL_NV_packed_depth_stencil, GL_NV_shader_atomic_float, 
    GL_NV_texture_barrier, GL_OES_EGL_image, GL_S3_s3tc
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 31 MB, largest block: 31 MB
    VBO free aux. memory - total: 16153 MB, largest block: 16153 MB
    Texture free memory - total: 31 MB, largest block: 31 MB
    Texture free aux. memory - total: 16153 MB, largest block: 16153 MB
    Renderbuffer free memory - total: 31 MB, largest block: 31 MB
    Renderbuffer free aux. memory - total: 16153 MB, largest block: 16153 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 4294967237 MB
    Total available memory: 64035 MB
    Currently available dedicated video memory: 31 MB
OpenGL compatibility profile vendor: Mesa
OpenGL compatibility profile renderer: llvmpipe (LLVM 17.0.6, 256 bits)
OpenGL compatibility profile version: 4.5 (Compatibility Profile) Mesa 24.0.7
OpenGL compatibility profile shading language version: 4.50
OpenGL compatibility profile extensions:
    GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth, 
    GL_AMD_draw_buffers_blend, GL_AMD_multi_draw_indirect, 
    GL_AMD_pinned_memory, GL_AMD_query_buffer_object, 
    GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_stencil_export, 
    GL_AMD_shader_trinary_minmax, GL_AMD_texture_texture4, 
    GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_viewport_index, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_packed_pixels, GL_ARB_ES2_compatibility, 
    GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, 
    GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, 
    GL_ARB_blend_func_extended, GL_ARB_buffer_storage, 
    GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, 
    GL_ARB_color_buffer_float, GL_ARB_compatibility, 
    GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, 
    GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, 
    GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance, 
    GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, 
    GL_ARB_depth_texture, GL_ARB_derivative_control, 
    GL_ARB_direct_state_access, GL_ARB_draw_buffers, 
    GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, 
    GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, 
    GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, 
    GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, 
    GL_ARB_fragment_program, GL_ARB_fragment_program_shadow, 
    GL_ARB_fragment_shader, GL_ARB_framebuffer_no_attachments, 
    GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, 
    GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, 
    GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, 
    GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, 
    GL_ARB_indirect_parameters, GL_ARB_instanced_arrays, 
    GL_ARB_internalformat_query, GL_ARB_internalformat_query2, 
    GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, 
    GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, 
    GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, 
    GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile, 
    GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, 
    GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, 
    GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, 
    GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, 
    GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, 
    GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, 
    GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, 
    GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, 
    GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, 
    GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, 
    GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, 
    GL_ARB_shader_objects, GL_ARB_shader_precision, 
    GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, 
    GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, 
    GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, 
    GL_ARB_shading_language_100, GL_ARB_shading_language_420pack, 
    GL_ARB_shading_language_include, GL_ARB_shading_language_packing, 
    GL_ARB_shadow, GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, 
    GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, 
    GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, 
    GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, 
    GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, 
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map, 
    GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, 
    GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, 
    GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, 
    GL_ARB_texture_filter_minmax, GL_ARB_texture_float, GL_ARB_texture_gather, 
    GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, 
    GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, 
    GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, 
    GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, 
    GL_ARB_texture_stencil8, GL_ARB_texture_storage, 
    GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, 
    GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, 
    GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, 
    GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, 
    GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, 
    GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, 
    GL_ARB_vertex_attrib_binding, GL_ARB_vertex_buffer_object, 
    GL_ARB_vertex_program, GL_ARB_vertex_shader, 
    GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, 
    GL_ARB_viewport_array, GL_ARB_window_pos, 
    GL_ARM_shader_framebuffer_fetch_depth_stencil, 
    GL_ATI_blend_equation_separate, GL_ATI_draw_buffers, 
    GL_ATI_fragment_shader, GL_ATI_meminfo, GL_ATI_separate_stencil, 
    GL_ATI_texture_compression_3dc, GL_ATI_texture_env_combine3, 
    GL_ATI_texture_float, GL_ATI_texture_mirror_once, 
    GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, 
    GL_EXT_blend_color, GL_EXT_blend_equation_separate, 
    GL_EXT_blend_func_separate, GL_EXT_blend_minmax, GL_EXT_blend_subtract, 
    GL_EXT_compiled_vertex_array, GL_EXT_copy_texture, GL_EXT_debug_label, 
    GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, 
    GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, 
    GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, 
    GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, 
    GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_memory_object, 
    GL_EXT_memory_object_fd, GL_EXT_multi_draw_arrays, 
    GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, 
    GL_EXT_pixel_buffer_object, GL_EXT_point_parameters, 
    GL_EXT_polygon_offset_clamp, GL_EXT_provoking_vertex, 
    GL_EXT_rescale_normal, GL_EXT_secondary_color, 
    GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, 
    GL_EXT_shader_image_load_formatted, GL_EXT_shader_integer_mix, 
    GL_EXT_shadow_funcs, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, 
    GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D, 
    GL_EXT_texture_array, GL_EXT_texture_buffer_object, 
    GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_latc, 
    GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, 
    GL_EXT_texture_cube_map, GL_EXT_texture_edge_clamp, 
    GL_EXT_texture_env_add, GL_EXT_texture_env_combine, 
    GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, 
    GL_EXT_texture_filter_minmax, GL_EXT_texture_integer, 
    GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, 
    GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_texture_sRGB, 
    GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, 
    GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, 
    GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, 
    GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, 
    GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, 
    GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, 
    GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate, 
    GL_INTEL_shader_atomic_float_minmax, GL_KHR_blend_equation_advanced, 
    GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, 
    GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile, 
    GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, 
    GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_framebuffer_flip_y, 
    GL_MESA_pack_invert, GL_MESA_shader_integer_functions, 
    GL_MESA_texture_signed_rgba, GL_MESA_window_pos, GL_MESA_ycbcr_texture, 
    GL_NVX_gpu_memory_info, GL_NV_ES1_1_compatibility, GL_NV_blend_square, 
    GL_NV_conditional_render, GL_NV_copy_depth_to_color, GL_NV_copy_image, 
    GL_NV_depth_clamp, GL_NV_fog_distance, GL_NV_half_float, 
    GL_NV_light_max_exponent, GL_NV_packed_depth_stencil, 
    GL_NV_primitive_restart, GL_NV_shader_atomic_float, 
    GL_NV_texgen_reflection, GL_NV_texture_barrier, 
    GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_OES_EGL_image, 
    GL_OES_read_format, GL_S3_s3tc, GL_SGIS_generate_mipmap, 
    GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp, 
    GL_SGIS_texture_lod, GL_SUN_multi_draw_arrays
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 31 MB, largest block: 31 MB
    VBO free aux. memory - total: 16153 MB, largest block: 16153 MB
    Texture free memory - total: 31 MB, largest block: 31 MB
    Texture free aux. memory - total: 16153 MB, largest block: 16153 MB
    Renderbuffer free memory - total: 31 MB, largest block: 31 MB
    Renderbuffer free aux. memory - total: 16153 MB, largest block: 16153 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 4294967237 MB
    Total available memory: 64035 MB
    Currently available dedicated video memory: 31 MB
OpenGL ES profile vendor: Mesa
OpenGL ES profile renderer: llvmpipe (LLVM 17.0.6, 256 bits)
OpenGL ES profile version: OpenGL ES 3.2 Mesa 24.0.7
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
    GL_ANDROID_extension_pack_es31a, GL_ANGLE_pack_reverse_row_order, 
    GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5, 
    GL_APPLE_sync, GL_APPLE_texture_max_level, 
    GL_ARM_shader_framebuffer_fetch_depth_stencil, GL_EXT_EGL_image_storage, 
    GL_EXT_base_instance, GL_EXT_blend_func_extended, GL_EXT_blend_minmax, 
    GL_EXT_buffer_storage, GL_EXT_clear_texture, GL_EXT_clip_control, 
    GL_EXT_clip_cull_distance, GL_EXT_color_buffer_float, 
    GL_EXT_color_buffer_half_float, GL_EXT_compressed_ETC1_RGB8_sub_texture, 
    GL_EXT_copy_image, GL_EXT_debug_label, GL_EXT_depth_clamp, 
    GL_EXT_discard_framebuffer, GL_EXT_disjoint_timer_query, 
    GL_EXT_draw_buffers, GL_EXT_draw_buffers_indexed, 
    GL_EXT_draw_elements_base_vertex, GL_EXT_draw_instanced, 
    GL_EXT_float_blend, GL_EXT_frag_depth, GL_EXT_geometry_point_size, 
    GL_EXT_geometry_shader, GL_EXT_gpu_shader5, GL_EXT_instanced_arrays, 
    GL_EXT_map_buffer_range, GL_EXT_memory_object, GL_EXT_memory_object_fd, 
    GL_EXT_multi_draw_arrays, GL_EXT_occlusion_query_boolean, 
    GL_EXT_polygon_offset_clamp, GL_EXT_primitive_bounding_box, 
    GL_EXT_read_format_bgra, GL_EXT_render_snorm, GL_EXT_robustness, 
    GL_EXT_sRGB_write_control, GL_EXT_separate_shader_objects, 
    GL_EXT_shader_framebuffer_fetch, 
    GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_group_vote, 
    GL_EXT_shader_implicit_conversions, GL_EXT_shader_integer_mix, 
    GL_EXT_shader_io_blocks, GL_EXT_tessellation_point_size, 
    GL_EXT_tessellation_shader, GL_EXT_texture_border_clamp, 
    GL_EXT_texture_buffer, GL_EXT_texture_compression_bptc, 
    GL_EXT_texture_compression_dxt1, GL_EXT_texture_compression_rgtc, 
    GL_EXT_texture_compression_s3tc, GL_EXT_texture_compression_s3tc_srgb, 
    GL_EXT_texture_cube_map_array, GL_EXT_texture_filter_anisotropic, 
    GL_EXT_texture_filter_minmax, GL_EXT_texture_format_BGRA8888, 
    GL_EXT_texture_mirror_clamp_to_edge, GL_EXT_texture_norm16, 
    GL_EXT_texture_query_lod, GL_EXT_texture_rg, GL_EXT_texture_sRGB_R8, 
    GL_EXT_texture_sRGB_RG8, GL_EXT_texture_sRGB_decode, 
    GL_EXT_texture_shadow_lod, GL_EXT_texture_type_2_10_10_10_REV, 
    GL_EXT_texture_view, GL_EXT_unpack_subimage, 
    GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, 
    GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, 
    GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, 
    GL_KHR_robustness, GL_KHR_texture_compression_astc_ldr, 
    GL_KHR_texture_compression_astc_sliced_3d, GL_MESA_bgra, 
    GL_MESA_framebuffer_flip_y, GL_MESA_sampler_objects, 
    GL_MESA_shader_integer_functions, GL_NV_conditional_render, 
    GL_NV_draw_buffers, GL_NV_fbo_color_attachments, 
    GL_NV_generate_mipmap_sRGB, GL_NV_image_formats, GL_NV_pack_subimage, 
    GL_NV_pixel_buffer_object, GL_NV_read_buffer, GL_NV_read_depth, 
    GL_NV_read_depth_stencil, GL_NV_read_stencil, 
    GL_NV_shader_noperspective_interpolation, GL_NV_texture_barrier, 
    GL_OES_EGL_image, GL_OES_EGL_image_external, 
    GL_OES_EGL_image_external_essl3, GL_OES_EGL_sync, 
    GL_OES_compressed_ETC1_RGB8_texture, GL_OES_copy_image, GL_OES_depth24, 
    GL_OES_depth_texture, GL_OES_depth_texture_cube_map, 
    GL_OES_draw_buffers_indexed, GL_OES_draw_elements_base_vertex, 
    GL_OES_element_index_uint, GL_OES_fbo_render_mipmap, 
    GL_OES_geometry_point_size, GL_OES_geometry_shader, 
    GL_OES_get_program_binary, GL_OES_gpu_shader5, GL_OES_mapbuffer, 
    GL_OES_packed_depth_stencil, GL_OES_primitive_bounding_box, 
    GL_OES_required_internalformat, GL_OES_rgb8_rgba8, GL_OES_sample_shading, 
    GL_OES_sample_variables, GL_OES_shader_image_atomic, 
    GL_OES_shader_io_blocks, GL_OES_shader_multisample_interpolation, 
    GL_OES_standard_derivatives, GL_OES_stencil8, GL_OES_surfaceless_context, 
    GL_OES_tessellation_point_size, GL_OES_tessellation_shader, 
    GL_OES_texture_3D, GL_OES_texture_border_clamp, GL_OES_texture_buffer, 
    GL_OES_texture_cube_map_array, GL_OES_texture_float, 
    GL_OES_texture_float_linear, GL_OES_texture_half_float, 
    GL_OES_texture_half_float_linear, GL_OES_texture_npot, 
    GL_OES_texture_stencil8, GL_OES_texture_storage_multisample_2d_array, 
    GL_OES_texture_view, GL_OES_vertex_array_object, GL_OES_vertex_half_float, 
    GL_OES_viewport_array
Configurations:
     bf lv colorbuffer dp st  ms    vis   cav bi  renderable  supported
  id sz  l  r  g  b  a th cl ns b    id   eat nd gl es es2 vg surfaces 
---------------------------------------------------------------------
0x01 32  0 10 10 10  2  0  0  0 0 0x00--      a  y  y  y     pb
0x02 32  0 10 10 10  2 16  0  0 0 0x00--      a  y  y  y     pb
0x03 32  0 10 10 10  2 24  0  0 0 0x00--      a  y  y  y     pb
0x04 32  0 10 10 10  2 24  8  0 0 0x00--      a  y  y  y     pb
0x05 32  0 10 10 10  2 32  0  0 0 0x00--      a  y  y  y     pb
0x06 32  0 10 10 10  2  0  0  4 1 0x00--      a  y  y  y     pb
0x07 32  0 10 10 10  2 16  0  4 1 0x00--      a  y  y  y     pb
0x08 32  0 10 10 10  2 24  0  4 1 0x00--      a  y  y  y     pb
0x09 32  0 10 10 10  2 24  8  4 1 0x00--      a  y  y  y     pb
0x0a 32  0 10 10 10  2 32  0  4 1 0x00--      a  y  y  y     pb
0x0b 30  0 10 10 10  0  0  0  0 0 0x00--      y  y  y  y     pb
0x0c 30  0 10 10 10  0 16  0  0 0 0x00--      y  y  y  y     pb
0x0d 30  0 10 10 10  0 24  0  0 0 0x00--      y  y  y  y     pb
0x0e 30  0 10 10 10  0 24  8  0 0 0x00--      y  y  y  y     pb
0x0f 30  0 10 10 10  0 32  0  0 0 0x00--      y  y  y  y     pb
0x10 30  0 10 10 10  0  0  0  4 1 0x00--      y  y  y  y     pb
0x11 30  0 10 10 10  0 16  0  4 1 0x00--      y  y  y  y     pb
0x12 30  0 10 10 10  0 24  0  4 1 0x00--      y  y  y  y     pb
0x13 30  0 10 10 10  0 24  8  4 1 0x00--      y  y  y  y     pb
0x14 30  0 10 10 10  0 32  0  4 1 0x00--      y  y  y  y     pb
0x15 32  0  8  8  8  8  0  0  0 0 0x00--      a  y  y  y     pb
0x16 32  0  8  8  8  8 16  0  0 0 0x00--      a  y  y  y     pb
0x17 32  0  8  8  8  8 24  0  0 0 0x00--      a  y  y  y     pb
0x18 32  0  8  8  8  8 24  8  0 0 0x00--      a  y  y  y     pb
0x19 32  0  8  8  8  8 32  0  0 0 0x00--      a  y  y  y     pb
0x1a 32  0  8  8  8  8  0  0  4 1 0x00--      a  y  y  y     pb
0x1b 32  0  8  8  8  8 16  0  4 1 0x00--      a  y  y  y     pb
0x1c 32  0  8  8  8  8 24  0  4 1 0x00--      a  y  y  y     pb
0x1d 32  0  8  8  8  8 24  8  4 1 0x00--      a  y  y  y     pb
0x1e 32  0  8  8  8  8 32  0  4 1 0x00--      a  y  y  y     pb
0x1f 24  0  8  8  8  0  0  0  0 0 0x00--      y  y  y  y     pb
0x20 24  0  8  8  8  0 16  0  0 0 0x00--      y  y  y  y     pb
0x21 24  0  8  8  8  0 24  0  0 0 0x00--      y  y  y  y     pb
0x22 24  0  8  8  8  0 24  8  0 0 0x00--      y  y  y  y     pb
0x23 24  0  8  8  8  0 32  0  0 0 0x00--      y  y  y  y     pb
0x24 24  0  8  8  8  0  0  0  4 1 0x00--      y  y  y  y     pb
0x25 24  0  8  8  8  0 16  0  4 1 0x00--      y  y  y  y     pb
0x26 24  0  8  8  8  0 24  0  4 1 0x00--      y  y  y  y     pb
0x27 24  0  8  8  8  0 24  8  4 1 0x00--      y  y  y  y     pb
0x28 24  0  8  8  8  0 32  0  4 1 0x00--      y  y  y  y     pb
0x29 16  0  5  6  5  0  0  0  0 0 0x00--      y  y  y  y     pb
0x2a 16  0  5  6  5  0 16  0  0 0 0x00--      y  y  y  y     pb
0x2b 16  0  5  6  5  0 24  0  0 0 0x00--      y  y  y  y     pb
0x2c 16  0  5  6  5  0 24  8  0 0 0x00--      y  y  y  y     pb
0x2d 16  0  5  6  5  0 32  0  0 0 0x00--      y  y  y  y     pb
0x2e 16  0  5  6  5  0  0  0  4 1 0x00--      y  y  y  y     pb
0x2f 16  0  5  6  5  0 16  0  4 1 0x00--      y  y  y  y     pb
0x30 16  0  5  6  5  0 24  0  4 1 0x00--      y  y  y  y     pb
0x31 16  0  5  6  5  0 24  8  4 1 0x00--      y  y  y  y     pb
0x32 16  0  5  6  5  0 32  0  4 1 0x00--      y  y  y  y     pb

@Drakulix
Copy link
Member

It certainly needs the gbm platform, so whatever causes eglinfo to not work here is likely causing smithay to fail as well.

@tv42
Copy link
Author

tv42 commented Sep 18, 2024

eglinfo seems to say that even on NixOS systems that work. No idea why. I'm bisecting to find the breakage but the compiles are taking a very long time.

@tv42
Copy link
Author

tv42 commented Sep 19, 2024

I bisected this on a faster computer with amdgpu. On that one, the "bad" case is not a SIGSEGV but a hang with black screen that thankfully reliably resets to normal tty when I kill the niri process.

On that computer, nixpkgs commit NixOS/nixpkgs@ef12b15 "mesa: 24.0.7 -> 24.0.8" is what triggers the bug. Taking the current niri tree and changing its nixpkgs to point to before that, it works; after, just black. I'll continue tomorrow.

https://docs.mesa3d.org/relnotes/24.0.8.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants