- /*
* Ask host to release resources (+fill release ring),
* then wait for the release actually happening.
*/
- qxl_io_notify_oom(qdev);
- for (try = 0; try < 20 && atomic_read(&qdev->release_count) > 0; try++)
msleep(20);
A bit icky, why not use a wait queue or something like that instead of hand-rolling this? Not for perf reasons, just so it's a bit clear who waits for whom and why.
There isn't one ready for use, and adding a new one (to wait for the garbage collection having released something) just for a clean shutdown looked a bit like overkill.
But after digging a bit more and looking at the qxl_fence_wait() mess I think adding a wait queue looks like a good idea ...
v5 coming soon ...
take care, Gerd