Skip to content

Commit

Permalink
serial: vt8500: ioremap'd resource is never freed
Browse files Browse the repository at this point in the history
Memory mapped via ioremap call is never released. Rather than add an
iounmap call, change allocation function to devm_request_and_ioremap.

Also, change the error on failure for this call to -EADDRNOTAVAIL rather than
-ENOMEM.

Signed-off-by: Tony Prisk <linux@prisktech.co.nz>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Tony Prisk authored and Greg Kroah-Hartman committed Jan 18, 2013
1 parent 27dd2e0 commit 4053036
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions drivers/tty/serial/vt8500_serial.c
Original file line number Diff line number Diff line change
Expand Up @@ -606,9 +606,9 @@ static int vt8500_serial_probe(struct platform_device *pdev)
snprintf(vt8500_port->name, sizeof(vt8500_port->name),
"VT8500 UART%d", pdev->id);

vt8500_port->uart.membase = ioremap(mmres->start, resource_size(mmres));
vt8500_port->uart.membase = devm_request_and_ioremap(&pdev->dev, mmres);
if (!vt8500_port->uart.membase) {
ret = -ENOMEM;
ret = -EADDRNOTAVAIL;
goto err;
}

Expand Down

0 comments on commit 4053036

Please sign in to comment.