gazebosim / gazebo-classic

Gazebo classic. For the latest version, see https://github.com/gazebosim/gz-sim
http://classic.gazebosim.org/
Other
1.15k stars 477 forks source link

Gazebo GUI crashes sometimes #2229

Open osrf-migration opened 7 years ago

osrf-migration commented 7 years ago

Original report (archived issue) by Carlos Gomes (Bitbucket: gocarlos).


Gui crashes right before starting. Using Ubuntu 14.04, ROS Indigo Gazebo 7.5, ODE

X Error of failed request: GLXBadDrawable Major opcode of failed request: 154 (GLX) Minor opcode of failed request: 5 (X_GLXMakeCurrent) Serial number of failed request: 48 Current serial number in output stream: 48

osrf-migration commented 7 years ago

Original comment by Steve Peters (Bitbucket: Steven Peters, GitHub: scpeters).


Are you using a virtual machine? What OS and video card do you have?

osrf-migration commented 7 years ago

Original comment by Carlos Gomes (Bitbucket: gocarlos).


No, its native. Using ubuntu 14.04 with all updates, i7 3930k, nvidia gtx 670 using nividia drivers

osrf-migration commented 7 years ago

Original comment by Ian Chen (Bitbucket: Ian Chen, GitHub: iche033).


do other opengl applications work for you? e.g. glxgears

what does glxinfo | grep render say?

osrf-migration commented 7 years ago

Original comment by Carlos Gomes (Bitbucket: gocarlos).


direct rendering: Yes OpenGL renderer string: GeForce GTX 670/PCIe/SSE2 GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_KTX_buffer_region, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NV_compute_program5, GL_NV_conditional_render, GL_NV_path_rendering, GL_NV_pixel_data_range, GL_NV_point_sprite, GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, GL_KTX_buffer_region, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NV_compute_program5, GL_NV_conditional_render, GL_NV_path_rendering, GL_NV_pixel_data_range, GL_NV_point_sprite,

osrf-migration commented 7 years ago

Original comment by Shane Loretz (Bitbucket: Shane Loretz, GitHub: sloretz).


What's the command you're using to start gazebo? If you're giving it a world file, can it be uploaded to the ticket?

osrf-migration commented 7 years ago

Original comment by Carlos Gomes (Bitbucket: gocarlos).


#!XML
<?xml version="1.0" ?>
<sdf version="1.5">
  <world name="default">
    <!-- A global light source -->
    <include>
      <uri>model://sun</uri>
    </include>
    <!-- A ground plane -->
    <include>
      <uri>model://ground_plane</uri>
    </include>
  </world>
</sdf>
osrf-migration commented 7 years ago

Original comment by Carlos Gomes (Bitbucket: gocarlos).


Just got this on my other computer:

#!text
X Error of failed request:  BadDrawable (invalid Pixmap or Window parameter)
  Major opcode of failed request:  153 (DRI2)
  Minor opcode of failed request:  3 (DRI2CreateDrawable)
  Resource id in failed request:  0x7400002
  Serial number of failed request:  31
  Current serial number in output stream:  33

It has a intel i5 6300U, no discrete graphics, Ubuntu 14.04, Gazebo 7.5 and ROS Indigo

osrf-migration commented 7 years ago

Original comment by Louise Poubel (Bitbucket: chapulina, GitHub: chapulina).


There are a few old issues which mention BadDrawable. I get this startup error often on my machine too.

osrf-migration commented 5 years ago

Original comment by jan stankiewicz (Bitbucket: jannsta1).


Was there ever any resolution to this? I get pretty much the same traceback around 20% of the time I start gazebo gui with ros (using kinetic on Ubuntu 16.04).

X Error of failed request: GLXBadDrawable Major opcode of failed request: 154 (GLX) Minor opcode of failed request: 5 (X_GLXMakeCurrent) Serial number of failed request: 45 Current serial number in output stream: 45

osrf-migration commented 5 years ago

Original comment by Manuel López (Bitbucket: manuel-volans-i).


I encountered the same error

#!bash
X Error of failed request:  GLXBadDrawable
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  5 (X_GLXMakeCurrent)
  Serial number of failed request:  45
  Current serial number in output stream:  45

