metronomefb: don't free firmware twice in error path
Right now, if request_irq or anthing after it fails than we free the firmware for the second time what might end bad :) Signed-off-by: Sebastian Siewior <sebastian@breakpoint.cc> Acked-by: Jaya Kumar <jayakumar.lkml@gmail.com> Cc: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
03c33a4f00
commit
2422fbba06
1 changed files with 3 additions and 5 deletions
|
@ -671,14 +671,14 @@ static int __devinit metronomefb_probe(struct platform_device *dev)
|
|||
|
||||
retval = load_waveform((u8 *) fw_entry->data, fw_entry->size,
|
||||
par->metromem_wfm, 3, 31, &par->frame_count);
|
||||
release_firmware(fw_entry);
|
||||
if (retval < 0) {
|
||||
printk(KERN_ERR "metronomefb: couldn't process waveform\n");
|
||||
goto err_ld_wfm;
|
||||
goto err_dma_free;
|
||||
}
|
||||
release_firmware(fw_entry);
|
||||
|
||||
if (board->setup_irq(info))
|
||||
goto err_ld_wfm;
|
||||
goto err_dma_free;
|
||||
|
||||
retval = metronome_init_regs(par);
|
||||
if (retval < 0)
|
||||
|
@ -719,8 +719,6 @@ static int __devinit metronomefb_probe(struct platform_device *dev)
|
|||
framebuffer_release(info);
|
||||
err_free_irq:
|
||||
board->free_irq(info);
|
||||
err_ld_wfm:
|
||||
release_firmware(fw_entry);
|
||||
err_dma_free:
|
||||
dma_free_writecombine(&dev->dev, par->metromemsize, par->metromem,
|
||||
par->metromem_dma);
|
||||
|
|
Loading…
Reference in a new issue