A Windows QXL WDDM DOD driver (Display-Only-Driver)
8fb1b0a23e
In case of VSync is active (for the driver this means it shall take in account watchdog policy and ensure fast execution of PresentDisplayOnly callback) allocate bitmaps for drawable objects using non-forced requests. If immediate allocation is not possible, place entire bitmap into memory chunk allocated from the OS. If bitmap is allocated from device memory, but one of later chunks can't be allocated, allocate this and further chunks from OS memory. All these 'delayed' allocations placed into linked list which root entry is part of QXLOutput structure. >From separate thread, before sending drawable objects down, review the list of delayed chunks and allocate device memory (forced) to all of them. The cost of solution is 2 pointers added to each drawable or cursor object. Cursor commands currently do not use them; in future we have an option to offload also cursor commands. Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com> Acked-by: Frediano Ziglio <fziglio@redhat.com> |
||
---|---|---|
qxldod | ||
qxldod Package | ||
Tools | ||
.gitattributes | ||
.gitignore | ||
buildAll_NoSign.bat | ||
buildAll.bat | ||
Changelog | ||
LICENSE | ||
qxldod.sln | ||
README.md |
QXL-WDDM-DOD
Heavily based on Microsoft KMDOD example and XDDM QXL driver
The most recent binaries can be found at https://www.spice-space.org/download/windows/qxl-wddm-dod/