Compiz, OpenSolaris and VB 3

Discussions about using Solaris guests in VirtualBox.
Post Reply
diogenes
Posts: 9
Joined: 4. Dec 2009, 03:56
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: OpenSolaris

Compiz, OpenSolaris and VB 3

Post by diogenes »

Hello everyone.

My host OS is Windows 7 and I am running OpenSol 2009.06 as my VB guest. In VB version 2.2.X 3D acceleration worked great and I was able to run compiz in OpenSolaris. However, once I upgraded to VB 3.0.x compiz stopped working. I tried to reinstall the tools and finally reinstalled the OS from scratch with no luck (compiz would still fail to be enabled). I experienced this same issue on two different computers (one at work and the other at home). Lastly, I just updated to VB 3.1 hoping it would resolve the issue, but it appears that for OpenSolaris, compiz only works in VB versions 2.2.x.

I found that pgrilo was having a similar issue (see link below)

http://forums.virtualbox.org/viewtopic.php?f=8&t=19571

Any help would be greatly appreciated.
Thanks!
diogenes
Posts: 9
Joined: 4. Dec 2009, 03:56
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: OpenSolaris

Re: Compiz, OpenSolaris and VB 3

Post by diogenes »

An update.

The latest version of VB (3.1.4) change log states that there were fixes for Solaris 3D support. I updated my home computer to the latest version of Virtualbox and indeed Compiz worked. However, my computer at work which has an ATI Radeon HD 4850 (home computer has an Nvidia GeForce GTX 285)fails to enable compiz. I am not sure if the video cards play a role in this issue, but I was curious if anyone knows why it works on one and not on the other and if there are any fixes.

Thanks!
Ramshankar
Oracle Corporation
Posts: 793
Joined: 7. Jan 2008, 16:17

Re: Compiz, OpenSolaris and VB 3

Post by Ramshankar »

In VirtualBox, if the host doesn't support 3d acceleration it's not supported in the guest. Could you please run "/opt/VirtualBox/VBoxTestOGL" on the host? Also the VBox.log file of the VM where it fails would be useful.
Oracle Corp.
diogenes
Posts: 9
Joined: 4. Dec 2009, 03:56
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: OpenSolaris

Re: Compiz, OpenSolaris and VB 3

Post by diogenes »

Hello Ramshankar,

The host is Windows 7 so I ran the VBoxTestOGL.exe in C:\Program Files\Sun\VirtualBox. However, there was no output. I executed the binary from both the cmd line and windows explorer and neither provided any sort of output. Is the output redirected to a file? Below you will find what appears to me to be the relevant part of the VBox.log file.

Thanks!



