> Current code does not properly free allocated irqs if request_threaded_irq > returns error, fix it. > > Signed-off-by: Axel Lin Thanks for pointing that out. Acked-by: MyungJoo Ham > --- > drivers/misc/max8997-muic.c | 6 ++---- > 1 files changed, 2 insertions(+), 4 deletions(-) > > diff --git a/drivers/misc/max8997-muic.c b/drivers/misc/max8997-muic.c > index 74a9448..409b7fc 100644 > --- a/drivers/misc/max8997-muic.c > +++ b/drivers/misc/max8997-muic.c > @@ -566,10 +566,6 @@ static int __devinit max8997_muic_probe(struct platform_device *pdev) > "failed: irq request (IRQ: %d," > " error :%d)\n", > muic_irq->irq, ret); > - > - for (i = i - 1; i >= 0; i--) > - free_irq(muic_irq->irq, info); > - > goto err_irq; > } > } > @@ -583,6 +579,8 @@ static int __devinit max8997_muic_probe(struct platform_device *pdev) > return ret; > > err_irq: > + while (--i >= 0) > + free_irq(pdata->irq_base + muic_irqs[i].irq, info); > sysfs_remove_group(&pdev->dev.kobj, &max8997_muic_group); > err_sysfs: > err_pdata: > -- > 1.7.5.4 {.n++%ݶw{.n+{G{ayʇڙ,jfhz_(階ݢj"mG?&~iOzv^m ?I