[media] drivers/media/radio/radio-timb.c: use devm_ functions
The various devm_ functions allocate memory that is released when a driver detaches. This patch uses these functions for data that is allocated in the probe function of a platform device and is only freed in the remove function. Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Родитель
95aeead28a
Коммит
2f20c490aa
|
@ -157,7 +157,7 @@ static int __devinit timbradio_probe(struct platform_device *pdev)
|
|||
goto err;
|
||||
}
|
||||
|
||||
tr = kzalloc(sizeof(*tr), GFP_KERNEL);
|
||||
tr = devm_kzalloc(&pdev->dev, sizeof(*tr), GFP_KERNEL);
|
||||
if (!tr) {
|
||||
err = -ENOMEM;
|
||||
goto err;
|
||||
|
@ -177,7 +177,7 @@ static int __devinit timbradio_probe(struct platform_device *pdev)
|
|||
strlcpy(tr->v4l2_dev.name, DRIVER_NAME, sizeof(tr->v4l2_dev.name));
|
||||
err = v4l2_device_register(NULL, &tr->v4l2_dev);
|
||||
if (err)
|
||||
goto err_v4l2_dev;
|
||||
goto err;
|
||||
|
||||
tr->video_dev.v4l2_dev = &tr->v4l2_dev;
|
||||
|
||||
|
@ -195,8 +195,6 @@ static int __devinit timbradio_probe(struct platform_device *pdev)
|
|||
err_video_req:
|
||||
video_device_release_empty(&tr->video_dev);
|
||||
v4l2_device_unregister(&tr->v4l2_dev);
|
||||
err_v4l2_dev:
|
||||
kfree(tr);
|
||||
err:
|
||||
dev_err(&pdev->dev, "Failed to register: %d\n", err);
|
||||
|
||||
|
@ -212,8 +210,6 @@ static int __devexit timbradio_remove(struct platform_device *pdev)
|
|||
|
||||
v4l2_device_unregister(&tr->v4l2_dev);
|
||||
|
||||
kfree(tr);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче