OSDN Git Service

staging: comedi: ii_pci20kc: fix usage of uninit scalar in ii20k_attach()
authorChristian Engelmayer <cengelma@gmx.at>
Wed, 7 May 2014 19:45:52 +0000 (21:45 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 23 May 2014 12:28:16 +0000 (21:28 +0900)
This driver supports the PCI-20001C-1a and PCI-20001C-2a carrier boards.
The -2a version has 32 on-board DIO channels. In case this variant is
detected, local variable 'has_dio' is set accordingly. Otherwise it is
left uninitialized and the following subdevice instantiation depends on
the stack. Detected by Coverity - CID 1077830.

Signed-off-by: Christian Engelmayer <cengelma@gmx.at>
Reviewed-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/drivers/ii_pci20kc.c

index 3558ab3..2516ce8 100644 (file)
@@ -461,6 +461,7 @@ static int ii20k_attach(struct comedi_device *dev,
        id = readb(devpriv->ioaddr + II20K_ID_REG);
        switch (id & II20K_ID_MASK) {
        case II20K_ID_PCI20001C_1A:
+               has_dio = false;
                break;
        case II20K_ID_PCI20001C_2A:
                has_dio = true;