Problem with EVE tutorial triangleset.C

Hi everyone,

I’m running ROOT 5.34/32 on a Fedora 23 system, and I’ve been having some trouble with the EVE package. As a minimal working example, when I run the triangleset.C tutorial macro (see https://root.cern.ch/root/html/tutorials/eve/triangleset.C.html), ROOT immediately segfaults, producing the following output:

[code]root [0] .x triangleset.C
root [1]
*** Break *** segmentation violation

===========================================================
There was a crash.
This is the entire stack trace of all threads:

#0 0x00007f60308233ba in waitpid () from /lib64/libc.so.6
#1 0x00007f603079e9cb in do_system () from /lib64/libc.so.6
#2 0x00007f6031556622 in TUnixSystem::StackTrace() () from /usr/lib64/root/libCore.so.5.34
#3 0x00007f603155888c in TUnixSystem::DispatchSignals(ESignals) () from /usr/lib64/root/libCore.so.5.34
#4
#5 0x00007f6020101f43 in brw_merge_inputs () from /usr/lib64/dri/i965_dri.so
#6 0x00007f602010222e in brw_draw_prims () from /usr/lib64/dri/i965_dri.so
#7 0x00007f601ff2d684 in vbo_exec_vtx_flush () from /usr/lib64/dri/i965_dri.so
#8 0x00007f601ff1932c in vbo_exec_FlushVertices_internal () from /usr/lib64/dri/i965_dri.so
#9 0x00007f601ff2a463 in vbo_exec_FlushVertices () from /usr/lib64/dri/i965_dri.so
#10 0x00007f601fdfeaf9 in _mesa_PopAttrib () from /usr/lib64/dri/i965_dri.so
#11 0x00007f602131fecf in TEveTriangleSetGL::DirectDraw(TGLRnrCtx&) const () from /usr/lib64/root/libEve.so
#12 0x00007f60251ba7eb in TGLLogicalShape::Draw(TGLRnrCtx&) const () from /usr/lib64/root/libRGL.so
#13 0x00007f60251aa7a4 in TGLPhysicalShape::Draw(TGLRnrCtx&) const () from /usr/lib64/root/libRGL.so
#14 0x00007f6025205f9a in TGLScene::RenderElements(TGLRnrCtx&, std::vector<TGLScene::DrawElement_t*, std::allocatorTGLScene::DrawElement_t* >&, bool, std::vector<TGLPlane, std::allocator > const*) () from /usr/lib64/root/libRGL.so
#15 0x00007f6025206fdc in TGLScene::RenderAllPasses(TGLRnrCtx&, std::vector<TGLScene::DrawElement_t*, std::allocatorTGLScene::DrawElement_t* >&, bool) () from /usr/lib64/root/libRGL.so
#16 0x00007f602517ab61 in TGLViewerBase::SubRenderScenes(void (TGLSceneBase::)(TGLRnrCtx&)) () from /usr/lib64/root/libRGL.so
#17 0x00007f602517ae04 in TGLViewerBase::RenderOpaque(bool, bool) () from /usr/lib64/root/libRGL.so
#18 0x00007f602517a557 in TGLViewerBase::Render() () from /usr/lib64/root/libRGL.so
#19 0x00007f60251c3735 in TGLViewer::Render() () from /usr/lib64/root/libRGL.so
#20 0x00007f60251c10cc in TGLViewer::DoDrawMono(bool) () from /usr/lib64/root/libRGL.so
#21 0x00007f60251c3dcd in TGLViewer::DoDraw(bool) () from /usr/lib64/root/libRGL.so
#22 0x00007f602133875f in TEveViewerList::RepaintChangedViewers(bool, bool) () from /usr/lib64/root/libEve.so
#23 0x00007f60213ac488 in TEveManager::DoRedraw3D() () from /usr/lib64/root/libEve.so
#24 0x00007f602142a761 in G__G__Eve1_187_0_35(G__value
, char const*, G__param*, int) () from /usr/lib64/root/libEve.so
#25 0x00007f602feffeab in Cint::G__CallFunc::Execute(void*) () from /usr/lib64/root/libCint.so.5.34
#26 0x00007f60315191fc in TCint::CallFunc_Exec(void*, void*) const () from /usr/lib64/root/libCore.so.5.34
#27 0x00007f603149c7a3 in TQConnection::ExecuteMethod() () from /usr/lib64/root/libCore.so.5.34
#28 0x00007f60314e5249 in TQObject::Emit(char const*) () from /usr/lib64/root/libCore.so.5.34
#29 0x00007f60314f92f7 in TTimer::Notify() () from /usr/lib64/root/libCore.so.5.34
#30 0x00007f60314f9221 in TTimer::CheckTimer(TTime const&) () from /usr/lib64/root/libCore.so.5.34
#31 0x00007f60315587c9 in TUnixSystem::DispatchTimers(bool) () from /usr/lib64/root/libCore.so.5.34
#32 0x00007f6031558cd5 in TUnixSystem::DispatchOneEvent(bool) () from /usr/lib64/root/libCore.so.5.34
#33 0x00007f60314eb154 in TSystem::InnerLoop() () from /usr/lib64/root/libCore.so.5.34
#34 0x00007f60314e943f in TSystem::Run() () from /usr/lib64/root/libCore.so.5.34
#35 0x00007f6031477caf in TApplication::Run(bool) () from /usr/lib64/root/libCore.so.5.34
#36 0x00007f60310d528b in TRint::Run(bool) () from /usr/lib64/root/libRint.so.5.34
#37 0x000055ecd50f031c in main ()