and, after finding this thread, I used `sudo gazebo and the error is gone.

osrf-migration commented 4 years ago

Original comment by Daniel Hook (Bitbucket: Daniel Hook).


Manuel, I’m guessing that the root user had different environment variables set and that’s why sudo worked. Is there any chance you could post the diff between the environments?

osrf-migration commented 4 years ago

Original comment by 1 (Bitbucket: 1).


Still the same error here: (Ubuntu 16.04 with ROS-Kinetic and Gazebo 9.11 → Update in this Bugtracker)

X Error of failed request:  GLXBadDrawable
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  5 (X_GLXMakeCurrent)
  Serial number of failed request:  45
  Current serial number in output stream:  45
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::lock_error> >'
terminate called recursively
Aborted (core dumped)

I get this error 20-30% of the time, when I try to launch Gazebo.

osrf-migration commented 4 years ago

Original comment by Alexander Moriarty (Bitbucket: Alexander Moriarty).


I’m seeing this on 18.04 with Gazebo 9.0.0 from the Ubuntu debians. Fresh install (after working around #2607 )
Nvidia drivers (390.116) and glx is installed and working. Quadro P4000, output of glxinfo | grep render is pretty long and on a different machine than the one I’m posting from.

I launched Gazebo 9.0.0 ten times using using ros launch, and it crashed 3 times with the same error as the comment above.

adwiii commented 4 years ago

I am also seeing this issue running 18.04, Gazebo 9.0.0, Nvidia drivers 440.82 (most recent) on a Titan RTX. glxinfo below. I have been running batches of simulations with the GUI turned off and it has been failing consistently ~6% of the time (about 1500 simulations out of 25000). I have been running multiple simulations at a time on the same physical machine, though ROS Master and Gazebo are all given unique ports. Most of the time this works fine. Does the mutex lock have anything to do with multiple running at once?

There may be a slight correlation based on the world files I am using - some world files appear to fail more than others, but it is not consistent. All worlds are using ODE at 0.01 with fewer than 10 obstacles.

Error text:

X Error of failed request:  GLXBadDrawable
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  5 (X_GLXMakeCurrent)
  Serial number of failed request:  50
  Current serial number in output stream:  50
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::lock_error> >'
  what():  boost: mutex lock failed in pthread_mutex_lock: Invalid argument
Aborted (core dumped)

GLX Info:

$ glxinfo | grep render
direct rendering: Yes
OpenGL renderer string: TITAN RTX/PCIe/SSE2
    GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, 
    GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NVX_nvenc_interop, 
    GL_NV_compute_shader_derivatives, GL_NV_conditional_render, 
    GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, 
    GL_NV_stereo_view_rendering, GL_NV_texgen_reflection, 
    GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, 
    GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NVX_nvenc_interop, 
    GL_NV_compute_shader_derivatives, GL_NV_conditional_render, 
    GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, 
    GL_NV_stereo_view_rendering, GL_NV_texgen_reflection, 
    GL_EXT_multisample_compatibility, GL_EXT_multisampled_render_to_texture, 
    GL_EXT_multisampled_render_to_texture2, 
    GL_EXT_raster_multisample, GL_EXT_render_snorm, GL_EXT_robustness, 
    GL_NV_conditional_render, GL_NV_conservative_raster, 
    GL_NV_packed_float_linear, GL_NV_path_rendering, 
    GL_NV_path_rendering_shared_edge, GL_NV_pixel_buffer_object, 
    GL_NV_shadow_samplers_cube, GL_NV_stereo_view_rendering, 
    GL_OES_element_index_uint, GL_OES_fbo_render_mipmap, 
    GL_OVR_multiview_multisampled_render_to_texture
durongze commented 1 week ago

$ glxgears X Error of failed request: GLXBadDrawable Major opcode of failed request: 146 (GLX) Minor opcode of failed request: 29 (X_GLXGetDrawableAttributes) Serial number of failed request: 29 Current serial number in output stream: 29

durongze commented 1 week ago

$ glxinfo name of display: localhost:11.0 X Error of failed request: GLXBadDrawable Major opcode of failed request: 146 (GLX) Minor opcode of failed request: 29 (X_GLXGetDrawableAttributes) Serial number of failed request: 24 Current serial number in output stream: 24

durongze commented 1 week ago

*-display description: VGA compatible controller product: GD 5446 vendor: Cirrus Logic physical id: 2 bus info: pci@0000:00:02.0 logical name: /dev/fb0 version: 00 width: 32 bits clock: 33MHz capabilities: vga_controller rom fb configuration: depth=16 driver=cirrus latency=0 resolution=1024,768 resources: irq:0 memory:fc000000-fdffffff memory:fea20000-fea20fff memory:c0000-dffff

durongze commented 1 week ago

*-display description: VGA compatible controller product: GD 5446 vendor: Cirrus Logic physical id: 2 bus info: pci@0000:00:02.0 logical name: /dev/fb0 version: 00 width: 32 bits clock: 33MHz capabilities: vga_controller rom fb configuration: depth=16 driver=cirrus latency=0 resolution=1024,768 resources: irq:0 memory:fc000000-fdffffff memory:fea20000-fea20fff memory:c0000-dffff

durongze commented 1 week ago

filename: /lib/modules/5.15.0-86-generic/kernel/drivers/gpu/drm/vmwgfx/vmwgfx.ko version: 2.19.0.0 license: GPL and additional rights description: Standalone drm driver for the VMware SVGA device author: VMware Inc. and others srcversion: 1CD4ED051CDB7D54C6DFC7A alias: pci:v000015ADd00000406svsdbcsci alias: pci:v000015ADd00000405svsdbcsci depends: drm,ttm,drm_kms_helper retpoline: Y intree: Y name: vmwgfx vermagic: 5.15.0-86-generic SMP mod_unload modversions sig_id: PKCS#7 signer: Build time autogenerated kernel key sig_key: 43:38:30:48:E7:40:C8:81:E8:32:59:37:8F:13:6E:29:6C:D4:D8:C3 sig_hashalgo: sha512

parm: enable_fbdev:Enable vmwgfx fbdev (int) parm: restrict_iommu:Try to limit IOMMU usage for TTM pages (int) parm: force_coherent:Force coherent TTM pages (int) parm: restrict_dma_mask:Restrict DMA mask to 44 bits with IOMMU (int) parm: assume_16bpp:Assume 16-bpp when filtering modes (int)