00:00:00.221 VirtualBox 3.1.4 r57640 win.amd64 (Feb 12 2010 20:28:56) release log
00:00:00.221 Log opened 2010-02-16T21:35:09.911012200Z
00:00:00.221 OS Product: Windows 7
00:00:00.221 OS Release: 6.1.7600
00:00:00.221 OS Service Pack:
00:00:00.221 Host RAM: 24573MB RAM, available: 19194MB
00:00:00.221 Executable: C:\PROGRA~1\Sun\VIRTUA~1\VirtualBox.exe
00:00:00.221 Process ID: 2936
00:00:00.221 Package type: WINDOWS_64BITS_GENERIC
00:00:00.223 SUP: Loaded VMMR0.r0 (C:\PROGRA~1\Sun\VIRTUA~1/VMMR0.r0) at 0xfffffa802aa98080 - ModuleInit at fffffa802aaa9020 and ModuleTerm at fffffa802aaa90a0
00:00:00.223 SUP: VMMR0EntryEx located at fffffa802aaa9eb0, VMMR0EntryFast at fffffa802aaa9230 and VMMR0EntryInt at fffffa802aaa9220
00:00:00.223 SUP: windbg> .reload /f C:\PROGRA~1\Sun\VIRTUA~1/VMMR0.r0=0xfffffa802aa98080
00:00:00.281 VBoxSharedClipboard mode: Bidirectional
00:00:00.526 OpenGL Info: Render SPU: GL_VENDOR: ATI Technologies Inc.
00:00:00.526 OpenGL Info: Render SPU: GL_RENDERER: ATI Radeon HD 4850 X2
00:00:00.526 OpenGL Info: Render SPU: GL_VERSION: 2.1.8787
00:00:00.526 OpenGL Info: Render SPU: GL_EXTENSIONS: GL_AMDX_vertex_shader_tessellator GL_AMD_draw_buffers_blend GL_AMD_performance_monitor GL_AMD_texture_texture4 GL_ARB_color_buffer_float GL_ARB_copy_buffer GL_ARB_depth_buffer_float GL_ARB_depth_texture GL_ARB_draw_buffers 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_map_buffer_range 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_shader_objects GL_ARB_shader_texture_lod GL_ARB_shading_language_100 GL_ARB_shadow GL_ARB_shadow_ambient GL_ARB_texture_border_clamp GL_ARB_texture_buffer_object 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_texture_snorm GL_ARB_transpose_matrix GL_ARB_vertex_array_object GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_envmap_bumpmap 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_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_compiled_vertex_array GL_EXT_copy_buffer 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_object GL_EXT_framebuffer_sRGB 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_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_EXT_subtexture GL_EXT_texgen_reflection GL_EXT_texture3D GL_EXT_texture_array GL_EXT_texture_buffer_object 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 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_shared_exponent GL_EXT_texture_snorm GL_EXT_texture_swizzle GL_EXT_transform_feedback GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_blend_square GL_NV_conditional_render GL_NV_copy_depth_to_color GL_NV_primitive_restart GL_NV_texgen_reflection GL_SGIS_generate_mipmap GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_SUN_multi_draw_arrays GL_WIN_swap_hint WGL_EXT_swap_control
00:00:00.528 Shared crOpenGL service loaded.
Ramshankar
Oracle Corporation
Posts: 793
Joined: 7. Jan 2008, 16:17

Re: Compiz, OpenSolaris and VB 3

Post by Ramshankar »

Does the guest in your work machine also have the latest additions installed? From the looks of the VBox.log the host should support 3d fine.
Oracle Corp.
diogenes
Posts: 9
Joined: 4. Dec 2009, 03:56
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: OpenSolaris

Re: Compiz, OpenSolaris and VB 3

Post by diogenes »

Yep. Virutalbox is version 3.1.4 and it has the latest tools installed. It almost looks like it is going to work, the screen flickers and everything, then the "Desktop effects could not be enabled" appears. Does the version of OpenGL matter on the host OS?
Ramshankar
Oracle Corporation
Posts: 793
Joined: 7. Jan 2008, 16:17

Re: Compiz, OpenSolaris and VB 3

Post by Ramshankar »

Yes it does matter, but could you please paste the output of "CR_DEBUG=1 glxinfo", it should produce some debugging output.
Oracle Corp.
diogenes
Posts: 9
Joined: 4. Dec 2009, 03:56
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: OpenSolaris

Re: Compiz, OpenSolaris and VB 3

Post by diogenes »

CR_DEBUG=1 glxinfo
name of display: :0.0
[0x1] OpenGL Debug: In crNetConnectToServer( "vboxhgcm://host:0", port=7000, mtu=1024, broker=0 )
[0x1] OpenGL Debug: Connecting to host on port 0, with protocol vboxhgcm
[0x1] OpenGL Debug: HGCM connect was successful: client id =0x26

[0x1] OpenGL Debug: Done connecting to vboxhgcm://host:0 (swapping=0)
[0x1] OpenGL Debug: SPU 1/2: (0) "feedback"
[0x1] OpenGL Debug: SPU 2/2: (1) "pack"
[0x1] OpenGL Debug: Initializing error SPU
[0x1] OpenGL Debug: Initializing pack SPU
[0x1] OpenGL Debug: In crNetConnectToServer( "vboxhgcm://llp:7000", port=7000, mtu=5242880, broker=0 )
[0x1] OpenGL Debug: Connecting to llp on port 7000, with protocol vboxhgcm
[0x1] OpenGL Debug: HGCM connect was successful: client id =0x27

