Re: [PATCH] virtio: console: fix error handling in init() function

From: Amit Shah
Date: Sun Sep 09 2012 - 16:19:58 EST


Hi Alexey,

On (Sat) 01 Sep 2012 [23:49:37], Alexey Khoroshilov wrote:
> If register_virtio_driver() fails, virtio-ports class is not destroyed.
> The patch adds error handling of register_virtio_driver().
>
> Found by Linux Driver Verification project (linuxtesting.org).
>
> Signed-off-by: Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
> ---
> drivers/char/virtio_console.c | 12 +++++++++++-
> 1 file changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/char/virtio_console.c b/drivers/char/virtio_console.c
> index cdf2f54..060a672 100644
> --- a/drivers/char/virtio_console.c
> +++ b/drivers/char/virtio_console.c
> @@ -1941,7 +1941,17 @@ static int __init init(void)
> INIT_LIST_HEAD(&pdrvdata.consoles);
> INIT_LIST_HEAD(&pdrvdata.portdevs);
>
> - return register_virtio_driver(&virtio_console);
> + err = register_virtio_driver(&virtio_console);
> + if (err < 0) {
> + pr_err("Error %d registering virtio driver\n", err);
> + goto free;
> + }
> + return 0;
> +free:
> + if (pdrvdata.debugfs_dir)
> + debugfs_remove_recursive(pdrvdata.debugfs_dir);
> + class_destroy(pdrvdata.class);
> + return err;
> }
>
> static void __exit fini(void)

Patch looks good.

Acked-by: Amit Shah <amit.shah@xxxxxxxxxx>

Rusty, please pick this up.

Thanks,
Amit
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/