2009-04-08 08:23:42

by Adrian Hunter

[permalink] [raw]
Subject: [PATCH] HSMMC: mmc_omap_irq: Do not expect cmd/data to be non-null when CC/TC occurs

From: Jarkko Lavinen <[email protected]>

With spurious interrupt cmd can be null even when we have CC
set in irq status.

Fixes: NB#106295 - prevent potential kernel crash in the MMC driver

Signed-off-by: Jarkko Lavinen <[email protected]>
Signed-off-by: Adrian Hunter <[email protected]>
---
drivers/mmc/host/omap_hsmmc.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index d183be6..0268992 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -490,7 +490,7 @@ static irqreturn_t mmc_omap_irq(int irq, void *dev_id)

OMAP_HSMMC_WRITE(host->base, STAT, status);

- if (end_cmd || (status & CC))
+ if (end_cmd || ((status & CC) && host->cmd))
mmc_omap_cmd_done(host, host->cmd);
if (end_trans || (status & TC))
mmc_omap_xfer_done(host, data);
--
1.5.6.3


2009-04-08 18:44:19

by Pierre Ossman

[permalink] [raw]
Subject: Re: [PATCH] HSMMC: mmc_omap_irq: Do not expect cmd/data to be non-null when CC/TC occurs

On Wed, 08 Apr 2009 11:18:32 +0300
Adrian Hunter <[email protected]> wrote:

> From: Jarkko Lavinen <[email protected]>
>
> With spurious interrupt cmd can be null even when we have CC
> set in irq status.
>
> Fixes: NB#106295 - prevent potential kernel crash in the MMC driver
>
> Signed-off-by: Jarkko Lavinen <[email protected]>
> Signed-off-by: Adrian Hunter <[email protected]>
> ---

Queued.

--
-- Pierre Ossman

Linux kernel, MMC maintainer http://www.kernel.org
rdesktop, core developer http://www.rdesktop.org
TigerVNC, core developer http://www.tigervnc.org

WARNING: This correspondence is being monitored by the
Swedish government. Make sure your server uses encryption
for SMTP traffic and consider using PGP for end-to-end
encryption.