]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
spi: More sanity checks for transfers
authorMark Brown <broonie@linaro.org>
Wed, 10 Jul 2013 14:05:40 +0000 (15:05 +0100)
committerLothar Waßmann <LW@KARO-electronics.de>
Mon, 16 Jun 2014 16:03:08 +0000 (18:03 +0200)
Check that transfers are non-empty and that there is a completion for
them.

Signed-off-by: Mark Brown <broonie@linaro.org>
Signed-off-by: Huang Shijie <b32955@freescale.com>
drivers/spi/spi.c

index d4f9670b51bcbd7947b811b5f8dfab8afc711248..3ee46ffe90b47f8f36b9a747f37db2b9b95c30fe 100644 (file)
@@ -1843,6 +1843,11 @@ static int __spi_validate(struct spi_device *spi, struct spi_message *message)
        if (list_empty(&message->transfers))
                return -EINVAL;
 
+       if (list_empty(&message->transfers))
+               return -EINVAL;
+       if (!message->complete)
+               return -EINVAL;
+
        /* Half-duplex links include original MicroWire, and ones with
         * only one data pin like SPI_3WIRE (switches direction) or where
         * either MOSI or MISO is missing.  They can also be caused by