[0x1] OpenGL Debug: Done connecting to vboxhgcm://llp:7000 (swapping=0)
[0x1] OpenGL Debug: Buffer pool 84009f8 was empty; allocating new 5242896 byte buffer.
[0x1] OpenGL Debug: Using system malloc

[0x1] OpenGL Debug: Initializing error SPU
[0x1] OpenGL Debug: Initializing passthrough SPU
[0x1] OpenGL Debug: Initializing feedback SPU
[0x1] OpenGL Debug: glXChooseVisual returned 21 depth=24
[0x1] OpenGL Debug: glXChooseVisual returned 21 depth=24
[0x1] OpenGL Debug: Buffer pool 84009f8 was empty; allocating new 5242896 byte buffer.
[0x1] OpenGL Debug: Using system malloc

[0x1] OpenGL Debug: Dispatched: WindowShow(12, 0)
[0x1] OpenGL Debug: ->glXQueryExtensionsString
[0x1] OpenGL Debug: ->glXQueryExtensionsString
[0x1] OpenGL Debug: ->glXQueryExtensionsString
display: :0 screen: 0
[0x1] OpenGL Debug: ->glXIsDirect
direct rendering: Yes
server glx vendor string: Chromium
server glx version string: 1.2 Chromium
server glx extensions:
GLX_ARB_multisample, GLX_EXT_texture_from_pixmap, GLX_SGIX_fbconfig
client glx vendor string: Chromium
client glx version string: 1.2 Chromium
client glx extensions:
GLX_ARB_multisample, GLX_EXT_texture_from_pixmap, GLX_SGIX_fbconfig
GLX version: 1.3
GLX extensions:
GLX_ARB_multisample, GLX_EXT_texture_from_pixmap, GLX_SGIX_fbconfig
OpenGL vendor string: Humper
OpenGL renderer string: Chromium
OpenGL version string: 0.0 Chromium 1.9
OpenGL extensions:
GL_CR_state_parameter, GL_CR_cursor_position, GL_CR_bounding_box,
GL_CR_print_string, GL_CR_tilesort_info, GL_CR_synchronization,
GL_CR_head_spu_name, GL_CR_performance_info, GL_CR_window_size,
GL_CR_tile_info, GL_CR_saveframe, GL_CR_readback_barrier_size,
GL_CR_server_id_sharing, GL_CR_server_matrix

[0x1] OpenGL Debug: ->glXQueryExtensionsString
[0x1] OpenGL Debug: ->glXQueryExtensionsString
2 GLX Visuals
visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
----------------------------------------------------------------------
[0x1] OpenGL Debug: ->glXQueryExtensionsString
0x21 24 tc 0 32 0 r y y 8 8 8 8 0 16 8 16 16 16 16 0 0 None
[0x1] OpenGL Debug: ->glXQueryExtensionsString
0x43 32 tc 0 32 0 r y y 8 8 8 8 0 16 8 16 16 16 16 0 0 None

[0x1] OpenGL Debug: glXGetFBConfigs returned 2 configs
[0x1] OpenGL Debug: glXGetFBConfigs[0]=0x21
[0x1] OpenGL Debug: glXGetFBConfigs[1]=0x43
2 GLXFBConfigs:
visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
----------------------------------------------------------------------
0x21 0 tc 0 24 0 r y . 8 8 8 0 0 16 8 0 0 0 0 1 1 None
0x43 0 tc 0 32 0 r y . 8 8 8 8 0 16 8 0 0 0 0 1 1 None

[0x1] OpenGL Debug: stubSPUSafeTearDown
jtrout@athos-sol:~$ CR_DEBUG=1 glxinfo
name of display: :0.0
[0x1] OpenGL Debug: In crNetConnectToServer( "vboxhgcm://host:0", port=7000, mtu=1024, broker=0 )
[0x1] OpenGL Debug: Connecting to host on port 0, with protocol vboxhgcm
[0x1] OpenGL Debug: HGCM connect was successful: client id =0x28

