[Intel-gfx] [PATCH 09/44] drm/vboxvidoe: use managed pci functions
Sam Ravnborg
sam at ravnborg.org
Wed Apr 8 07:21:46 UTC 2020
On Fri, Apr 03, 2020 at 03:57:53PM +0200, Daniel Vetter wrote:
> Allows us to drop the cleanup code on the floor.
>
> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> Cc: Hans de Goede <hdegoede at redhat.com>
With this change we avoid calling pci_disable_device()
twise in case vbox_mm_init() fails.
Once in vbox_hw_fini() and once in the error path.
Which is just a small extra bonus.
Acked-by: Sam Ravnborg <sam at ravnborg.org>
> ---
> drivers/gpu/drm/vboxvideo/vbox_drv.c | 6 ++----
> drivers/gpu/drm/vboxvideo/vbox_main.c | 7 +------
> 2 files changed, 3 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/gpu/drm/vboxvideo/vbox_drv.c b/drivers/gpu/drm/vboxvideo/vbox_drv.c
> index d34cddd809fd..c80695c2f6c0 100644
> --- a/drivers/gpu/drm/vboxvideo/vbox_drv.c
> +++ b/drivers/gpu/drm/vboxvideo/vbox_drv.c
> @@ -55,13 +55,13 @@ static int vbox_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
> pci_set_drvdata(pdev, vbox);
> mutex_init(&vbox->hw_mutex);
>
> - ret = pci_enable_device(pdev);
> + ret = pcim_enable_device(pdev);
> if (ret)
> return ret;
>
> ret = vbox_hw_init(vbox);
> if (ret)
> - goto err_pci_disable;
> + return ret;
>
> ret = vbox_mm_init(vbox);
> if (ret)
> @@ -93,8 +93,6 @@ static int vbox_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
> vbox_mm_fini(vbox);
> err_hw_fini:
> vbox_hw_fini(vbox);
> -err_pci_disable:
> - pci_disable_device(pdev);
> return ret;
> }
>
> diff --git a/drivers/gpu/drm/vboxvideo/vbox_main.c b/drivers/gpu/drm/vboxvideo/vbox_main.c
> index 9dcab115a261..1336ab9795fc 100644
> --- a/drivers/gpu/drm/vboxvideo/vbox_main.c
> +++ b/drivers/gpu/drm/vboxvideo/vbox_main.c
> @@ -71,8 +71,6 @@ static void vbox_accel_fini(struct vbox_private *vbox)
>
> for (i = 0; i < vbox->num_crtcs; ++i)
> vbva_disable(&vbox->vbva_info[i], vbox->guest_pool, i);
> -
> - pci_iounmap(vbox->ddev.pdev, vbox->vbva_buffers);
> }
>
> /* Do we support the 4.3 plus mode hint reporting interface? */
> @@ -125,7 +123,7 @@ int vbox_hw_init(struct vbox_private *vbox)
> /* Create guest-heap mem-pool use 2^4 = 16 byte chunks */
> vbox->guest_pool = gen_pool_create(4, -1);
> if (!vbox->guest_pool)
> - goto err_unmap_guest_heap;
> + return -ENOMEM;
>
> ret = gen_pool_add_virt(vbox->guest_pool,
> (unsigned long)vbox->guest_heap,
> @@ -168,8 +166,6 @@ int vbox_hw_init(struct vbox_private *vbox)
>
> err_destroy_guest_pool:
> gen_pool_destroy(vbox->guest_pool);
> -err_unmap_guest_heap:
> - pci_iounmap(vbox->ddev.pdev, vbox->guest_heap);
> return ret;
> }
>
> @@ -177,5 +173,4 @@ void vbox_hw_fini(struct vbox_private *vbox)
> {
> vbox_accel_fini(vbox);
> gen_pool_destroy(vbox->guest_pool);
> - pci_iounmap(vbox->ddev.pdev, vbox->guest_heap);
> }
> --
> 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 Intel-gfx
mailing list