On 2013-08-20 10:00, Dan Carpenter wrote:
"devpriv" is non-NULL at this point.  We dereference it earlier in the
function and the inconsistent checking upsets static checkers.  We don't
need to check "devpriv->sprivs" because kfree() accepts NULL pointers.

Signed-off-by: Dan Carpenter <dan.carpen...@oracle.com>

diff --git a/drivers/staging/comedi/drivers/pcmuio.c 
b/drivers/staging/comedi/drivers/pcmuio.c
index f942455..a779062 100644
--- a/drivers/staging/comedi/drivers/pcmuio.c
+++ b/drivers/staging/comedi/drivers/pcmuio.c
@@ -676,8 +676,7 @@ static void pcmuio_detach(struct comedi_device *dev)
                if (devpriv->asics[i].irq)
                        free_irq(devpriv->asics[i].irq, dev);
        }
-       if (devpriv && devpriv->sprivs)
-               kfree(devpriv->sprivs);
+       kfree(devpriv->sprivs);
        comedi_legacy_detach(dev);
  }



Actually, the function is buggy anyway as devpriv might be NULL (pcmuio_detach() is called even if pcmuio_attach() returns an error).

So let's drop this patch and I'll post a patch to fix the bug.

--
-=( Ian Abbott @ MEV Ltd.    E-mail: <abbo...@mev.co.uk>        )=-
-=( Tel: +44 (0)161 477 1898   FAX: +44 (0)161 718 3587         )=-
_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to