[0x1] OpenGL Debug: Done connecting to vboxhgcm://host:0 (swapping=0)
[0x1] OpenGL Debug: SPU 1/2: (0) "feedback"
[0x1] OpenGL Debug: SPU 2/2: (1) "pack"
[0x1] OpenGL Debug: Initializing error SPU
[0x1] OpenGL Debug: Initializing pack SPU
[0x1] OpenGL Debug: In crNetConnectToServer( "vboxhgcm://llp:7000", port=7000, mtu=5242880, broker=0 )
[0x1] OpenGL Debug: Connecting to llp on port 7000, with protocol vboxhgcm
[0x1] OpenGL Debug: HGCM connect was successful: client id =0x29

[0x1] OpenGL Debug: Done connecting to vboxhgcm://llp:7000 (swapping=0)
[0x1] OpenGL Debug: Buffer pool 84009f8 was empty; allocating new 5242896 byte buffer.
[0x1] OpenGL Debug: Using system malloc

[0x1] OpenGL Debug: Initializing error SPU
[0x1] OpenGL Debug: Initializing passthrough SPU
[0x1] OpenGL Debug: Initializing feedback SPU
[0x1] OpenGL Debug: glXChooseVisual returned 21 depth=24
[0x1] OpenGL Debug: glXChooseVisual returned 21 depth=24
[0x1] OpenGL Debug: Buffer pool 84009f8 was empty; allocating new 5242896 byte buffer.
[0x1] OpenGL Debug: Using system malloc

[0x1] OpenGL Debug: Dispatched: WindowShow(13, 0)
[0x1] OpenGL Debug: ->glXQueryExtensionsString
[0x1] OpenGL Debug: ->glXQueryExtensionsString
[0x1] OpenGL Debug: ->glXQueryExtensionsString
display: :0 screen: 0
[0x1] OpenGL Debug: ->glXIsDirect
direct rendering: Yes
server glx vendor string: Chromium
server glx version string: 1.2 Chromium
server glx extensions:
GLX_ARB_multisample, GLX_EXT_texture_from_pixmap, GLX_SGIX_fbconfig
client glx vendor string: Chromium
client glx version string: 1.2 Chromium
client glx extensions:
GLX_ARB_multisample, GLX_EXT_texture_from_pixmap, GLX_SGIX_fbconfig
GLX version: 1.3
GLX extensions:
GLX_ARB_multisample, GLX_EXT_texture_from_pixmap, GLX_SGIX_fbconfig
OpenGL vendor string: Humper
OpenGL renderer string: Chromium
OpenGL version string: 0.0 Chromium 1.9
OpenGL extensions:
GL_CR_state_parameter, GL_CR_cursor_position, GL_CR_bounding_box,
GL_CR_print_string, GL_CR_tilesort_info, GL_CR_synchronization,
GL_CR_head_spu_name, GL_CR_performance_info, GL_CR_window_size,
GL_CR_tile_info, GL_CR_saveframe, GL_CR_readback_barrier_size,
GL_CR_server_id_sharing, GL_CR_server_matrix

[0x1] OpenGL Debug: ->glXQueryExtensionsString
[0x1] OpenGL Debug: ->glXQueryExtensionsString
2 GLX Visuals
visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
----------------------------------------------------------------------
[0x1] OpenGL Debug: ->glXQueryExtensionsString
0x21 24 tc 0 32 0 r y y 8 8 8 8 0 16 8 16 16 16 16 0 0 None
[0x1] OpenGL Debug: ->glXQueryExtensionsString
0x43 32 tc 0 32 0 r y y 8 8 8 8 0 16 8 16 16 16 16 0 0 None

[0x1] OpenGL Debug: glXGetFBConfigs returned 2 configs
[0x1] OpenGL Debug: glXGetFBConfigs[0]=0x21
[0x1] OpenGL Debug: glXGetFBConfigs[1]=0x43
2 GLXFBConfigs:
visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav
id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat
----------------------------------------------------------------------
0x21 0 tc 0 24 0 r y . 8 8 8 0 0 16 8 0 0 0 0 1 1 None
0x43 0 tc 0 32 0 r y . 8 8 8 8 0 16 8 0 0 0 0 1 1 None

