From 0770d45e8ad8b60a03f518cf798e1ded1d1d4028 Mon Sep 17 00:00:00 2001 From: Per Forlin Date: Mon, 29 Aug 2011 15:35:59 +0200 Subject: mmc: mmci: simplify err check in mmci_post_request The error condition indicates that mmci_post_request() should cleanup after the mmci_pre_request(). In this case the resources allocated by device_prep_slave_sg() are freed by calling dmaengine_terminate_all(). dma_unmap_sg() should always be performed if the host_cookie is set. Signed-off-by: Per Forlin Acked-by: Linus Walleij Signed-off-by: Chris Ball Change-Id: I04172ae0d6fc7089d126f7f2d7687c69fa5646f7 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/31975 Reviewed-by: Ulf HANSSON Tested-by: Ulf HANSSON --- drivers/mmc/host/mmci.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c index baa7883c49e..13222bd32a1 100644 --- a/drivers/mmc/host/mmci.c +++ b/drivers/mmc/host/mmci.c @@ -544,7 +544,7 @@ static void mmci_post_request(struct mmc_host *mmc, struct mmc_request *mrq, if (chan) { if (err) dmaengine_terminate_all(chan); - if (err || data->host_cookie) + if (data->host_cookie) dma_unmap_sg(mmc_dev(host->mmc), data->sg, data->sg_len, dir); mrq->data->host_cookie = 0; -- cgit v1.2.3