DMA is optional with this driver. If it was not enabled the devpriv->dma
pointer will be NULL. It's probably harmless here because the 'desc' pointer
will not be used if DMA is disabled. But, fix the possible NULL pointer
dereference.

Signed-off-by: H Hartley Sweeten <hswee...@visionengravers.com>
Cc: Ian Abbott <abbo...@mev.co.uk>
Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org>
---
 drivers/staging/comedi/drivers/das1800.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/comedi/drivers/das1800.c 
b/drivers/staging/comedi/drivers/das1800.c
index d8f4e3f..ceecfb2 100644
--- a/drivers/staging/comedi/drivers/das1800.c
+++ b/drivers/staging/comedi/drivers/das1800.c
@@ -783,13 +783,14 @@ static void das1800_ai_setup_dma(struct comedi_device 
*dev,
 {
        struct das1800_private *devpriv = dev->private;
        struct comedi_isadma *dma = devpriv->dma;
-       struct comedi_isadma_desc *desc = &dma->desc[0];
+       struct comedi_isadma_desc *desc;
        unsigned int bytes;
 
        if ((devpriv->irq_dma_bits & DMA_ENABLED) == 0)
                return;
 
        dma->cur_dma = 0;
+       desc = &dma->desc[0];
 
        /* determine a dma transfer size to fill buffer in 0.3 sec */
        bytes = das1800_ai_transfer_size(dev, s, desc->maxsize, 300000000);
-- 
2.6.3

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to