Closed totaam closed 9 years ago
Updated beta: [http://xpra.org/beta/osx/x86/] - does this work on OSX + Intel graphics?
Yes, this works on osx with Intel graphics, but only with the
--opengl=on
flag.
With an osx 10.9.4 mac-mini, opengl default setting:
vendor ‘Intel Inc.’ is blacklisted!
With osx 10.9.4 mac-mini, —opengl=on:
Intel Inc. / Intel HD Graphics 4000 OpenGL Engine single buffering
With older osx 10.6.8, —opengl=on:
some required OpenGL functions are not available: glGenFramebuffers, glBindFramebuffer, glFramebufferTexture2D n/a
OK, thanks. r7206 removes the "Intel Inc." driver from the blacklist.
Not sure about the "missing functions" warning: that's what I get on 10.5.x but those functions should be present with 10.6 onwards..
troycauble: can you please confirm that the crashes are gone on your system with this latest build (and that opengl is on)? See here: [http://xpra.org/beta/osx/x86/]
Xpra-0.14.0-r7232.CRASH
(80.3 KiB)r7237 crash
Crash attached. :(
Xpra-0.14.0-r7232.dmg with --opengl=yes
Both --opengl=yes and unset showed "OpenGL_accelerate module loaded".
troycauble: thanks! :(
So that's an
Intel HD Graphics 3000 OpenGL Engine
as before. afarr found that aIntel HD Graphics 4000 OpenGL Engine
worked ok.afarr: can you find more Intel chipsets to test on? r7258 whitelists the 4000 and blacklists all other Intel chipsets. If we find more data points we can tune that better.
Actually, this is a newer MBP than I opened this ticket with. It reports "Intel Iris" graphics.
I would suggest testing with the calibre application if possible. I don't believe anyone has recreated this crash with another application.
I don't believe anyone has recreated this crash with another application. [[BR]] Do you have any other applications using gtkglext on osx? I very much doubt it seeing how hard I had to work to get it to build on osx.
So I am closing this bug as fixed since we have blacklisted the only graphics card that has problems. afarr: please add more chipsets in this ticket as and when you find time to test them.
Please ignore my stupid comment above, calibre is to be used on the server, I still don't see why it would trigger things on the client... but who knows. It works fine here, but I don't have a "real" opengl, just virtualbox opengl in 10.6.x
afarr: can you give this application a go on an Intel 3000?
I have the same Intel 3000 card on OSX and, with Xpra 0.14.4 server / 0.14.3 client with
--opengl=yes
, I get no crashes, even when opening calibre and spawning tooltips. Gvim and chromium also work fine.totaam asked me to post about it here so you guys have more information, so here it is the OpenGL section of the bugreport tool [https://gist.github.com/cesarkawakami/c50c5cc8dcaebabc8961]:
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_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_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_debug_label', 'GL_EXT_debug_marker', 'GL_EXT_draw_buffers2', 'GL_EXT_draw_range_elements', 'GL_EXT_fog_coord', 'GL_EXT_framebuffer_blit', 'GL_EXT_framebuffer_multisample', '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_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_light_max_exponent', 'GL_NV_texgen_reflection', 'GL_NV_texture_barrier', '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 0x7c7a878 (GdkGLConfigImplQuartz at 0x18f6ad0)> has_alpha : True opengl : (2, 1) pygdkglext_version : (1, 0, 0) pyopengl : 3.1.0 renderer : Intel HD Graphics 3000 OpenGL Engine rgba : True shading language version : 1.20 vendor : Intel Inc.
I found someone with an osx laptop with an Intel 3000 graphics card to shanghai into testing (0.15.0 r-7543 client vs. fedora 20 server with 0.15.0 r-7543).
Using a browser on tooltip and widget heavy sites he was able to induce a traceback on the server (which I'll include here in case you think it's something to pursue):
Traceback (most recent call last): File "/usr/lib64/python2.7/site-packages/xpra/server/video_subregion.py", line 119, in refresh self.refresh_cb(window, regions) File "/usr/lib64/python2.7/site-packages/xpra/server/window_video_source.py", line 425, in refresh_subregion WindowSource.do_send_delayed_regions(self, now, window, regions, encoding, options, get_best_encoding=self.get_refresh_subregion_encoding) File "/usr/lib64/python2.7/site-packages/xpra/server/window_source.py", line 899, in do_send_delayed_regions pixel_count = sum(rect.width*rect.height for rect in regions) File "/usr/lib64/python2.7/site-packages/xpra/server/window_source.py", line 899, in <genexpr> pixel_count = sum(rect.width*rect.height for rect in regions) AttributeError: 'NoneType' object has no attribute 'width'
He was also able to crash a firefox window (I'm not sure if it was related to the traceback, but he said the xterm that fired up the firefox window reported a python error), but he wasn't able to induce a server crash with an hour of widget playing.
Let me know if you think another test with calibre is called for, or if trying to reproduce that error (apparently, maybe, caused by clicking on an ad) is called for.
Yes, please try calibre, as that's the application that is meant to trigger this bug.
Thanks for the stacktrace, it is completely unrelated but definitely worth fixing (I think r7544 does).
Had my draftee playing with calibre every which way with that Intel 3000 video card, couldn't get the server to crash. (Managed to get that python error with a firefox window again though, might look into that when I have a chance.)
I suspect this issue might be solved.
OK, I've removed the Intel blacklist in r7578.
Hopefully the crashes will have gone away (the osx build system is due a full rebuild once #533 is closed), and if not then maybe we can figure out what makes it occur.
So I am keeping this ticket open.
Never mind: I'm clearly working with an older release than you.
Macbook Pro with "Intel Iris" graphics. Xpra 0.14.5 --opengl=yes
Attaching crash log.
cal_crash
(84.1 KiB)Another crash
@troycauble: I'm hoping to see if the problem is specific to your setup or if other users with Intel graphics hit this issue. I am hoping it's the former, if not then maybe we can get a better idea of what is causing it.
Worth mentioning that we are making progress with the GTK3 port, so maybe we can use something a bit more recent and supported too in the so distant future: #680 / #90 / #640.
Running an OSX 0.14.7 client, with an Intel 4000 graphics card, against a fedora 20 0.14.7 server.. I got a client-side crash with a problem report which seems to match the details of comment:4 exactly.
Client-side CLI error traceback:
python quit unexpectedly /Applications/{xpra}.app/Contents/Resources/lib/python/gtk/gtkgl/widget.py:35: GtkWarning: gtk_widget_set_colormap: assertion 'GDK_IS_COLORMAP (colormap)' failed Bus error: 10
One of my drafted testers got a slightly different traceback using an Intel 3000 graphics card (he was probably using 0.14.3 against a 0.14.3 server... but I'm not certain) - which I will attach in its entirety, just in case.
python_2014-09-16-103138_RS4-Laptop-2.crash
(70.0 KiB)osx crash report with Intel 3000 driver, 0.14.3 client
- the Intel 4000 is blacklisted again as of r7775 (will backport) - if you can get a crash with another Intel chipset, we'll have to blacklist all Intel chipsets..
- the second crash is unrelated to this: it seems to be in the system tray setup code. Was this crash on startup or was there an app trying to setup a new system tray? (either way, does not look like it belongs in this ticket). It may well be #681 (also similar to #677), both are fixed already, please check if you can reproduce with the latest stable version
Actually blacklist the intel 4000 video chipset: r7814 (+7815 for v0.14.x)
See also #695: maybe this bug is present with all drivers on OSX...
If that's the case, fixing the problem in gtkglext is likely to be beyond me, so we should look at GTK3 instead (#90 and #640), and just hope that the bug is fixed in that version. Or, use a different toolkit.. maybe native win32 windows even.
New potential duplicate: #702. It seems to trigger with transient auto-complete dialogs in eclipse, which may be the clue we need to find a reproducible test case.
For the record, I am getting a complete client crash with trunk and Intel 4000... Partly recorded in #717, which is another opengl related crash.
Closing this ticket now that the Intel drivers is blacklisted for all chipsets on both OSX and win32.
See #818#comment:10 - let's see how re-enabling opengl works out. (for 0.16)
Intel drivers are greylisted again in 0.16.x, too many issues.
Issue migrated from trac ticket # 563
component: client | priority: major | resolution: fixed
2014-05-02 21:57:40: troycauble created the issue