diff options
author | Jonathan Corbet <corbet@lwn.net> | 2010-03-27 00:45:39 +0300 |
---|---|---|
committer | Jonathan Corbet <corbet@lwn.net> | 2010-04-21 00:23:18 +0400 |
commit | 1b1f8cd299d3c5a90c2ec1c24c271a0b536e5891 (patch) | |
tree | 201d87dfb84587e9c19f1eac2157185e395fb578 /drivers | |
parent | b72a5070c74f5ca9a45a03c2d625daab66d0a820 (diff) | |
download | linux-1b1f8cd299d3c5a90c2ec1c24c271a0b536e5891.tar.xz |
viafb: Unmap the frame buffer on initialization error
This was part of Harald's "make viafb a first-class citizen using
pci_driver" patch, but somehow got dropped when that patch went into
mainline.
Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Cc: ScottFang@viatech.com.cn
Cc: JosephChan@via.com.tw
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/via/viafbdev.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/video/via/viafbdev.c b/drivers/video/via/viafbdev.c index 8af405bf077b..8955ab4caac8 100644 --- a/drivers/video/via/viafbdev.c +++ b/drivers/video/via/viafbdev.c @@ -1870,7 +1870,7 @@ static int __devinit via_pci_probe(struct pci_dev *pdev, printk(KERN_ERR "allocate the second framebuffer struct error\n"); rc = -ENOMEM; - goto out_delete_i2c; + goto out_unmap_screen; } viaparinfo1 = viafbinfo1->par; memcpy(viaparinfo1, viaparinfo, viafb_par_length); @@ -1961,6 +1961,8 @@ out_dealloc_cmap: out_fb1_release: if (viafbinfo1) framebuffer_release(viafbinfo1); +out_unmap_screen: + iounmap(viafbinfo->screen_base); out_delete_i2c: viafb_delete_i2c_buss(viaparinfo); out_fb_release: |