A call of the function ¡°do_take_over_console¡± can fail here.
The corresponding system resources were not released then.
Thus add a call of the function ¡°iounmap¡± together with the check
of a failure predicate.

Fixes: e84de0c6190503 ("MIPS: GIO bus support for SGI IP22/28")
CC: Andy Shevchenko <andy.shevche...@gmail.com>
Signed-off-by: Dejin Zheng <zhengdej...@gmail.com>
---
v1 -> v2:
        - modify the commit comments by Markus'suggestion.

 drivers/video/console/newport_con.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/video/console/newport_con.c 
b/drivers/video/console/newport_con.c
index 00dddf6e08b0..6bfc8e3ffd4a 100644
--- a/drivers/video/console/newport_con.c
+++ b/drivers/video/console/newport_con.c
@@ -720,6 +720,9 @@ static int newport_probe(struct gio_device *dev,
        console_lock();
        err = do_take_over_console(&newport_con, 0, MAX_NR_CONSOLES - 1, 1);
        console_unlock();
+
+       if (err)
+               iounmap((void *)npregs);
        return err;
 }
 
-- 
2.25.0

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to