Hi

Am 03.02.21 um 14:16 schrieb Gerd Hoffmann:
In case we have a shadow surface on shutdown release
it so it doesn't leak.

Signed-off-by: Gerd Hoffmann <kra...@redhat.com>
---
  drivers/gpu/drm/qxl/qxl_display.c | 4 ++++
  1 file changed, 4 insertions(+)

diff --git a/drivers/gpu/drm/qxl/qxl_display.c 
b/drivers/gpu/drm/qxl/qxl_display.c
index 38d6b596094d..60331e31861a 100644
--- a/drivers/gpu/drm/qxl/qxl_display.c
+++ b/drivers/gpu/drm/qxl/qxl_display.c
@@ -1229,5 +1229,9 @@ int qxl_modeset_init(struct qxl_device *qdev)
void qxl_modeset_fini(struct qxl_device *qdev)
  {
+       if (qdev->dumb_shadow_bo) {
+               drm_gem_object_put(&qdev->dumb_shadow_bo->tbo.base);
+               qdev->dumb_shadow_bo = NULL;
+       }

In qxl_plane_prepare_fb(), qdev->dumb_shadow_bo is being created as pinned object. Wouldn't it have to be unpinned here and during the release in qxl_plane_prepare_fb()?

Best regards
Thomas

        qxl_destroy_monitors_object(qdev);
  }


--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

Reply via email to