From: Daniel Ribeiro Date: Tue, 12 May 2009 20:19:36 +0000 (-0700) Subject: pxa2xx_spi: prevent panic case setup() fails X-Git-Tag: v2.6.30-rc6~33 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=7348d82a67b3fe0363e7f0679b50ecbdc65116c7;p=~shefty%2Frdma-dev.git pxa2xx_spi: prevent panic case setup() fails setup() may fail before ctldata is set, causing a kernel panic on cleanup(). Signed-off-by: Daniel Ribeiro Signed-off-by: David Brownell Cc: Eric Miao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/spi/pxa2xx_spi.c b/drivers/spi/pxa2xx_spi.c index 885194a0741..3f3c08c6ba4 100644 --- a/drivers/spi/pxa2xx_spi.c +++ b/drivers/spi/pxa2xx_spi.c @@ -1373,6 +1373,9 @@ static void cleanup(struct spi_device *spi) { struct chip_data *chip = spi_get_ctldata(spi); + if (!chip) + return; + if (gpio_is_valid(chip->gpio_cs)) gpio_free(chip->gpio_cs);