[PATCH] crash in aty128_set_lcd_enable() on PowerBook
authorOlaf Hering <olh@suse.de>
Sat, 5 Aug 2006 19:13:59 +0000 (12:13 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sun, 6 Aug 2006 15:57:46 +0000 (08:57 -0700)
commitc3760ae1f914cf4479301a92c58ae65824ac5894
treeda42f8816a171f8a67583c55d1551518e2c3e001
parent06fa45d3a19c6fbfccbf295e9f08087492338631
[PATCH] crash in aty128_set_lcd_enable() on PowerBook

Current Linus tree crashes in aty128_set_lcd_enable() because par->pdev
is NULL. This happens since at least a week. Call trace is:

aty128_set_lcd_enable
aty128fb_set_par
fbcon_init
visual_init
take_over_console
fbcon_takeover
notifier_call_chain
blocking_notifier_call_chain
register_framebuffer
aty128fb_probe
pci_device_probe
bus_for_each_dev
driver_attach
bus_add_driver
driver_register
__pci_register_driver
aty128fb_init
init
kernel_thread

- info->fix was assigned twice.

- par->vram_size is assigned in aty128_probe(), no need to redo it again
  in aty128_init()

- register_framebuffer() uses uninitialized struct members, move it past
  par->pdev assignment and past aty128_bl_init().

Signed-off-by: Olaf Hering <olh@suse.de>
Acked-by: Antonino Daplas <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/video/aty/aty128fb.c