]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
[media] dm1105: Remove unnecessary synchronize_irq() before free_irq()
authorLars-Peter Clausen <lars@metafoo.de>
Sat, 21 Nov 2015 11:16:38 +0000 (09:16 -0200)
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>
Thu, 3 Dec 2015 17:09:28 +0000 (15:09 -0200)
Calling synchronize_irq() right before free_irq() is quite useless. On one
hand the IRQ can easily fire again before free_irq() is entered, on the
other hand free_irq() itself calls synchronize_irq() internally (in a race
condition free way), before any state associated with the IRQ is freed.

Patch was generated using the following semantic patch:
// <smpl>
@@
expression irq;
@@
-synchronize_irq(irq);
 free_irq(irq, ...);
// </smpl>

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
drivers/media/pci/dm1105/dm1105.c

index 88915fb87e80d7dc5a3b6cd193d36cdcee409ce1..5dd504741b12c9f33959185eb340cfa305d7cba1 100644 (file)
@@ -1206,7 +1206,6 @@ static void dm1105_remove(struct pci_dev *pdev)
        i2c_del_adapter(&dev->i2c_adap);
 
        dm1105_hw_exit(dev);
-       synchronize_irq(pdev->irq);
        free_irq(pdev->irq, dev);
        pci_iounmap(pdev, dev->io_mem);
        pci_release_regions(pdev);