xpra icon
Bug tracker and wiki

Opened 5 years ago

Closed 5 years ago

Last modified 4 years ago

#808 closed defect (fixed)

Xpra client - frequent crashes on OS X

Reported by: majika Owned by: alas
Priority: major Milestone: 0.14
Component: client Version: 0.14.x
Keywords: OS X Cc:

Description

Description:
Segmentation fault

/Applications/Xpra.app/Contents/Resources/lib/python/gtk/gtkgl/widget.py:35: GtkWarning: gtk_widget_set_colormap: assertion 'GDK_IS_COLORMAP (colormap)' failed
/Applications/Xpra.app/Contents/Resources/lib/python/xpra/client/gtk_base/gtk_client_window_base.py:195: GtkWarning: gdk_colormap_get_visual: assertion 'GDK_IS_COLORMAP (colormap)' failed
/Users/user2/bin/xpra: line 4:  2880 Segmentation fault: 11  ./Xpra "$@"
System: Xpra version, platform and host information
env.ASCIIDOCTORJ_HOME            : /Users/user2/.gvm/asciidoctorj/current
env.Apple_PubSub_Socket_Render   : /private/tmp/com.apple.launchd.plLaX777Xj/Render
env.CHARSETALIASDIR              : /Applications/Xpra.app/Contents/Resources/lib
env.CLICOLOR                     : 1
env.CRASH_HOME                   : /Users/user2/.gvm/crash/current
env.DBUS_LAUNCHD_SESSION_BUS_SOCKET : /private/tmp/com.apple.launchd.aMaRGdGSxd/unix_domain_listener
env.DISPLAY                      : /private/tmp/com.apple.launchd.pQe9cJyRCU/org.macosforge.xquartz:0
env.DYLD_FALLBACK_LIBRARY_PATH   : /usr/X11/lib:/usr/lib::
env.DYLD_LIBRARY_PATH            : /Applications/Xpra.app/Contents/Resources/lib
env.GAIDEN_HOME                  : /Users/user2/.gvm/gaiden/current
env.GDK_PIXBUF_MODULE_FILE       : /Applications/Xpra.app/Contents/Resources/etc/gtk-2.0/gdk-pixbuf.loaders
env.GLIDE_HOME                   : /Users/user2/.gvm/glide/current
env.GRADLE_HOME                  : /Users/user2/.gvm/gradle/current
env.GRAILS_HOME                  : /Users/user2/.gvm/grails/current
env.GRIFFON_HOME                 : /Users/user2/.gvm/griffon/current
env.GROOVYSERV_HOME              : /Users/user2/.gvm/groovyserv/current
env.GROOVY_HOME                  : /Users/user2/.gvm/groovy/current
env.GST_PLUGIN_PATH              : /Applications/Xpra.app/Contents/Resources/lib/gstreamer-0.10
env.GST_PLUGIN_SCANNER           : /Applications/Xpra.app/Contents/Helpers/gst-plugin-scanner
env.GTK2_RC_FILES                : /Applications/Xpra.app/Contents/Resources/etc/gtk-2.0/gtkrc
env.GTK_DATA_PREFIX              : /Applications/Xpra.app/Contents/Resources
env.GTK_EXE_PREFIX               : /Applications/Xpra.app/Contents/Resources
env.GTK_IM_MODULE_FILE           : /Applications/Xpra.app/Contents/Resources/etc/gtk-2.0/gtk.immodules
env.GTK_PATH                     : /Applications/Xpra.app/Contents/Resources
env.GVM_BROADCAST_SERVICE        : http://cast.gvm.io
env.GVM_BROKER_SERVICE           : http://release.gvm.io
env.GVM_DIR                      : /Users/user2/.gvm
env.GVM_INIT                     : true
env.GVM_PLATFORM                 : Darwin
env.GVM_SERVICE                  : http://api.gvmtool.net
env.GVM_VERSION                  : 2.2.0
env.HOME                         : /Users/user2
env.ITERM_PROFILE                : 
env.ITERM_SESSION_ID             : w0t1p0
env.JAVA_HOME                    : /Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home
env.JBAKE_HOME                   : /Users/user2/.gvm/jbake/current
env.LANG                         : C
env.LAZYBONES_HOME               : /Users/user2/.gvm/lazybones/current
env.LOGNAME                      : user2
env.LSCOLORS                     : gxBxhxDxfxhxhxhxhxcxcx
env.MANPATH                      : /Users/user2/.nvm/v0.10.36/share/man:/opt/local/share/man:/usr/local/share/man:/usr/share/man:/opt/X11/share/man:/usr/local/git/share/man:/Applications/Xcode.app/Contents/Developer/usr/share/man:/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/share/man
env.NVM_BIN                      : /Users/user2/.nvm/v0.10.36/bin
env.NVM_DIR                      : /Users/user2/.nvm
env.NVM_IOJS_ORG_MIRROR          : https://iojs.org/dist
env.NVM_IOJS_ORG_VERSION_LISTING : https://iojs.org/dist/index.tab
env.NVM_NODEJS_ORG_MIRROR        : https://nodejs.org/dist
env.NVM_PATH                     : /Users/user2/.nvm/v0.10.36/lib/node
env.NVM_RC_VERSION               : 
env.PANGO_LIBDIR                 : /Applications/Xpra.app/Contents/Resources/lib
env.PANGO_RC_FILE                : /Applications/Xpra.app/Contents/Resources/etc/pango/pangorc
env.PANGO_SYSCONFDIR             : /Applications/Xpra.app/Contents/Resources/etc
env.PATH                         : /Users/user2/.gvm/vertx/current/bin:/Users/user2/.gvm/springboot/current/bin:/Users/user2/.gvm/lazybones/current/bin:/Users/user2/.gvm/jbake/current/bin:/Users/user2/.gvm/groovyserv/current/bin:/Users/user2/.gvm/groovy/current/bin:/Users/user2/.gvm/griffon/current/bin:/Users/user2/.gvm/grails/current/bin:/Users/user2/.gvm/gradle/current/bin:/Users/user2/.gvm/glide/current/bin:/Users/user2/.gvm/gaiden/current/bin:/Users/user2/.gvm/crash/current/bin:/Users/user2/.gvm/asciidoctorj/current/bin:/Users/user2/.nvm/v0.10.36/bin:/Users/user2/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/git/bin
env.PULSE_PROP_application.icon_name : /Applications/Xpra.app/Contents/Resources/share/xpra/icons/xpra.png
env.PULSE_PROP_application.name  : xpra
env.PULSE_PROP_media.role        : music
env.PWD                          : /Applications/Xpra.app/Contents/MacOS
env.PYTHON                       : /Applications/Xpra.app/Contents/Resources/bin/Xpra
env.PYTHONHOME                   : /Applications/Xpra.app/Contents/Resources
env.PYTHONPATH                   : /Applications/Xpra.app/Contents/Resources/lib/pygtk/2.0:/Applications/Xpra.app/Contents/Resources/lib/python/:/Applications/Xpra.app/Contents/Resources/lib/python/lib-dynload/:/Applications/Xpra.app/Contents/Resources/lib:
env.SHELL                        : /bin/bash
env.SHLVL                        : 2
env.SPRINGBOOT_HOME              : /Users/user2/.gvm/springboot/current
env.SSH_AUTH_SOCK                : /private/tmp/com.apple.launchd.i9QuP1VtOK/Listeners
env.TERM                         : xterm-256color
env.TERM_PROGRAM                 : iTerm.app
env.TMPDIR                       : /var/folders/_0/2t_2v6wj7bvgxyhjp20y_xwr0000gn/T/
env.USER                         : user2
env.VERTX_HOME                   : /Users/user2/.gvm/vertx/current
env.XDG_CONFIG_DIRS              : /Applications/Xpra.app/Contents/Resources/etc/xdg
env.XDG_DATA_DIRS                : /Applications/Xpra.app/Contents/Resources/share
env.XPC_FLAGS                    : 0x0
env.XPC_SERVICE_NAME             : 0
env.__CF_USER_TEXT_ENCODING      : 0x1F5:0x0:0x0
gtk.cairo.version                : 1.10.0
gtk.gdk.version                  : 2.24.0
gtk.glib.version                 : (2, 40, 0)
gtk.gobject.version              : (2, 28, 6)
gtk.gtk.version                  : (2, 24, 24)
gtk.pango.version                : 1.36.5
gtk.pygtk.version                : (2, 24, 0)
host.byteorder                   : little
host.gid                         : 20
host.hostname                    : Macbook
host.pid                         : 2964
host.python.full_version         : 2.7.9 (default, Dec 11 2014, 19:25:48) \n[GCC 4.2.1 (Apple Inc. build 5577)]
host.python.version              : (2, 7, 9)
host.uid                         : 501
paths.app                        : /Applications/Xpra.app/Contents/
paths.app.default                : /Applications/Xpra.app/Contents/Resources/share/xpra
paths.default_conf.dir           : /Applications/Xpra.app/Contents/Resources/
paths.home                       : /Users/user2
paths.icons                      : /Applications/Xpra.app/Contents/Resources/share/xpra/icons
paths.resources                  : /Applications/Xpra.app/Contents/Resources/
paths.socket                     : ~/.xpra
paths.system_conf_dir            : /Library/Application Support/Xpra
paths.user_conf_dir              : ~/.xpra
platform                         : darwin
platform.machine                 : x86_64
platform.name                    : Mac OSX
platform.platform                : Darwin-14.1.0-x86_64-i386-32bit
platform.processor               : i386
platform.release                 : 14.1.0
user.name                        : 
user.username                    : user2
version.bit                      : 32bit
version.by                       : MacAdmin
version.compiler                 : i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5493)
version.cpu                      : i386
version.cython                   : 0.21.1
version.date                     : 2015-01-30
version.linker                   : 
version.local_modifications      : 0
version.on                       : osx-2
version.python                   : (2, 7, 9)
version.revision                 : 8600
version.time                     : 11:32
version.version                  : 0.14.19

