Message ID | 17fbadcd7f353348afa4c56f92e0423c5b9708df.1241812369.git.lilja.magnus@gmail.com |
---|---|
State | Accepted |
Commit | b258fd8d0470c65fef5231887d7e97cb246da0d0 |
Headers | show |
Artem, Can you pickup this one aswell? Sascha On Fri, May 08, 2009 at 09:57:47PM +0200, Magnus Lilja wrote: > Make sure to pass the same dev_id data to free_irq() that was > used when calling request_irq(), otherwise we get a warning about > freeing an already free IRQ. > > Signed-off-by: Magnus Lilja <lilja.magnus@gmail.com> > --- > > For -rc perhaps? > > Got the following warning prior to fixing this: > WARNING: at /opt/git/linux-2.6/kernel/irq/manage.c:736 __free_irq+0x88/ > 0x1ac() > Trying to free already-free IRQ 33 > Modules linked in: mxc_nand(-) > [<c0025660>] (unwind_backtrace+0x0/0xd4) from [<c0036860>] (warn_slowpath+0x68/0 > x8c) > [<c0036860>] (warn_slowpath+0x68/0x8c) from [<c0060324>] (__free_irq+0x88/0x1ac) > [<c0060324>] (__free_irq+0x88/0x1ac) from [<c0060454>] (free_irq+0xc/0x18) > [<c0060454>] (free_irq+0xc/0x18) from [<bf000c24>] (mxcnd_remove+0x30/0x48 [mxc_ > nand]) > unwind: Index not found bf000c24 > > drivers/mtd/nand/mxc_nand.c | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c > index f3548d0..8a93913 100644 > --- a/drivers/mtd/nand/mxc_nand.c > +++ b/drivers/mtd/nand/mxc_nand.c > @@ -981,7 +981,7 @@ static int __init mxcnd_probe(struct platform_device *pdev) > return 0; > > escan: > - free_irq(host->irq, NULL); > + free_irq(host->irq, host); > eirq: > iounmap(host->regs); > eres: > @@ -1001,7 +1001,7 @@ static int __devexit mxcnd_remove(struct platform_device *pdev) > platform_set_drvdata(pdev, NULL); > > nand_release(&host->mtd); > - free_irq(host->irq, NULL); > + free_irq(host->irq, host); > iounmap(host->regs); > kfree(host); > > -- > 1.5.6 > >
On Fri, 2009-05-08 at 21:57 +0200, Magnus Lilja wrote: > Make sure to pass the same dev_id data to free_irq() that was > used when calling request_irq(), otherwise we get a warning about > freeing an already free IRQ. > > Signed-off-by: Magnus Lilja <lilja.magnus@gmail.com> Taken to l2-mtd-2.6.git
On Thu, 2009-05-14 at 09:53 +0200, Sascha Hauer wrote: > Artem, > > Can you pickup this one aswell? Done.
diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c index f3548d0..8a93913 100644 --- a/drivers/mtd/nand/mxc_nand.c +++ b/drivers/mtd/nand/mxc_nand.c @@ -981,7 +981,7 @@ static int __init mxcnd_probe(struct platform_device *pdev) return 0; escan: - free_irq(host->irq, NULL); + free_irq(host->irq, host); eirq: iounmap(host->regs); eres: @@ -1001,7 +1001,7 @@ static int __devexit mxcnd_remove(struct platform_device *pdev) platform_set_drvdata(pdev, NULL); nand_release(&host->mtd); - free_irq(host->irq, NULL); + free_irq(host->irq, host); iounmap(host->regs); kfree(host);
Make sure to pass the same dev_id data to free_irq() that was used when calling request_irq(), otherwise we get a warning about freeing an already free IRQ. Signed-off-by: Magnus Lilja <lilja.magnus@gmail.com> --- For -rc perhaps? Got the following warning prior to fixing this: WARNING: at /opt/git/linux-2.6/kernel/irq/manage.c:736 __free_irq+0x88/ 0x1ac() Trying to free already-free IRQ 33 Modules linked in: mxc_nand(-) [<c0025660>] (unwind_backtrace+0x0/0xd4) from [<c0036860>] (warn_slowpath+0x68/0 x8c) [<c0036860>] (warn_slowpath+0x68/0x8c) from [<c0060324>] (__free_irq+0x88/0x1ac) [<c0060324>] (__free_irq+0x88/0x1ac) from [<c0060454>] (free_irq+0xc/0x18) [<c0060454>] (free_irq+0xc/0x18) from [<bf000c24>] (mxcnd_remove+0x30/0x48 [mxc_ nand]) unwind: Index not found bf000c24 drivers/mtd/nand/mxc_nand.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)