The lines below might hint at the cause of the crash.
If they do not help you then please submit a bug report at
http://root.cern.ch/bugs. Please post the ENTIRE stack trace
from above as an attachment in addition to anything else
that might help us fixing this issue.

#5 0x00007f6020101f43 in brw_merge_inputs () from /usr/lib64/dri/i965_dri.so
#6 0x00007f602010222e in brw_draw_prims () from /usr/lib64/dri/i965_dri.so
#7 0x00007f601ff2d684 in vbo_exec_vtx_flush () from /usr/lib64/dri/i965_dri.so
#8 0x00007f601ff1932c in vbo_exec_FlushVertices_internal () from /usr/lib64/dri/i965_dri.so
#9 0x00007f601ff2a463 in vbo_exec_FlushVertices () from /usr/lib64/dri/i965_dri.so
#10 0x00007f601fdfeaf9 in _mesa_PopAttrib () from /usr/lib64/dri/i965_dri.so
#11 0x00007f602131fecf in TEveTriangleSetGL::DirectDraw(TGLRnrCtx&) const () from /usr/lib64/root/libEve.so
#12 0x00007f60251ba7eb in TGLLogicalShape::Draw(TGLRnrCtx&) const () from /usr/lib64/root/libRGL.so
#13 0x00007f60251aa7a4 in TGLPhysicalShape::Draw(TGLRnrCtx&) const () from /usr/lib64/root/libRGL.so
#14 0x00007f6025205f9a in TGLScene::RenderElements(TGLRnrCtx&, std::vector<TGLScene::DrawElement_t*, std::allocatorTGLScene::DrawElement_t* >&, bool, std::vector<TGLPlane, std::allocator > const*) () from /usr/lib64/root/libRGL.so
#15 0x00007f6025206fdc in TGLScene::RenderAllPasses(TGLRnrCtx&, std::vector<TGLScene::DrawElement_t*, std::allocatorTGLScene::DrawElement_t* >&, bool) () from /usr/lib64/root/libRGL.so
#16 0x00007f602517ab61 in TGLViewerBase::SubRenderScenes(void (TGLSceneBase::*)(TGLRnrCtx&)) () from /usr/lib64/root/libRGL.so
#17 0x00007f602517ae04 in TGLViewerBase::RenderOpaque(bool, bool) () from /usr/lib64/root/libRGL.so
#18 0x00007f602517a557 in TGLViewerBase::Render() () from /usr/lib64/root/libRGL.so
#19 0x00007f60251c3735 in TGLViewer::Render() () from /usr/lib64/root/libRGL.so
#20 0x00007f60251c10cc in TGLViewer::DoDrawMono(bool) () from /usr/lib64/root/libRGL.so
#21 0x00007f60251c3dcd in TGLViewer::DoDraw(bool) () from /usr/lib64/root/libRGL.so
#22 0x00007f602133875f in TEveViewerList::RepaintChangedViewers(bool, bool) () from /usr/lib64/root/libEve.so
#23 0x00007f60213ac488 in TEveManager::DoRedraw3D() () from /usr/lib64/root/libEve.so

