]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
qxl: Call qxl_gem_{init, fini}
authorChristophe Fergeau <cfergeau@redhat.com>
Tue, 8 Nov 2016 09:12:06 +0000 (10:12 +0100)
committerGerd Hoffmann <kraxel@redhat.com>
Tue, 15 Nov 2016 08:45:32 +0000 (09:45 +0100)
qdev->gem.objects was initialized directly in qxl_device_init() rather
than going through qxl_gem_init(), and qxl_gem_fini() was never called.

Signed-off-by: Christophe Fergeau <cfergeau@redhat.com>
Message-id: 20161108091209.25568-5-cfergeau@redhat.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
drivers/gpu/drm/qxl/qxl_kms.c

index e642242728c0b236caa0b066786f6b26cd6c8cb3..af685f1d91f8219f783af62db821f33bf684636e 100644 (file)
@@ -131,7 +131,7 @@ static int qxl_device_init(struct qxl_device *qdev,
        mutex_init(&qdev->update_area_mutex);
        mutex_init(&qdev->release_mutex);
        mutex_init(&qdev->surf_evict_mutex);
-       INIT_LIST_HEAD(&qdev->gem.objects);
+       qxl_gem_init(qdev);
 
        qdev->rom_base = pci_resource_start(pdev, 2);
        qdev->rom_size = pci_resource_len(pdev, 2);
@@ -273,6 +273,7 @@ static void qxl_device_fini(struct qxl_device *qdev)
        qxl_ring_free(qdev->command_ring);
        qxl_ring_free(qdev->cursor_ring);
        qxl_ring_free(qdev->release_ring);
+       qxl_gem_fini(qdev);
        qxl_bo_fini(qdev);
        io_mapping_free(qdev->surface_mapping);
        io_mapping_free(qdev->vram_mapping);