This series fixes few problem found in the VirtIO-GPU driver and makes couple improvements. The "DMA API usage improvement" patch will be needed later on when we will be about to add memory shrinker support to the driver, it also cleans up code nicely. Changelog: v7: - Factored out VirtIO fixes from [1] since I'll be working on the dma-buf locking in a separate patchset now. [1] https://lore.kernel.org/all/20220526235040.678984-1-dmitry.osipenko@xxxxxxxxxxxxx/ - Added r-b from Thomas Hellström. - Added more fixes-tags to the patches. - The part of the v6 "Correct drm_gem_shmem_get_sg_table() error handling" patch got merged into linux-next recent from another patch [2], but that patch missed to zero out shmem->pages on error. Hence I updated my patch to fix the merged fix. [2] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=c24968734abfed81c8f93dc5f44a7b7a9aecadfa Dmitry Osipenko (9): drm/virtio: Correct drm_gem_shmem_get_sg_table() error handling drm/virtio: Check whether transferred 2D BO is shmem drm/virtio: Unlock reservations on virtio_gpu_object_shmem_init() error drm/virtio: Unlock reservations on dma_resv_reserve_fences() error drm/virtio: Use appropriate atomic state in virtio_gpu_plane_cleanup_fb() drm/virtio: Simplify error handling of virtio_gpu_object_create() drm/virtio: Improve DMA API usage for shmem BOs drm/virtio: Use dev_is_pci() drm/virtio: Return proper error codes instead of -1 drivers/gpu/drm/virtio/virtgpu_drv.c | 53 +++++--------------- drivers/gpu/drm/virtio/virtgpu_drv.h | 5 +- drivers/gpu/drm/virtio/virtgpu_gem.c | 4 +- drivers/gpu/drm/virtio/virtgpu_kms.c | 7 ++- drivers/gpu/drm/virtio/virtgpu_object.c | 65 ++++++------------------- drivers/gpu/drm/virtio/virtgpu_plane.c | 6 +-- drivers/gpu/drm/virtio/virtgpu_vq.c | 21 ++++---- 7 files changed, 47 insertions(+), 114 deletions(-) -- 2.36.1