From: Florian T. S. <Flo...@gm...> - 2009-08-14 19:46:33
|
viafb: fix ioremap_nocache error handling Correct the returned error code for remapping the video framebuffer. Introduce error handling for remapping MMIO register address space to avoid a NULL pointer dereference. Disable hardware acceleration if remapping MMIO register address space failed as those registers are only used for hardware acceleration. Signed-off-by: Florian Tobias Schandinat <Flo...@gm...> --- viafbdev.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/drivers/video/via/viafbdev.c b/drivers/video/via/viafbdev.c index 743eed4..72759b6 100644 --- a/drivers/video/via/viafbdev.c +++ b/drivers/video/via/viafbdev.c @@ -2134,12 +2134,16 @@ static int __devinit via_pci_probe(void) if (!viaparinfo->fbmem_virt) { printk(KERN_INFO "ioremap failed\n"); - return -1; + return -ENOMEM; } viafb_get_mmio_info(&viaparinfo->mmio_base, &viaparinfo->mmio_len); viaparinfo->io_virt = ioremap_nocache(viaparinfo->mmio_base, viaparinfo->mmio_len); + if (!viaparinfo->io_virt) { + printk(KERN_WARNING "ioremap failed: hardware acceleration disabled\n"); + viafb_accel = 0; + } viafbinfo->node = 0; viafbinfo->fbops = &viafb_ops; -- 1.6.3.2 |