]> Pileus Git - ~andy/linux/commitdiff
[SCSI] cxgb3i: fixed programing of the dma page sizes
authorKaren Xie <kxie@chelsio.com>
Fri, 17 Jun 2011 23:10:32 +0000 (16:10 -0700)
committerJames Bottomley <JBottomley@Parallels.com>
Wed, 29 Jun 2011 21:42:16 +0000 (16:42 -0500)
Fixed missing programming of the pages sizes for DMA.

Signed-off-by: Karen Xie <kxie@chelsio.com>
Reviewed-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/cxgbi/cxgb3i/cxgb3i.c

index fc2cdb62f53b972c059003a49d187650266919d7..ffb9eea7e4b9969122c15d365350afe724618bd8 100644 (file)
@@ -1245,7 +1245,7 @@ static int cxgb3i_ddp_init(struct cxgbi_device *cdev)
        struct cxgbi_ddp_info *ddp = tdev->ulp_iscsi;
        struct ulp_iscsi_info uinfo;
        unsigned int pgsz_factor[4];
-       int err;
+       int i, err;
 
        if (ddp) {
                kref_get(&ddp->refcnt);
@@ -1271,6 +1271,8 @@ static int cxgb3i_ddp_init(struct cxgbi_device *cdev)
 
        uinfo.tagmask = ddp->idx_mask << PPOD_IDX_SHIFT;
        cxgbi_ddp_page_size_factor(pgsz_factor);
+       for (i = 0; i < 4; i++)
+               uinfo.pgsz_factor[i] = pgsz_factor[i];
        uinfo.ulimit = uinfo.llimit + (ddp->nppods << PPOD_SIZE_SHIFT);
 
        err = tdev->ctl(tdev, ULP_ISCSI_SET_PARAMS, &uinfo);