'all CUDA-capable devices are busy or unavailable' after cudaGLSetGLDevice

Hi all, i’m new to the use of openGL interoperability with CUDA. Following the Programming Giude of CUDA 4.0, I call cudaGLSetGLDevice
before any other runtime calls. But the next cuda call (eg. cudaMalloc) return “all CUDA-capable devices are busy or unavailable.”

Also, in this same forum (The Official NVIDIA Forums | NVIDIA) an user said that:

“In multi-GPU systems though you’re going to encounter even larger flaws in CUDA…
a) You can’t do CUDA/GL interop when the CUDA context and the OpenGL context are on different devices (undocumented, and unsupported in my experience)
b) You can’t do GL device affinity on non-windows machines.
c) You can’t do GL device affinity on consumer devices (Quadro/Tesla only)”

Is this true? My final work must run on a linux multi-gpu system. I have to change the graphic library to use? And in this case, what are you suggestions?

Sorry for my english.

OS: Opensuse 11.4 64 bit
Graphic Card: GeForce 9600M GT
DRIVER: 275.21