tty: goldfish: Use tty_port_destroy() to destroy port
[ Upstream commit507b05063d] In goldfish_tty_probe(), the port initialized through tty_port_init() should be destroyed in error paths.In goldfish_tty_remove(), qtty->port also should be destroyed or else might leak resources. Fix the above by calling tty_port_destroy(). Fixes:666b7793d4("goldfish: tty driver") Reviewed-by: Jiri Slaby <jirislaby@kernel.org> Signed-off-by: Wang Weiyang <wangweiyang2@huawei.com> Link: https://lore.kernel.org/r/20220328115844.86032-1-wangweiyang2@huawei.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
56ac04f35f
commit
ee6c33b29e
@@ -407,6 +407,7 @@ static int goldfish_tty_probe(struct platform_device *pdev)
|
||||
err_tty_register_device_failed:
|
||||
free_irq(irq, qtty);
|
||||
err_dec_line_count:
|
||||
tty_port_destroy(&qtty->port);
|
||||
goldfish_tty_current_line_count--;
|
||||
if (goldfish_tty_current_line_count == 0)
|
||||
goldfish_tty_delete_driver();
|
||||
@@ -428,6 +429,7 @@ static int goldfish_tty_remove(struct platform_device *pdev)
|
||||
iounmap(qtty->base);
|
||||
qtty->base = NULL;
|
||||
free_irq(qtty->irq, pdev);
|
||||
tty_port_destroy(&qtty->port);
|
||||
goldfish_tty_current_line_count--;
|
||||
if (goldfish_tty_current_line_count == 0)
|
||||
goldfish_tty_delete_driver();
|
||||
|
||||
Reference in New Issue
Block a user