Root > Error in TGLLockable::TakeLock: ‘TGLSceneBase Event scene’ unable to take ModifyLock, already DrawLock
Error in TGLLockable::ReleaseLock: ‘TGLSceneBase Event scene’ unable to release ModifyLock, is DrawLock
Error in TGLSAViewer::TGLViewer::SetupCameras: expected kUnlocked, found DrawLock
Error in TGLLockable::TakeLock: ‘TGLViewerBase’ unable to take DrawLock, already DrawLock
Error in TGLLockable::TakeLock: ‘TGLViewerBase’ unable to take DrawLock, already DrawLock
Error in TGLLockable::TakeLock: ‘TGLViewerBase’ unable to take DrawLock, already DrawLock
Error in TGLLockable::TakeLock: ‘TGLViewerBase’ unable to take DrawLock, already DrawLock
Error in TGLLockable::TakeLock: ‘TGLViewerBase’ unable to take DrawLock, already DrawLock
Error in TGLLockable::TakeLock: ‘TGLViewerBase’ unable to take DrawLock, already DrawLock
Error in TGLLockable::TakeLock: ‘TGLViewerBase’ unable to take DrawLock, already DrawLock
Error in TGLLockable::TakeLock: ‘TGLViewerBase’ unable to take DrawLock, already DrawLock
Error in TGLLockable::TakeLock: ‘TGLViewerBase’ unable to take DrawLock, already DrawLock[/code]

I’m using the official Fedora 23 ROOT and mesa-libGL packages. I’ve also tried setting the environment variable “LIBGL_ALWAYS_INDIRECT=1” before running the macro. WIth that change, root gives me the following error message and hangs.

Has anyone else seen this before? Some of the other tutorials seem to work ok, but the event viewer seems to be pretty fragile on my system.

Not sure if it helps …

See also:
CMSPublic → OpenGL and X11 problems

Thanks, Pepe. Those posts gave me a couple more things to try, but still no luck. I tried running glxgears, and it works ok unless I set LIBGL_ALWAYS_INDIRECT=1. It then fails to run.

Running glxinfo gives the following output:

