From cf1bc247ba29acfdb8bdc3d6c35ca3e2ddcdcac8 Mon Sep 17 00:00:00 2001 From: Jeff Garzik Date: Sat, 9 Dec 2006 10:50:22 +1100 Subject: [PATCH] --- yaml --- r: 44739 b: refs/heads/master c: 2c3f0eddfbd7f5c7a5450de287bad805722888c3 h: refs/heads/master i: 44737: 74aa4883facaa88e691db6c681b6ba88fde31733 44735: ae25ddfad04c996457081b44d3185a05ac264fe3 v: v3 --- [refs] | 2 +- trunk/drivers/char/drm/drm_stub.c | 12 ++++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 07667628fc68..c1919afd49d1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 94f060bd0f78814f4daf8c7942bd710af52c7d6f +refs/heads/master: 2c3f0eddfbd7f5c7a5450de287bad805722888c3 diff --git a/trunk/drivers/char/drm/drm_stub.c b/trunk/drivers/char/drm/drm_stub.c index 5fd6dc0870cf..120d10256feb 100644 --- a/trunk/drivers/char/drm/drm_stub.c +++ b/trunk/drivers/char/drm/drm_stub.c @@ -211,14 +211,16 @@ int drm_get_dev(struct pci_dev *pdev, const struct pci_device_id *ent, if (!dev) return -ENOMEM; - pci_enable_device(pdev); + ret = pci_enable_device(pdev); + if (ret) + goto err_g1; if ((ret = drm_fill_in_dev(dev, pdev, ent, driver))) { printk(KERN_ERR "DRM: Fill_in_dev failed.\n"); - goto err_g1; + goto err_g2; } if ((ret = drm_get_head(dev, &dev->primary))) - goto err_g1; + goto err_g2; DRM_INFO("Initialized %s %d.%d.%d %s on minor %d\n", driver->name, driver->major, driver->minor, driver->patchlevel, @@ -226,7 +228,9 @@ int drm_get_dev(struct pci_dev *pdev, const struct pci_device_id *ent, return 0; - err_g1: +err_g2: + pci_disable_device(pdev); +err_g1: drm_free(dev, sizeof(*dev), DRM_MEM_STUB); return ret; }