mmc: mmci: simplify err check in mmci_post_request
authorPer Forlin <per.forlin@linaro.org>
Mon, 29 Aug 2011 13:35:59 +0000 (15:35 +0200)
committerChris Ball <cjb@laptop.org>
Wed, 26 Oct 2011 20:32:04 +0000 (16:32 -0400)
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 <per.forlin@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/host/mmci.c

index 56e9a41682649349608f8e1ad7e31e026dacb869..40e4c055812e58aa2d9d4357bd2ce57a86c3f8bb 100644 (file)
@@ -529,7 +529,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;