[code]name of display: :0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
GLX_ARB_create_context, GLX_ARB_create_context_profile,
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
GLX_ARB_framebuffer_sRGB, GLX_ARB_multisample,
GLX_EXT_create_context_es2_profile, GLX_EXT_framebuffer_sRGB,
GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info,
GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer,
GLX_OML_swap_method, GLX_SGIS_multisample, GLX_SGIX_fbconfig,
GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, GLX_SGI_swap_control
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
GLX_ARB_create_context, GLX_ARB_create_context_profile,
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample,
GLX_EXT_buffer_age, GLX_EXT_create_context_es2_profile,
GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB,
GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info,
GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer,
GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer,
GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,
GLX_SGI_swap_control, GLX_SGI_video_sync
GLX version: 1.4
GLX extensions:
GLX_ARB_create_context, GLX_ARB_create_context_profile,
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample,
GLX_EXT_buffer_age, GLX_EXT_create_context_es2_profile,
GLX_EXT_framebuffer_sRGB, GLX_EXT_import_context,
GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, GLX_EXT_visual_rating,
GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer,
GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer,
GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,
GLX_SGI_swap_control, GLX_SGI_video_sync
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel® HD Graphics 5500 (Broadwell GT2)
OpenGL core profile version string: 3.3 (Core Profile) Mesa 11.1.0 (git-525f3c2)
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth,
GL_AMD_draw_buffers_blend, GL_AMD_seamless_cubemap_per_texture,
GL_AMD_shader_trinary_minmax, GL_AMD_vertex_shader_layer,
GL_AMD_vertex_shader_viewport_index, GL_ANGLE_texture_compression_dxt3,
GL_ANGLE_texture_compression_dxt5, GL_APPLE_object_purgeable,
GL_ARB_ES2_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_conditional_render_inverted, GL_ARB_conservative_depth,
GL_ARB_copy_buffer, GL_ARB_copy_image, 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_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_gpu_shader5, GL_ARB_half_float_pixel, GL_ARB_half_float_vertex,
GL_ARB_instanced_arrays, GL_ARB_internalformat_query,
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_pipeline_statistics_query,
GL_ARB_pixel_buffer_object, GL_ARB_point_sprite,
GL_ARB_program_interface_query, GL_ARB_provoking_vertex,
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_counters,
GL_ARB_shader_bit_encoding, GL_ARB_shader_clock,
GL_ARB_shader_image_load_store, GL_ARB_shader_image_size,
GL_ARB_shader_objects, GL_ARB_shader_storage_buffer_object,
GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples,
GL_ARB_shader_texture_lod, GL_ARB_shading_language_420pack,
GL_ARB_shading_language_packing, GL_ARB_stencil_texturing, GL_ARB_sync,
GL_ARB_texture_barrier, 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_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_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_uniform_buffer_object,
GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object,
GL_ARB_vertex_attrib_binding, 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_abgr, GL_EXT_blend_equation_separate,
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_sRGB, 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_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_decode,
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_IBM_multimode_draw_arrays,
GL_KHR_context_flush_control, GL_KHR_debug, GL_MESA_pack_invert,
GL_MESA_texture_signed_rgba, GL_NV_conditional_render, GL_NV_depth_clamp,
GL_NV_packed_depth_stencil, GL_NV_texture_barrier, GL_OES_EGL_image,
GL_OES_read_format, GL_S3_s3tc

