Dave Airlie wrote: >> Obviously, we are interested in making use of the new DRM memory manager >> on that hardware. Now if I understand how it works correctly, this new >> memory manager allocates opaque handles which are not to be used as >> offset in memory, because they are not. Therefore, a translation from >> the handle into a proper memory adress has to be done before the >> commands are sent to the hardware. This is easy to add when the DRM >> validates all the commands. > > Also the multiple contexts means taking the drm lock is not something we > would want to be doing in on a regular basis... I've got some ideas > already discussed with Stephane but I'd like to see what other methods ppl > might have..
Yes, this is really a different hardware model than we're used to dealing with for DRI drivers, however it's not a problem for the most part - if you don't need to take the lock, don't. But then you need some other way of dealing with the other hacky stuff we get away with by lock abuses eg. VT switching. For the memory manager, I guess there are two choices: 1) make the driver use a command-buffer approach even though the hardware supports per-context ring buffers, or 2) extend the memory manager. Extending the memory manager would involve adding an ability to lock and unlock surfaces to VRAM/AGP addresses - this would require kernel interaction I guess. The driver would have to lock the surfaces then be free to submit commands to the ring, then explicitly unlock the surfaces. This is actually a pretty nasty approach - it makes it very hard to deal with low-memory situations - it's impossible to kick out another processes allocations. I wonder how NV deals with this... Keith ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel