> static blk_status_t nvme_pci_setup_sgls(struct nvme_dev *dev, > - struct request *req, struct nvme_rw_command *cmd, int entries) > + struct request *req, struct nvme_rw_command *cmd) > { > struct nvme_iod *iod = blk_mq_rq_to_pdu(req); > struct dma_pool *pool; > struct nvme_sgl_desc *sg_list; > - struct scatterlist *sg = iod->sg; > + struct scatterlist *sg = iod->sgt.sgl; > + int entries = iod->sgt.nents; I don't see use of newly added entries variable anywhere in nvme_pci_setup_sgls(), what am I missing ? Also, type of entries variable should be unsigned int to match the iod->sgt.nents. > dma_addr_t sgl_dma; > int i = 0; > > @@ -848,7 +838,7 @@ static blk_status_t nvme_map_data(struct nvme_dev *dev, struct request *req, > { > struct nvme_iod *iod = blk_mq_rq_to_pdu(req); > blk_status_t ret = BLK_STS_RESOURCE; > - int nr_mapped; > + int rc; > > if (blk_rq_nr_phys_segments(req) == 1) { > struct bio_vec bv = req_bvec(req);