OpenGL version string: 3.0 Mesa 11.1.0 (git-525f3c2)
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
GL_3DFX_texture_compression_FXT1, GL_AMD_conservative_depth,
GL_AMD_draw_buffers_blend, GL_AMD_seamless_cubemap_per_texture,
GL_AMD_shader_trinary_minmax, GL_ANGLE_texture_compression_dxt3,
GL_ANGLE_texture_compression_dxt5, GL_APPLE_object_purgeable,
GL_APPLE_packed_pixels, GL_APPLE_vertex_array_object,
GL_ARB_ES2_compatibility, GL_ARB_ES3_compatibility,
GL_ARB_arrays_of_arrays, 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_compressed_texture_pixel_storage,
GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth,
GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_debug_output,
GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, GL_ARB_depth_texture,
GL_ARB_derivative_control, GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend,
GL_ARB_draw_elements_base_vertex, GL_ARB_draw_instanced,
GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location,
GL_ARB_fragment_coord_conventions, 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_half_float_pixel,
GL_ARB_half_float_vertex, GL_ARB_instanced_arrays,
GL_ARB_internalformat_query, GL_ARB_invalidate_subdata,
GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_multi_bind,
GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query,
GL_ARB_occlusion_query2, GL_ARB_pipeline_statistics_query,
GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite,
GL_ARB_program_interface_query, GL_ARB_provoking_vertex,
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_counters,
GL_ARB_shader_bit_encoding, GL_ARB_shader_clock,
GL_ARB_shader_image_load_store, GL_ARB_shader_image_size,
GL_ARB_shader_objects, GL_ARB_shader_storage_buffer_object,
GL_ARB_shader_texture_image_samples, GL_ARB_shader_texture_lod,
GL_ARB_shading_language_100, GL_ARB_shading_language_420pack,
GL_ARB_shading_language_packing, GL_ARB_shadow, GL_ARB_stencil_texturing,
GL_ARB_sync, GL_ARB_texture_barrier, GL_ARB_texture_border_clamp,
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_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_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_transpose_matrix,
GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra,
GL_ARB_vertex_array_object, 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_window_pos, GL_ATI_blend_equation_separate, GL_ATI_draw_buffers,
GL_ATI_separate_stencil, GL_ATI_texture_env_combine3,
GL_ATI_texture_float, 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_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_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, 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_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_compression_dxt1, 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_decode,
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_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip,
GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate,
GL_KHR_context_flush_control, GL_KHR_debug, GL_MESA_pack_invert,
GL_MESA_texture_signed_rgba, GL_MESA_window_pos, GL_NV_blend_square,
GL_NV_conditional_render, GL_NV_depth_clamp, 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 version string: OpenGL ES 3.0 Mesa 11.1.0 (git-525f3c2)
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
OpenGL ES profile extensions:
GL_ANGLE_texture_compression_dxt3, GL_ANGLE_texture_compression_dxt5,
GL_APPLE_texture_max_level, GL_EXT_blend_func_extended,
GL_EXT_blend_minmax, GL_EXT_color_buffer_float,
GL_EXT_discard_framebuffer, GL_EXT_draw_buffers,
GL_EXT_draw_elements_base_vertex, GL_EXT_map_buffer_range,
GL_EXT_multi_draw_arrays, GL_EXT_read_format_bgra,
GL_EXT_separate_shader_objects, GL_EXT_shader_integer_mix,
GL_EXT_texture_compression_dxt1, GL_EXT_texture_filter_anisotropic,
GL_EXT_texture_format_BGRA8888, GL_EXT_texture_rg,
GL_EXT_texture_type_2_10_10_10_REV, GL_EXT_unpack_subimage,
GL_KHR_context_flush_control, GL_KHR_debug, GL_NV_draw_buffers,
GL_NV_fbo_color_attachments, GL_NV_read_buffer, GL_NV_read_depth,
GL_NV_read_depth_stencil, GL_NV_read_stencil, GL_OES_EGL_image,
GL_OES_EGL_image_external, GL_OES_EGL_sync,
GL_OES_compressed_ETC1_RGB8_texture, GL_OES_depth24, GL_OES_depth_texture,
GL_OES_depth_texture_cube_map, GL_OES_draw_elements_base_vertex,
GL_OES_element_index_uint, GL_OES_fbo_render_mipmap,
GL_OES_get_program_binary, GL_OES_mapbuffer, GL_OES_packed_depth_stencil,
GL_OES_rgb8_rgba8, GL_OES_standard_derivatives, GL_OES_stencil8,
GL_OES_surfaceless_context, GL_OES_texture_3D, 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_vertex_array_object

40 GLX Visuals
visual x bf lv rg d st colorbuffer sr ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a F gb bf th cl r g b a ns b eat

0x020 24 tc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None
0x021 24 dc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None
0x0cf 24 tc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 0 0 None
0x0d0 24 tc 0 32 0 r . . 8 8 8 8 . . 0 0 0 0 0 0 0 0 0 None
0x0d1 24 tc 0 32 0 r . . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None
0x0d2 24 tc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 0 0 None
0x0d3 24 tc 0 24 0 r . . 8 8 8 0 . . 0 0 0 0 0 0 0 0 0 None
0x0d4 24 tc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x0d5 24 tc 0 24 0 r . . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x0d6 24 tc 0 32 0 r y . 8 8 8 8 . . 0 24 8 16 16 16 16 0 0 Slow
0x0d7 24 tc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x0d8 24 tc 0 24 0 r y . 8 8 8 0 . . 0 24 8 16 16 16 0 0 0 Slow
0x0d9 24 tc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 4 1 None
0x0da 24 tc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 8 1 None
0x0db 24 tc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 4 1 None
0x0dc 24 tc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 8 1 None
0x0dd 24 tc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 4 1 None
0x0de 24 tc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 8 1 None
0x0df 24 tc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 4 1 None
0x0e0 24 tc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 8 1 None
0x0e1 24 dc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 0 0 None
0x0e2 24 dc 0 32 0 r . . 8 8 8 8 . . 0 0 0 0 0 0 0 0 0 None
0x0e3 24 dc 0 32 0 r . . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None
0x0e4 24 dc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 0 0 None
0x0e5 24 dc 0 24 0 r . . 8 8 8 0 . . 0 0 0 0 0 0 0 0 0 None
0x0e6 24 dc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x0e7 24 dc 0 24 0 r . . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x0e8 24 dc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None
0x0e9 24 dc 0 32 0 r y . 8 8 8 8 . . 0 24 8 16 16 16 16 0 0 Slow
0x0ea 24 dc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x0eb 24 dc 0 24 0 r y . 8 8 8 0 . . 0 24 8 16 16 16 0 0 0 Slow
0x0ec 24 dc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 4 1 None
0x0ed 24 dc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 8 1 None
0x0ee 24 dc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 4 1 None
0x0ef 24 dc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 8 1 None
0x0f0 24 dc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 4 1 None
0x0f1 24 dc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 8 1 None
0x0f2 24 dc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 4 1 None
0x0f3 24 dc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 8 1 None
0x08e 32 tc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None

