[PATCH 03/59] drm/vboxvideo: Use devm_drm_dev_alloc

Sam Ravnborg sam at ravnborg.org
Fri Apr 24 16:33:57 UTC 2020


On Wed, Apr 15, 2020 at 09:39:38AM +0200, Daniel Vetter wrote:
> Straightforward conversion.
> 
> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> Cc: Hans de Goede <hdegoede at redhat.com>
Acked-by: Sam Ravnborg <sam at ravnborg.org>
> ---
>  drivers/gpu/drm/vboxvideo/vbox_drv.c | 19 +++++--------------
>  1 file changed, 5 insertions(+), 14 deletions(-)
> 
> diff --git a/drivers/gpu/drm/vboxvideo/vbox_drv.c b/drivers/gpu/drm/vboxvideo/vbox_drv.c
> index 282348e071fe..7dd25c7a3768 100644
> --- a/drivers/gpu/drm/vboxvideo/vbox_drv.c
> +++ b/drivers/gpu/drm/vboxvideo/vbox_drv.c
> @@ -46,25 +46,19 @@ static int vbox_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
>  	if (ret)
>  		return ret;
>  
> -	vbox = kzalloc(sizeof(*vbox), GFP_KERNEL);
> -	if (!vbox)
> -		return -ENOMEM;
> -
> -	ret = drm_dev_init(&vbox->ddev, &driver, &pdev->dev);
> -	if (ret) {
> -		kfree(vbox);
> -		return ret;
> -	}
> +	vbox = devm_drm_dev_alloc(&pdev->dev, &driver,
> +				  struct vbox_private, ddev);
> +	if (IS_ERR(vbox))
> +		return PTR_ERR(vbox);
>  
>  	vbox->ddev.pdev = pdev;
>  	vbox->ddev.dev_private = vbox;
>  	pci_set_drvdata(pdev, vbox);
> -	drmm_add_final_kfree(&vbox->ddev, vbox);
>  	mutex_init(&vbox->hw_mutex);
>  
>  	ret = pci_enable_device(pdev);
>  	if (ret)
> -		goto err_dev_put;
> +		return ret;
>  
>  	ret = vbox_hw_init(vbox);
>  	if (ret)
> @@ -100,8 +94,6 @@ static int vbox_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
>  	vbox_hw_fini(vbox);
>  err_pci_disable:
>  	pci_disable_device(pdev);
> -err_dev_put:
> -	drm_dev_put(&vbox->ddev);
>  	return ret;
>  }
>  
> @@ -114,7 +106,6 @@ static void vbox_pci_remove(struct pci_dev *pdev)
>  	vbox_mode_fini(vbox);
>  	vbox_mm_fini(vbox);
>  	vbox_hw_fini(vbox);
> -	drm_dev_put(&vbox->ddev);
>  }
>  
>  #ifdef CONFIG_PM_SLEEP
> -- 
> 2.25.1
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel


More information about the dri-devel mailing list