Network: Compression, packet encoding and encryption
bencode                          : True
bencode.version                  : ('Cython', 0, 11)
chunked_compression              : True
compressors                      : ['zlib', 'lz4', 'lzo']
digest                           : ('hmac', 'xor')
encoders                         : ['bencode', 'rencode', 'yaml']
interfaces                       : ['lo0', 'gif0', 'stf0', 'en1', 'en2', 'fw0', 'en0', 'p2p0', 'awdl0', 'bridge0']
lz4                              : True
lzo                              : True
lzo.version                      : 1.08
mmap                             : True
pycrypto                         : True
pycrypto.fastmath                : False
pycrypto.version                 : 2.6.1
raw_packets                      : True
rencode                          : True
rencode.version                  : ('Cython', 1, 0, 2)
yaml                             : True
yaml.version                     : 3.11
zlib                             : True
zlib.version                     : 1.0

Encodings: Picture encodings supported
PIL                              : 2.7.0
avcodec2                         : (56, 1, 100)
cython                           : (0, 3, '0', '21', '1')
dec_webp                         : (0, 4, 2)
enc_webp                         : (0, 4, 2)
numpy                            : 1.8.1
swscale                          : (3, 0, 100)
vpx                              : v1.3.0
x264                             : 142

OpenGL: OpenGL driver and features
GLU extensions                   : 
GLU version                      : 1.3 MacOSX
display_mode                     : ['SINGLE']
extensions                       : ['GL_ARB_color_buffer_float', 'GL_ARB_depth_buffer_float', 'GL_ARB_depth_clamp', 'GL_ARB_depth_texture', 'GL_ARB_draw_buffers', 'GL_ARB_draw_elements_base_vertex', 'GL_ARB_draw_instanced', 'GL_ARB_fragment_program', 'GL_ARB_fragment_program_shadow', 'GL_ARB_fragment_shader', 'GL_ARB_framebuffer_object', 'GL_ARB_framebuffer_sRGB', 'GL_ARB_half_float_pixel', 'GL_ARB_half_float_vertex', 'GL_ARB_imaging', 'GL_ARB_instanced_arrays', 'GL_ARB_multisample', 'GL_ARB_multitexture', 'GL_ARB_occlusion_query', 'GL_ARB_pixel_buffer_object', 'GL_ARB_point_parameters', 'GL_ARB_point_sprite', 'GL_ARB_provoking_vertex', 'GL_ARB_seamless_cube_map', 'GL_ARB_shader_objects', 'GL_ARB_shader_texture_lod', 'GL_ARB_shading_language_100', 'GL_ARB_shadow', 'GL_ARB_sync', 'GL_ARB_texture_border_clamp', 'GL_ARB_texture_compression', 'GL_ARB_texture_compression_rgtc', 'GL_ARB_texture_cube_map', '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_mirrored_repeat', 'GL_ARB_texture_non_power_of_two', 'GL_ARB_texture_rectangle', 'GL_ARB_texture_rg', 'GL_ARB_transpose_matrix', 'GL_ARB_vertex_array_bgra', 'GL_ARB_vertex_blend', 'GL_ARB_vertex_buffer_object', 'GL_ARB_vertex_program', 'GL_ARB_vertex_shader', 'GL_ARB_window_pos', 'GL_EXT_abgr', 'GL_EXT_bgra', 'GL_EXT_bindable_uniform', 'GL_EXT_blend_color', 'GL_EXT_blend_equation_separate', 'GL_EXT_blend_func_separate', 'GL_EXT_blend_minmax', 'GL_EXT_blend_subtract', 'GL_EXT_clip_volume_hint', 'GL_EXT_compiled_vertex_array', 'GL_EXT_debug_label', 'GL_EXT_debug_marker', 'GL_EXT_depth_bounds_test', 'GL_EXT_draw_buffers2', '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_geometry_shader4', 'GL_EXT_gpu_program_parameters', 'GL_EXT_gpu_shader4', 'GL_EXT_multi_draw_arrays', 'GL_EXT_packed_depth_stencil', 'GL_EXT_packed_float', 'GL_EXT_provoking_vertex', 'GL_EXT_rescale_normal', 'GL_EXT_secondary_color', 'GL_EXT_separate_specular_color', 'GL_EXT_shadow_funcs', 'GL_EXT_stencil_two_side', 'GL_EXT_stencil_wrap', 'GL_EXT_texture_array', 'GL_EXT_texture_compression_dxt1', 'GL_EXT_texture_compression_s3tc', 'GL_EXT_texture_env_add', 'GL_EXT_texture_filter_anisotropic', 'GL_EXT_texture_integer', 'GL_EXT_texture_lod_bias', 'GL_EXT_texture_mirror_clamp', 'GL_EXT_texture_rectangle', 'GL_EXT_texture_shared_exponent', 'GL_EXT_texture_sRGB', 'GL_EXT_texture_sRGB_decode', 'GL_EXT_timer_query', 'GL_EXT_transform_feedback', 'GL_EXT_vertex_array_bgra', 'GL_APPLE_aux_depth_stencil', 'GL_APPLE_client_storage', 'GL_APPLE_element_array', 'GL_APPLE_fence', 'GL_APPLE_float_pixels', 'GL_APPLE_flush_buffer_range', 'GL_APPLE_flush_render', 'GL_APPLE_object_purgeable', 'GL_APPLE_packed_pixels', 'GL_APPLE_pixel_buffer', 'GL_APPLE_rgb_422', 'GL_APPLE_row_bytes', 'GL_APPLE_specular_vector', 'GL_APPLE_texture_range', 'GL_APPLE_transform_hint', 'GL_APPLE_vertex_array_object', 'GL_APPLE_vertex_array_range', 'GL_APPLE_vertex_point_size', 'GL_APPLE_vertex_program_evaluators', 'GL_APPLE_ycbcr_422', 'GL_ATI_separate_stencil', 'GL_ATI_texture_env_combine3', 'GL_ATI_texture_float', 'GL_ATI_texture_mirror_once', 'GL_IBM_rasterpos_clip', 'GL_NV_blend_square', 'GL_NV_conditional_render', 'GL_NV_depth_clamp', 'GL_NV_fog_distance', 'GL_NV_fragment_program_option', 'GL_NV_fragment_program2', 'GL_NV_light_max_exponent', 'GL_NV_multisample_filter_hint', 'GL_NV_point_sprite', 'GL_NV_texgen_reflection', 'GL_NV_texture_barrier', 'GL_NV_vertex_program2_option', 'GL_NV_vertex_program3', 'GL_SGIS_generate_mipmap', 'GL_SGIS_texture_edge_clamp', 'GL_SGIS_texture_lod', '']
gdkgl_version                    : (1, 0)
gdkglext_version                 : (1, 2, 0)
glconfig                         : <gtk.gdkgl.Config object at 0xbffdf30 (GdkGLConfigImplQuartz at 0x1207ad0)>
has_alpha                        : True
opengl                           : (2, 1)
pygdkglext_version               : (1, 0, 0)
pyopengl                         : 3.1.0
renderer                         : NVIDIA GeForce GT 650M OpenGL Engine
rgba                             : True
shading language version         : 1.20
vendor                           : NVIDIA Corporation
zerocopy                         : True

