mbox series

[v7,0/9] VirtIO-GPU driver fixes and improvements

Message ID 20220630200726.1884320-1-dmitry.osipenko@collabora.com (mailing list archive)
Headers show
Series VirtIO-GPU driver fixes and improvements | expand

Message

Dmitry Osipenko June 30, 2022, 8:07 p.m. UTC
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@collabora.com/

    - 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(-)