Hi,
Thanks for your help. I will try those solutions after vacations.

Kind regards
David

El 15/04/2011 12:17, DRC escribió:
> David,
>
> We seem to have stalled out on this, and there were a lot of rapid-fire
> e-mails exchanged between you and Nathan, in which multiple things were
> tried and multiple interleaved results posted, so this e-mail is my
> attempt to summarize what we know.  I would encourage everyone involved
> to attempt to consolidate their responses into one e-mail and wait for a
> reply before posting another one.
>
> -- The problem is clearly due to librrfaker.so not being loaded properly
> into the app.  Thus, when the app attempts to call a GLX command, it
> fails because TurboVNC has no GLX extension.
>
> -- After examining the VirtualGL trace output from the app, it does
> appear that VirtualGL is being successfully loaded into something.  GLX
> functions are being called, at least initially.  However, with complex
> apps, one never knows whether librrfaker.so is being loaded successfully
> into one process but not successfully into another.
>
> -- Referencing your attempt to run with vglrun -d :1.0, don't do that.
> It's incorrect.  -d specifies the 3D X server, which should almost
> always be left at the default of :0.0.
>
> -- Referencing your attempt to run with -c proxy, that is implied in
> TurboVNC, so no need to specify it.
>
> -- This type of problem is an issue between librrfaker.so and the app,
> so it will not matter whether you are running in TurboVNC or using the
> VGL Transport and an SSH connection.
>
> -- A possible explanation for the "ERROR: ld.so: object 'librrfaker.so'
> from LD_PRELOAD cannot be preloaded: ignored." message is that either
> the application or something else launched from the application's script
> is a setuid/setgid executable (refer to Chapter 12 of the VirtualGL
> User's Guide.)  On modern Linux systems, this error will not prevent an
> executable from launching, so if the error were being generated by an
> executable in the script (other than the main application), then it
> should be innocuous, but if the main application is generating the
> error, then that would explain why librrfaker.so is not being loaded.
>
>     Since you have tried moving vglrun down to the bottom of the launch
> script (which I gather is a line that starts mono), then that eliminates
> the possibility that something launched by the script is causing the
> problem.  However, mono might be setuid/setgid, or some other executable
> it launches might be.
>
> -- We know your VirtualGL setup works, because you were able to vglrun
> glxgears.
>
> -- The "indirect context" messages are very odd.  For starters, when you
> specified vglrun -d 1.0, VirtualGL never should have made it as far as
> printing that message, because TurboVNC does not have a GLX extension.
> The only scenario I can come up with is that somehow VirtualGL is
> loading the version of libGL.so.1 that is shipped with the application.
>
> -- The 'Xlib:  extension "NV-GLX" missing on display "localhost:10.0".'
> message is innocuous and always occurs when running any type of 3D
> application remotely with nVidia drivers on the server end.  Blame nVidia.
>
>
> So, let's be scientific about this and try a few different
> configurations that should help me narrow down what is going on.  For
> each of these, post the console output (not tracing information, just
> the simple output from VirtualGL and the application as you try to
> launch it.)
>
> (A)
> -- Set the setuid bit on librrfaker.so and libdlfaker.so.  As root,
>
>     chmod u+s /usr/lib/librrfaker.so
>     chmod u+s /usr/lib/libdlfaker.so
>     chmod u+s /usr/lib64/librrfaker.so
>     chmod u+s /usr/lib64/libdlfaker.so
>
> -- Use an unmodified application environment and application startup script
> -- Use TurboVNC as the 2D X server
> -- vglrun the application startup script with no arguments to vglrun
>
> If (A) doesn't work, then I need you to run the following
> configurations.  You've run some of these before, but I need to see the
> console output from each for comparison (for instance, attached as
> "consoleA.log", "consoleB.log", etc.):
>
> (B)
> -- Leave the setuid bits set on librrfaker.so and libdlfaker.so
> -- Modify the startup script so that vglrun prefixes the last command
> (presumably 'mono'.)
> -- Execute the modified startup script (without using vglrun) in TurboVNC
>
> (C)
> -- Unset the setuid bits on librrfaker.so and libdlfaker.so (replace
> chmod u+s with chmod u-s in the above)
> -- Leave the startup script modified
> -- Execute the modified startup script (without using vglrun) in TurboVNC
>
> (D)
> -- Leave the setuid bits on librrfaker.so and libdlfaker.so unset
> -- Leave the startup script modified
> -- Rename any instances of libGL.so* in the application's install
> directory to something else.
> -- Execute the modified startup script (without using vglrun) in TurboVNC
>
> (E)
> -- Leave the setuid bits on librrfaker.so and libdlfaker.so unset
> -- Revert the startup script to its unmodified state
> -- Leave the libGL.so* files renamed
> -- vglrun the unmodified startup script in TurboVNC without any
> arguments to vglrun.


------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload 
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve 
application availability and disaster protection. Learn more about boosting 
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
_______________________________________________
VirtualGL-Users mailing list
VirtualGL-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/virtualgl-users

Reply via email to