64 GLXFBConfigs:
visual x bf lv rg d st colorbuffer sr ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a F gb bf th cl r g b a ns b eat

0x08f 0 tc 0 16 0 r y . 5 6 5 0 . . 0 0 0 0 0 0 0 0 0 None
0x090 0 tc 0 16 0 r . . 5 6 5 0 . . 0 0 0 0 0 0 0 0 0 None
0x091 0 tc 0 16 0 r y . 5 6 5 0 . . 0 16 0 0 0 0 0 0 0 None
0x092 0 tc 0 16 0 r . . 5 6 5 0 . . 0 16 0 0 0 0 0 0 0 None
0x093 0 tc 0 16 0 r y . 5 6 5 0 . . 0 24 8 0 0 0 0 0 0 None
0x094 0 tc 0 16 0 r . . 5 6 5 0 . . 0 24 8 0 0 0 0 0 0 None
0x095 24 tc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 0 0 None
0x096 24 tc 0 32 0 r . . 8 8 8 8 . . 0 0 0 0 0 0 0 0 0 None
0x097 24 tc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None
0x098 24 tc 0 32 0 r . . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None
0x099 24 tc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 0 0 None
0x09a 24 tc 0 24 0 r . . 8 8 8 0 . . 0 0 0 0 0 0 0 0 0 None
0x09b 24 tc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x09c 24 tc 0 24 0 r . . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x09d 0 tc 0 16 0 r y . 5 6 5 0 . . 0 16 0 0 0 0 0 0 0 None
0x09e 0 tc 0 16 0 r y . 5 6 5 0 . . 0 16 0 16 16 16 0 0 0 Slow
0x09f 32 tc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None
0x0a0 24 tc 0 32 0 r y . 8 8 8 8 . . 0 24 8 16 16 16 16 0 0 Slow
0x0a1 24 tc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x0a2 24 tc 0 24 0 r y . 8 8 8 0 . . 0 24 8 16 16 16 0 0 0 Slow
0x0a3 0 tc 0 16 0 r y . 5 6 5 0 . . 0 0 0 0 0 0 0 4 1 None
0x0a4 0 tc 0 16 0 r y . 5 6 5 0 . . 0 0 0 0 0 0 0 8 1 None
0x0a5 0 tc 0 16 0 r y . 5 6 5 0 . . 0 16 0 0 0 0 0 4 1 None
0x0a6 0 tc 0 16 0 r y . 5 6 5 0 . . 0 16 0 0 0 0 0 8 1 None
0x0a7 24 tc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 4 1 None
0x0a8 24 tc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 8 1 None
0x0a9 24 tc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 4 1 None
0x0aa 24 tc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 8 1 None
0x0ab 24 tc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 4 1 None
0x0ac 24 tc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 8 1 None
0x0ad 24 tc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 4 1 None
0x0ae 24 tc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 8 1 None
0x0af 0 dc 0 16 0 r y . 5 6 5 0 . . 0 0 0 0 0 0 0 0 0 None
0x0b0 0 dc 0 16 0 r . . 5 6 5 0 . . 0 0 0 0 0 0 0 0 0 None
0x0b1 0 dc 0 16 0 r y . 5 6 5 0 . . 0 16 0 0 0 0 0 0 0 None
0x0b2 0 dc 0 16 0 r . . 5 6 5 0 . . 0 16 0 0 0 0 0 0 0 None
0x0b3 0 dc 0 16 0 r y . 5 6 5 0 . . 0 24 8 0 0 0 0 0 0 None
0x0b4 0 dc 0 16 0 r . . 5 6 5 0 . . 0 24 8 0 0 0 0 0 0 None
0x0b5 24 dc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 0 0 None
0x0b6 24 dc 0 32 0 r . . 8 8 8 8 . . 0 0 0 0 0 0 0 0 0 None
0x0b7 24 dc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None
0x0b8 24 dc 0 32 0 r . . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None
0x0b9 24 dc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 0 0 None
0x0ba 24 dc 0 24 0 r . . 8 8 8 0 . . 0 0 0 0 0 0 0 0 0 None
0x0bb 24 dc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x0bc 24 dc 0 24 0 r . . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x0bd 0 dc 0 16 0 r y . 5 6 5 0 . . 0 16 0 0 0 0 0 0 0 None
0x0be 0 dc 0 16 0 r y . 5 6 5 0 . . 0 16 0 16 16 16 0 0 0 Slow
0x0bf 24 dc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 0 0 None
0x0c0 24 dc 0 32 0 r y . 8 8 8 8 . . 0 24 8 16 16 16 16 0 0 Slow
0x0c1 24 dc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 0 0 None
0x0c2 24 dc 0 24 0 r y . 8 8 8 0 . . 0 24 8 16 16 16 0 0 0 Slow
0x0c3 0 dc 0 16 0 r y . 5 6 5 0 . . 0 0 0 0 0 0 0 4 1 None
0x0c4 0 dc 0 16 0 r y . 5 6 5 0 . . 0 0 0 0 0 0 0 8 1 None
0x0c5 0 dc 0 16 0 r y . 5 6 5 0 . . 0 16 0 0 0 0 0 4 1 None
0x0c6 0 dc 0 16 0 r y . 5 6 5 0 . . 0 16 0 0 0 0 0 8 1 None
0x0c7 24 dc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 4 1 None
0x0c8 24 dc 0 32 0 r y . 8 8 8 8 . . 0 0 0 0 0 0 0 8 1 None
0x0c9 24 dc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 4 1 None
0x0ca 24 dc 0 32 0 r y . 8 8 8 8 . . 0 24 8 0 0 0 0 8 1 None
0x0cb 24 dc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 4 1 None
0x0cc 24 dc 0 24 0 r y . 8 8 8 0 . . 0 0 0 0 0 0 0 8 1 None
0x0cd 24 dc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 4 1 None
0x0ce 24 dc 0 24 0 r y . 8 8 8 0 . . 0 24 8 0 0 0 0 8 1 None[/code]

Strangely enough, alice_esd.C works fine, even though it’s significantly more complicated.

Hi,

Yeah, I know about this … newer intel drivers don’t allow one to use vertex arrays within display lists. I started working around this but got swamped with other things so I still need to finish it and put it in the repo. The idea was that you’d set a flag in your rootrc and eve/gl would disable display lists for objects that use vertex arrays. There really aren’t all that many (triangleset and pointset and derivatives, which include line and track).

If you build root yourself, look for fUseDL = kTRUE/FALSE in the GL renderer class that’s giving you trouble, in triangleset.C case it’s TEveTriangleSetGL:
github.com/root-mirror/root/blo … GL.cxx#L32
and set it so that display lists are not used.

Cheers,
\m

Thanks for your help! For reference, I’ve discovered another workaround that is possible on machines (including mine) that have an Nvidia Optimus setup (low-performance integrated graphics card [typically made by Intel] and a high performance Nvidia one). Invoking ROOT or any root-based standalone executable using the optirun tool (“optirun root” in a terminal) bypasses the Intel card and uses Nvidia for all OpenGL rendering, solving this issue.