Skip to content
  • Guennadi Liakhovetski's avatar
    fbdev: sh_mobile_lcdcfb: fix more error paths · 5ef6b505
    Guennadi Liakhovetski authored
    
    
    This patch fixes the following two erroneous error paths:
    
    hw_usecnt is allocated with a value of 0, therefore in an early error case,
    calling sh_mobile_lcdc_clk_off() will wrongly conclude, that hw_usecnt has
    already been incremented. Then sh_mobile_lcdc_runtime_suspend() will be called,
    which will access uninitialised data fields and crash the kernel.
    
    sh_mobile_lcdc_stop() can be called before framebuffer has been allocated, then
    ch->info is NULL and dereferencing it will Oops too.
    
    Signed-off-by: default avatarGuennadi Liakhovetski <g.liakhovetski@gmx.de>
    Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
    5ef6b505