[0x1] OpenGL Debug: stubSPUSafeTearDown
diogenes
Posts: 9
Joined: 4. Dec 2009, 03:56
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: OpenSolaris

Re: Compiz, OpenSolaris and VB 3

Post by diogenes »

Not too sure how to read the glxinfo, but nothing broken is jumping out at me. Any thoughts about the output?
Ramshankar
Oracle Corporation
Posts: 793
Joined: 7. Jan 2008, 16:17

Re: Compiz, OpenSolaris and VB 3

Post by Ramshankar »

That output actually shows 3d is working fine. So it's only compiz that's not working? How about starting gnome-appearance-properties (iirc? that's the exec name) from the command line with CR_DEBUG=1 and try enabling compiz?
Oracle Corp.
diogenes
Posts: 9
Joined: 4. Dec 2009, 03:56
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: OpenSolaris

Re: Compiz, OpenSolaris and VB 3

Post by diogenes »

Here is the output.

CR_DEBUG=1 gnome-appearance-properties
[0x1] OpenGL Debug: ->glXQueryExtensionsString
[0x1] OpenGL Debug: In crNetConnectToServer( "vboxhgcm://host:0", port=7000, mtu=1024, broker=0 )
[0x1] OpenGL Debug: Connecting to host on port 0, with protocol vboxhgcm
[0x1] OpenGL Debug: HGCM connect was successful: client id =0x30

[0x1] OpenGL Debug: Done connecting to vboxhgcm://host:0 (swapping=0)
[0x1] OpenGL Debug: SPU 1/2: (0) "feedback"
[0x1] OpenGL Debug: SPU 2/2: (1) "pack"
[0x1] OpenGL Debug: Initializing error SPU
[0x1] OpenGL Debug: Initializing pack SPU
[0x1] OpenGL Debug: In crNetConnectToServer( "vboxhgcm://llp:7000", port=7000, mtu=5242880, broker=0 )
[0x1] OpenGL Debug: Connecting to llp on port 7000, with protocol vboxhgcm
[0x1] OpenGL Debug: HGCM connect was successful: client id =0x31

[0x1] OpenGL Debug: Done connecting to vboxhgcm://llp:7000 (swapping=0)
[0x1] OpenGL Debug: Buffer pool 80f2558 was empty; allocating new 5242896 byte buffer.
[0x1] OpenGL Debug: Using system malloc

[0x1] OpenGL Debug: Initializing error SPU
[0x1] OpenGL Debug: Initializing passthrough SPU
[0x1] OpenGL Debug: Initializing feedback SPU
[0x1] OpenGL Debug: ->glXQueryExtensionsString
[0x1] OpenGL Debug: Buffer pool 80f2558 was empty; allocating new 5242896 byte buffer.
[0x1] OpenGL Debug: Using system malloc

[0x1] OpenGL Debug: Dispatched: WindowShow(17, 1)
/usr/bin/compiz-bin (core) - Fatal: Support for non power of two textures missing
/usr/bin/compiz-bin (core) - Error: Failed to manage screen: 0
/usr/bin/compiz-bin (core) - Fatal: No manageable screens found on display :0.0
[0x1] OpenGL Debug: stubSPUSafeTearDown
diogenes
Posts: 9
Joined: 4. Dec 2009, 03:56
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: OpenSolaris

Re: Compiz, OpenSolaris and VB 3

Post by diogenes »

Any thoughts on this? I poked around a bit for this error, but didn't find anything beyond adding the following to XOrg:

Section "Extensions"
Option "Composite" "enable"
EndSection

There was also some talk about the ATI drivers, but OSOL is running in VirtualBox. Not sure how the VBOX videocard emulation works ,but that might have something to do with it. It certainly would explain why VBOX running on a machine at home with a nvidia card works and the one at work with an ATI does not.

What do you think the next step is?
Post Reply