OSDN Git Service

drm/qxl: Complete exception handling in qxl_device_init()
authorMarkus Elfring <elfring@users.sourceforge.net>
Thu, 7 Nov 2019 17:05:08 +0000 (18:05 +0100)
committerGerd Hoffmann <kraxel@redhat.com>
Fri, 29 Nov 2019 12:09:11 +0000 (13:09 +0100)
A coccicheck run provided information like the following.

drivers/gpu/drm/qxl/qxl_kms.c:295:1-7: ERROR: missing iounmap;
ioremap on line 178 and execution via conditional on line 185

Generated by: scripts/coccinelle/free/iounmap.cocci

A jump target was specified in an if branch. The corresponding function
call did not release the desired system resource then.
Thus use the label “rom_unmap” instead to fix the exception handling
for this function implementation.

Fixes: 5043348a4969ae1661c008efe929abd0d76e3792 ("drm: qxl: Fix error handling at qxl_device_init")
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Link: http://patchwork.freedesktop.org/patch/msgid/5e5ef9c4-4d85-3c93-cf28-42cfcb5b0649@web.de
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
drivers/gpu/drm/qxl/qxl_kms.c

index 611cbe7..bfc1631 100644 (file)
@@ -184,7 +184,7 @@ int qxl_device_init(struct qxl_device *qdev,
 
        if (!qxl_check_device(qdev)) {
                r = -ENODEV;
-               goto surface_mapping_free;
+               goto rom_unmap;
        }
 
        r = qxl_bo_init(qdev);