|
@@ -477,7 +477,7 @@ static int nvme_submit_discard(struct nvme_queue *nvmeq, struct nvme_ns *ns,
|
|
|
|
|
|
range->cattr = cpu_to_le32(0);
|
|
|
range->nlb = cpu_to_le32(bio->bi_size >> ns->lba_shift);
|
|
|
- range->slba = cpu_to_le64(bio->bi_sector >> (ns->lba_shift - 9));
|
|
|
+ range->slba = cpu_to_le64(nvme_block_nr(ns, bio->bi_sector));
|
|
|
|
|
|
memset(cmnd, 0, sizeof(*cmnd));
|
|
|
cmnd->dsm.opcode = nvme_cmd_dsm;
|
|
@@ -590,7 +590,7 @@ static int nvme_submit_bio_queue(struct nvme_queue *nvmeq, struct nvme_ns *ns,
|
|
|
cmnd->rw.nsid = cpu_to_le32(ns->ns_id);
|
|
|
length = nvme_setup_prps(nvmeq->dev, &cmnd->common, iod, length,
|
|
|
GFP_ATOMIC);
|
|
|
- cmnd->rw.slba = cpu_to_le64(bio->bi_sector >> (ns->lba_shift - 9));
|
|
|
+ cmnd->rw.slba = cpu_to_le64(nvme_block_nr(ns, bio->bi_sector));
|
|
|
cmnd->rw.length = cpu_to_le16((length >> ns->lba_shift) - 1);
|
|
|
cmnd->rw.control = cpu_to_le16(control);
|
|
|
cmnd->rw.dsmgmt = cpu_to_le32(dsmgmt);
|