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
