staging: comedi: adv_pci_dio: fix bug in 'detach'
authorH Hartley Sweeten <hartleys@visionengravers.com>
Sat, 18 Aug 2012 01:21:12 +0000 (18:21 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 4 Sep 2012 18:20:41 +0000 (11:20 -0700)
The 'attach' function can fail between when the devpriv and
the comedi subdevices are allocated. If it does the 'detach'
will try to access unallocated memory when it goes thru the
subdevices.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/drivers/adv_pci_dio.c

index 4da0e7bd204f39a7cce379baee3324a2bcec1e25..a4c1b13136bc06ea2e9f75ac5bc0bb536e31d573 100644 (file)
@@ -1184,6 +1184,8 @@ static void pci_dio_detach(struct comedi_device *dev)
        if (devpriv) {
                if (devpriv->valid)
                        pci_dio_reset(dev);
+       }
+       if (dev->subdevices) {
                for (i = 0; i < dev->n_subdevices; i++) {
                        s = dev->subdevices + i;
                        if (s->type == COMEDI_SUBD_DIO)
This page took 0.025424 seconds and 5 git commands to generate.