On Wed, Apr 08, 2020 at 09:21:46AM +0200, Sam Ravnborg wrote:
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@intel.com Cc: Hans de Goede hdegoede@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.
Yup, I forgot to mention this in the commit message. I've added your remark here as a quote, thanks for checking stuff in detail. -Daniel
Which is just a small extra bonus.
Acked-by: Sam Ravnborg sam@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@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel