Use the proper helper instead of manually iterating the scatterlist,
which is broken in the presence of chained S/G lists.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
        int n;
        unsigned int dma_len;
        struct mtip_cmd_sg *command_sg;
-       struct scatterlist *sg = command->sg;
+       struct scatterlist *sg;
 
        command_sg = command->command + AHCI_CMD_TBL_HDR_SZ;
 
-       for (n = 0; n < nents; n++) {
+       for_each_sg(command->sg, sg, nents, n) {
                dma_len = sg_dma_len(sg);
                if (dma_len > 0x400000)
                        dev_err(&dd->pdev->dev,
                command_sg->dba_upper =
                        cpu_to_le32((sg_dma_address(sg) >> 16) >> 16);
                command_sg++;
-               sg++;
        }
 }