From: Greg Kroah-Hartman Date: Wed, 1 Mar 2023 15:29:26 +0000 (+0100) Subject: 5.10-stable patches X-Git-Tag: v4.19.275~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6e3d0a6be525b3923f11ba15958c75637c303658;p=thirdparty%2Fkernel%2Fstable-queue.git 5.10-stable patches added patches: drm-virtio-correct-drm_gem_shmem_get_sg_table-error-handling.patch drm-virtio-fix-null-vs-is_err-checking-in-virtio_gpu_object_shmem_init.patch --- diff --git a/queue-5.10/drm-virtio-correct-drm_gem_shmem_get_sg_table-error-handling.patch b/queue-5.10/drm-virtio-correct-drm_gem_shmem_get_sg_table-error-handling.patch new file mode 100644 index 00000000000..64704ed69fe --- /dev/null +++ b/queue-5.10/drm-virtio-correct-drm_gem_shmem_get_sg_table-error-handling.patch @@ -0,0 +1,35 @@ +From 64b88afbd92fbf434759d1896a7cf705e1c00e79 Mon Sep 17 00:00:00 2001 +From: Dmitry Osipenko +Date: Thu, 30 Jun 2022 23:07:18 +0300 +Subject: drm/virtio: Correct drm_gem_shmem_get_sg_table() error handling + +From: Dmitry Osipenko + +commit 64b88afbd92fbf434759d1896a7cf705e1c00e79 upstream. + +Previous commit fixed checking of the ERR_PTR value returned by +drm_gem_shmem_get_sg_table(), but it missed to zero out the shmem->pages, +which will crash virtio_gpu_cleanup_object(). Add the missing zeroing of +the shmem->pages. + +Fixes: c24968734abf ("drm/virtio: Fix NULL vs IS_ERR checking in virtio_gpu_object_shmem_init") +Reviewed-by: Emil Velikov +Signed-off-by: Dmitry Osipenko +Link: http://patchwork.freedesktop.org/patch/msgid/20220630200726.1884320-2-dmitry.osipenko@collabora.com +Signed-off-by: Gerd Hoffmann +Signed-off-by: Greg Kroah-Hartman +Signed-off-by: Ovidiu Panait +--- + drivers/gpu/drm/virtio/virtgpu_object.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/gpu/drm/virtio/virtgpu_object.c ++++ b/drivers/gpu/drm/virtio/virtgpu_object.c +@@ -159,6 +159,7 @@ static int virtio_gpu_object_shmem_init( + shmem->pages = drm_gem_shmem_get_sg_table(&bo->base.base); + if (IS_ERR(shmem->pages)) { + drm_gem_shmem_unpin(&bo->base.base); ++ shmem->pages = NULL; + return PTR_ERR(shmem->pages); + } + diff --git a/queue-5.10/drm-virtio-fix-null-vs-is_err-checking-in-virtio_gpu_object_shmem_init.patch b/queue-5.10/drm-virtio-fix-null-vs-is_err-checking-in-virtio_gpu_object_shmem_init.patch new file mode 100644 index 00000000000..d9b78eb4ba4 --- /dev/null +++ b/queue-5.10/drm-virtio-fix-null-vs-is_err-checking-in-virtio_gpu_object_shmem_init.patch @@ -0,0 +1,37 @@ +From c24968734abfed81c8f93dc5f44a7b7a9aecadfa Mon Sep 17 00:00:00 2001 +From: Miaoqian Lin +Date: Thu, 2 Jun 2022 14:42:22 +0400 +Subject: drm/virtio: Fix NULL vs IS_ERR checking in virtio_gpu_object_shmem_init + +From: Miaoqian Lin + +commit c24968734abfed81c8f93dc5f44a7b7a9aecadfa upstream. + +Since drm_prime_pages_to_sg() function return error pointers. +The drm_gem_shmem_get_sg_table() function returns error pointers too. +Using IS_ERR() to check the return value to fix this. + +Fixes: 2f2aa13724d5 ("drm/virtio: move virtio_gpu_mem_entry initialization to new function") +Signed-off-by: Miaoqian Lin +Link: http://patchwork.freedesktop.org/patch/msgid/20220602104223.54527-1-linmq006@gmail.com +Signed-off-by: Gerd Hoffmann +Signed-off-by: Greg Kroah-Hartman +Signed-off-by: Ovidiu Panait +--- + drivers/gpu/drm/virtio/virtgpu_object.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/drivers/gpu/drm/virtio/virtgpu_object.c ++++ b/drivers/gpu/drm/virtio/virtgpu_object.c +@@ -157,9 +157,9 @@ static int virtio_gpu_object_shmem_init( + * since virtio_gpu doesn't support dma-buf import from other devices. + */ + shmem->pages = drm_gem_shmem_get_sg_table(&bo->base.base); +- if (!shmem->pages) { ++ if (IS_ERR(shmem->pages)) { + drm_gem_shmem_unpin(&bo->base.base); +- return -EINVAL; ++ return PTR_ERR(shmem->pages); + } + + if (use_dma_api) { diff --git a/queue-5.10/series b/queue-5.10/series index d8bed65aa2d..b6aef9167ac 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -12,3 +12,5 @@ vc_screen-don-t-clobber-return-value-in-vcs_read.patch md-flush-workqueue-md_rdev_misc_wq-in-md_alloc.patch scripts-tags.sh-invoke-realpath-via-xargs.patch scripts-tags.sh-fix-incompatibility-with-pcre2.patch +drm-virtio-fix-null-vs-is_err-checking-in-virtio_gpu_object_shmem_init.patch +drm-virtio-correct-drm_gem_shmem_get_sg_table-error-handling.patch