Thread (3 messages) flat view 3 messages, 3 authors, 2021-12-20

Re: [PATCH] tty: timbuart: Check for null res pointer

From: Jiri Slaby <jirislaby@kernel.org>
Date: 2021-12-20 13:29:43
Also in: lkml

On 20. 12. 21, 9:21, Jiasheng Jiang wrote:
The return value of platform_get_resource() needs to be checked.
To avoid use of error pointer in case that there is no suitable
resource.

Fixes: ab4382d27412 ("tty: move drivers/serial/ to drivers/tty/serial/")
Barely.
quoted hunk ↗ jump to hunk
Signed-off-by: Jiasheng Jiang <redacted>
---
  drivers/tty/serial/timbuart.c | 9 +++++++--
  1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/drivers/tty/serial/timbuart.c b/drivers/tty/serial/timbuart.c
index 08941eabe7b1..262154d2f40f 100644
--- a/drivers/tty/serial/timbuart.c
+++ b/drivers/tty/serial/timbuart.c
@@ -312,9 +312,14 @@ static const char *timbuart_type(struct uart_port *port)
   */
  static void timbuart_release_port(struct uart_port *port)
  {
+	struct resource *res;
+	int size;
  	struct platform_device *pdev = to_platform_device(port->dev);
-	int size =
-		resource_size(platform_get_resource(pdev, IORESOURCE_MEM, 0));
+	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+	if (!res)
+		size = 0;
How can this happen and what happens when you pass zero size to 
release_mem_region?
+	else
+		size = resource_size(res);
  
  	if (port->flags & UPF_IOREMAP) {
  		iounmap(port->membase);

-- 
js
suse labs
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help