From patchwork Mon Nov 19 21:42:57 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Fenkart X-Patchwork-Id: 1769201 Return-Path: X-Original-To: patchwork-linux-mmc@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork1.kernel.org (Postfix) with ESMTP id 029013FCAE for ; Mon, 19 Nov 2012 21:43:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752346Ab2KSVni (ORCPT ); Mon, 19 Nov 2012 16:43:38 -0500 Received: from mailout-de.gmx.net ([213.165.64.22]:49293 "HELO mailout-de.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1752321Ab2KSVni (ORCPT ); Mon, 19 Nov 2012 16:43:38 -0500 Received: (qmail invoked by alias); 19 Nov 2012 21:43:36 -0000 Received: from ip-89-176-142-144.net.upcbroadband.cz (EHLO localhost) [89.176.142.144] by mail.gmx.net (mp032) with SMTP; 19 Nov 2012 22:43:36 +0100 X-Authenticated: #20192376 X-Provags-ID: V01U2FsdGVkX1/6/s9gh9X6DgyRovhVGmIjH7hN1E/0tqpOfskMch jOERj32roCi7qE From: Andreas Fenkart To: linux-mmc@vger.kernel.org Cc: david.vrabel@csr.com, daniel@zonque.org, Andreas Fenkart Subject: [PATCH 1/3] mmc: omap_hsmmc: NULL pointer upon DTO after CC. Date: Mon, 19 Nov 2012 22:42:57 +0100 Message-Id: <1353361379-21002-2-git-send-email-andreas.fenkart@streamunlimited.com> X-Mailer: git-send-email 1.7.10.4 In-Reply-To: <1353361379-21002-1-git-send-email-andreas.fenkart@streamunlimited.com> References: <1353361379-21002-1-git-send-email-andreas.fenkart@streamunlimited.com> X-Y-GMX-Trusted: 0 Sender: linux-mmc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-mmc@vger.kernel.org Signed-off-by: Andreas Fenkart --- drivers/mmc/host/omap_hsmmc.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index 21ca331..13ef4a0 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c @@ -991,9 +991,12 @@ static inline void omap_hsmmc_reset_controller_fsm(struct omap_hsmmc_host *host, static void hsmmc_command_incomplete(struct omap_hsmmc_host *host, int err) { omap_hsmmc_reset_controller_fsm(host, SRC); - host->cmd->error = err; + + if (host->cmd) + host->cmd->error = err; if (host->data) { + host->data->error = err; omap_hsmmc_reset_controller_fsm(host, SRD); omap_hsmmc_dma_cleanup(host, err); } @@ -1022,7 +1025,7 @@ static void omap_hsmmc_do_irq(struct omap_hsmmc_host *host, int status) } } - if (end_cmd || ((status & CC) && host->cmd)) + if ((end_cmd || (status & CC)) && host->cmd) omap_hsmmc_cmd_done(host, host->cmd); if ((end_trans || (status & TC)) && host->mrq) omap_hsmmc_xfer_done(host, data);