From: H Hartley Sweeten Date: Fri, 20 Feb 2015 19:52:28 +0000 (-0700) Subject: staging: comedi: rtd520: remove unnecessary interrupt disable X-Git-Tag: firefly_0821_release~176^2~1998^2~138^2~752 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=b7d6b43b4d20cd5b8aa0e56fc1f9185837cd608a;p=firefly-linux-kernel-4.4.55.git staging: comedi: rtd520: remove unnecessary interrupt disable The read/write of the PLX_INTRCS_REG during the driver detach is not necessary. The rtd_reset() function writes 0 to this register which will disable all interrupts. This also fixes a dereference after null check reported by coverity. Reported-by: coverity (CID 751066) Signed-off-by: H Hartley Sweeten Reviewed-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/comedi/drivers/rtd520.c b/drivers/staging/comedi/drivers/rtd520.c index a7255d13775a..2688af7f3405 100644 --- a/drivers/staging/comedi/drivers/rtd520.c +++ b/drivers/staging/comedi/drivers/rtd520.c @@ -1299,12 +1299,8 @@ static void rtd_detach(struct comedi_device *dev) /* Shut down any board ops by resetting it */ if (dev->mmio && devpriv->lcfg) rtd_reset(dev); - if (dev->irq) { - writel(readl(devpriv->lcfg + PLX_INTRCS_REG) & - ~(ICS_PLIE | ICS_DMA0_E | ICS_DMA1_E), - devpriv->lcfg + PLX_INTRCS_REG); + if (dev->irq) free_irq(dev->irq, dev); - } if (dev->mmio) iounmap(dev->mmio); if (devpriv->las1)