Since GLXgears is seg faulting when it is run without VirtualGL, then I
suspect that this is due to an interaction problem between the server's
OpenGL library and the client's OpenGL library.  Thus, it is not a bug
in VirtualGL.  Several things you should try:

(1) Try using a different machine, preferably with a different type of X
server, as the client.

(2) Try disabling the GLX extension on the client.  If my theory is
correct, then this should make GLXgears run properly with VirtualGL
(but, of course, it will no longer run without VirtualGL.)

(3) Execute 'vglrun +tr glxgears'.  If my theory is correct, then the
failure should occur during glXChooseVisual().  That is when VirtualGL
probes the 2D X server (the X server running on the client machine) to
attempt to figure out if it has OpenGL capabilities.

Since the failure is reproducible without VirtualGL, then it warrants
contacting ATI support.  It seems that their libGL implementation may
not be properly detecting whether the display is remote or local, and
perhaps it is trying to use direct OpenGL rendering on the remote
display.  That would explain why it works when you set
LIBGL_ALWAYS_INDIRECT=yes.

On 6/7/10 11:26 AM, Nate Fuhriman wrote:
> I have a ATI graphics card and the libraries I have installed. They are 
> working if I login to the local machine. If I try and run remote I get 
> segfaults even with vglrun.  However if I use LD_LIBRARY_PATH I get glxgears 
> to show up on my remote display but it is very slow. I'm assuming I have 
> something setup wrong in my virtualgl setup but I can't find what is wrong.
> 
> Thanks in advance for your help
> Nate
> 
> 
> vis:~ # ldd `which glxgears`  
>         linux-vdso.so.1 =>  (0x00007ffff11ff000)
>         libGL.so.1 => /usr/X11R6/lib64/libGL.so.1 (0x00007faee8d66000)
>         libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007faee8b54000)
>         libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007faee8817000)
>         libpthread.so.0 => /lib64/libpthread.so.0 (0x00007faee85fb000)
>         libm.so.6 => /lib64/libm.so.6 (0x00007faee83a5000)
>         libc.so.6 => /lib64/libc.so.6 (0x00007faee804c000)
>         libatiuki.so.1 => /usr/lib64/libatiuki.so.1 (0x00007faee901b000)
>         libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007faee7e48000)
>         libxcb-xlib.so.0 => /usr/lib64/libxcb-xlib.so.0 (0x00007faee7c46000)
>         libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007faee7a2a000)
>         libdl.so.2 => /lib64/libdl.so.2 (0x00007faee7826000)                  
>                                                                               
>                      
>         /lib64/ld-linux-x86-64.so.2 (0x00007faee8f3d000)                      
>                                                                               
>                      
> vis:~ # LD_LIBRARY_PATH=/usr/lib64/ ldd `which glxgears`                      
>                                                                               
>                      
>         linux-vdso.so.1 =>  (0x00007fffdedfe000)                              
>                                                                               
>                      
>         libGL.so.1 => /usr/lib64/libGL.so.1 (0x00007fe0d6920000)
>         libXext.so.6 => /usr/lib64/libXext.so.6 (0x00007fe0d670e000)
>         libX11.so.6 => /usr/lib64/libX11.so.6 (0x00007fe0d63d1000)
>         libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fe0d61b5000)
>         libm.so.6 => /lib64/libm.so.6 (0x00007fe0d5f5f000)
>         libc.so.6 => /lib64/libc.so.6 (0x00007fe0d5c06000)
>         libXxf86vm.so.1 => /usr/lib64/libXxf86vm.so.1 (0x00007fe0d5a00000)
>         libXdamage.so.1 => /usr/lib64/libXdamage.so.1 (0x00007fe0d57fd000)
>         libXfixes.so.3 => /usr/lib64/libXfixes.so.3 (0x00007fe0d55f7000)
>         libdrm.so.2 => /usr/lib64/libdrm.so.2 (0x00007fe0d53ee000)
>         libdl.so.2 => /lib64/libdl.so.2 (0x00007fe0d51ea000)
>         libXau.so.6 => /usr/lib64/libXau.so.6 (0x00007fe0d4fe6000)
>         libxcb-xlib.so.0 => /usr/lib64/libxcb-xlib.so.0 (0x00007fe0d4de4000)
>         libxcb.so.1 => /usr/lib64/libxcb.so.1 (0x00007fe0d4bc8000)
>         /lib64/ld-linux-x86-64.so.2 (0x00007fe0d6ba0000)
> vis:~ # glxgears
> Segmentation fault
> vis:~ # DISPLAY=:0 glxgears
> 24945 frames in 5.0 seconds = 4988.860 FPS
> 24991 frames in 5.0 seconds = 4998.089 FPS
> ^C
> vis:~ # LD_LIBRARY_PATH=/usr/lib64/ LIBGL_ALWAYS_INDIRECT=yes glxgears
> 4712 frames in 5.0 seconds = 941.746 FPS
> 4301 frames in 5.0 seconds = 857.878 FPS
> ^C
> vis:~ # vglrun glxgears
> Segmentation fault
> vis:~ # LD_LIBRARY_PATH=/usr/lib64/ LIBGL_ALWAYS_INDIRECT=yes vglrun glxgears
> [VGL] WARNING: The OpenGL rendering context obtained on X display
> [VGL]    :0.0 is indirect, which may cause performance to suffer.
> [VGL]    If :0.0 is a local X display, then the framebuffer device
> [VGL]    permissions may be set incorrectly.
> 1811 frames in 5.0 seconds = 362.189 FPS
> 1824 frames in 5.0 seconds = 364.655 FPS
> 
> SLES11 system 
> with ATI 949e card.
> 
> ------------------------------------------------------------------------------
> ThinkGeek and WIRED's GeekDad team up for the Ultimate 
> GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
> lucky parental unit.  See the prize list and enter to win: 
> http://p.sf.net/sfu/thinkgeek-promo
> _______________________________________________
> VirtualGL-Users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/virtualgl-users

------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
VirtualGL-Users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/virtualgl-users

Reply via email to