This has just been implemented in the Unichrome driver, and I'm not sure wether it's the best or most appopriate way to do it but it works as follows:

1. The Mesa driver fills a "malloced" system memory buffer with vertex data.
2. The Mesa driver then calls the DRM through a via-specific IOCTL. (via_ioctl.c)
3. The via drm copies the buffer to another buffer in kernel system memory ( static storage ), (via_dma.c)
4. The via drm verifies the content of the buffer to reject buffers that contain commands that are considered harmful. (via_verifier.c)
5. The buffer is copied to AGP space, and the engine pointers are updated. (via_dma.c)


The reason for 3. is that running the verifier directly on AGP memory is very slow.

Hi Thomas,

     Thank you very much for the explanation :)

     What kind of verification of vertex data does unichrome need ?

                     thank you !

                         Vladimir Dergachev


/Thomas









-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/
--
_______________________________________________
Dri-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dri-devel





-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/
--
_______________________________________________
Dri-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to