Change History (15)

comment:1 Changed 5 years ago by majika

Version: trunk0.14.x

comment:2 Changed 5 years ago by Antoine Martin

Milestone: 0.14
Owner: changed from Antoine Martin to majika

Does turning off opengl help?

comment:3 Changed 5 years ago by majika

The crash would happen maybe 3 times a day average. It seems OK so far using --opengl=no but I need to test some more. I'll report back.

comment:4 Changed 5 years ago by Antoine Martin

Probably a flaky opengl library on osx, see #563, #695, #593

comment:5 Changed 5 years ago by Antoine Martin

Owner: changed from majika to alas

Hopefully we can get a more reliable client toolkit in the future, either GTK3 (as per #90) or something else.
Until then, I don't want to start blacklisting every driver.. so I don't know what to do with this one.
@afarr: thoughts? crashes are bad... but the non-opengl experience is pretty bad I think. Which one is the worst?

comment:6 Changed 5 years ago by alas

Owner: changed from alas to Antoine Martin

I regularly force --opengl=on on my osx with an Intel video card... it rarely crashes on me.

Testing with the opengl off, whether with an older machine that just plain doesn't have supporting opengl libraries or with the newer with the blacklist isn't that bad of an experience, overall... but I have a high tolerance for some jerkiness in my video and such.

All told, I don't think the blacklisting is as bad as the crashes... especially if one has the option of "living dangerously" by forcing it on. It is odd though, we have a number of NVIDIA cards around here, and we haven't seen anything near 3 crashes a day. Or at least not that we'd identified, but come to think of it there was a surprisingly quick crash that did involve an NVIDIA card - so maybe the connection just eluded us.

I suspect, by the way, that wireless contributes to the opengl issues on osx... which might be useful for anyone coming across this, but I'm not sure that this helps with finding a solution.

I'll pass this back to you, and leave you to make a final (reluctant) decision.

comment:7 Changed 5 years ago by Antoine Martin

Status: newassigned

I guess we could split the blacklist into a greylist so that we start the client with opengl disabled but with the menu option to enable it on the fly, rather than requiring the command line argument.
I'll try to get that in.

comment:8 Changed 5 years ago by Antoine Martin

Greylist added for Intel (on OSX and win32) and nvidia (osx only): done in r9001. Testing blocked by #724.

comment:9 Changed 5 years ago by Antoine Martin

Owner: changed from Antoine Martin to alas
Status: assignednew

Ready for testing: those cards should now start with opengl turned off but with the ability to turn opengl back on from the tray menu.

comment:10 Changed 5 years ago by J. Max Mena

Tested an OSX (10.10 with Intel, 10.8 with Nvidia) r9116 client(s) against an r9116 Fedora 20 server:

  • Was able to toggle OpenGL on the fly from the features menu on both computers. Verified it was enabled and disabled in session info (went from n/a to single buffering)
Last edited 5 years ago by J. Max Mena (previous) (diff)

comment:11 Changed 5 years ago by Antoine Martin

Resolution: fixed
Status: newclosed

comment:12 Changed 5 years ago by Antoine Martin

Worth mentioning #818, painting the spinners with opengl may make the opengl=on more stable.

comment:13 Changed 5 years ago by Antoine Martin

comment:14 Changed 5 years ago by Antoine Martin

See ticket:818#comment:10 - let's see how re-enabling opengl works out. (for 0.16)

comment:15 Changed 4 years ago by Antoine Martin

The Intel driver is greylisted again in 0.16, see wiki/ClientRendering/OpenGL

Note: See TracTickets for help on using tickets.