mmc: properly iterate over sg list in debug check
authorPierre Ossman <drzeus@drzeus.cx>
Mon, 28 Jul 2008 23:09:37 +0000 (01:09 +0200)
committerPierre Ossman <drzeus@drzeus.cx>
Fri, 1 Aug 2008 17:03:37 +0000 (19:03 +0200)
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
drivers/mmc/core/core.c

index 3ee5b8c3b5ce42fa205d3bbc2ee2d5e4f6420794..044d84eeed7c75f2775b27d3cb6b55630c08f688 100644 (file)
@@ -121,6 +121,7 @@ mmc_start_request(struct mmc_host *host, struct mmc_request *mrq)
 {
 #ifdef CONFIG_MMC_DEBUG
        unsigned int i, sz;
+       struct scatterlist *sg;
 #endif
 
        pr_debug("%s: starting CMD%u arg %08x flags %08x\n",
@@ -156,8 +157,8 @@ mmc_start_request(struct mmc_host *host, struct mmc_request *mrq)
 
 #ifdef CONFIG_MMC_DEBUG
                sz = 0;
-               for (i = 0;i < mrq->data->sg_len;i++)
-                       sz += mrq->data->sg[i].length;
+               for_each_sg(mrq->data->sg, sg, mrq->data->sg_len, i)
+                       sz += sg->length;
                BUG_ON(sz != mrq->data->blocks * mrq->data->blksz);
 #endif