scsi: core: Make scsi_get_lba() return the LBA
[ Upstream commit d2c945f01d233085fedc9e3cf7ec180eaa2b7a85 ] scsi_get_lba() confusingly returned the block layer sector number expressed in units of 512 bytes. Now that we have a more aptly named scsi_get_sector() function, make scsi_get_lba() return the actual LBA. Link: https://lore.kernel.org/r/20210609033929.3815-13-martin.petersen@oracle.com Reviewed-by: Bart Van Assche <bvanassche@acm.org> Reviewed-by: Benjamin Block <bblock@linux.ibm.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Message-Id: <20210609033929.3815-13-martin.petersen@oracle.com> Stable-dep-of: 066c5b46b6ea ("scsi: core: Always send batch on reset or error handling command") Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
613acf8248
commit
e1637215b4
1 changed files with 7 additions and 5 deletions
|
@ -235,6 +235,13 @@ static inline sector_t scsi_get_sector(struct scsi_cmnd *scmd)
|
||||||
return blk_rq_pos(scmd->request);
|
return blk_rq_pos(scmd->request);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline sector_t scsi_get_lba(struct scsi_cmnd *scmd)
|
||||||
|
{
|
||||||
|
unsigned int shift = ilog2(scmd->device->sector_size) - SECTOR_SHIFT;
|
||||||
|
|
||||||
|
return blk_rq_pos(scmd->request) >> shift;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The operations below are hints that tell the controller driver how
|
* The operations below are hints that tell the controller driver how
|
||||||
* to handle I/Os with DIF or similar types of protection information.
|
* to handle I/Os with DIF or similar types of protection information.
|
||||||
|
@ -297,11 +304,6 @@ static inline unsigned char scsi_get_prot_type(struct scsi_cmnd *scmd)
|
||||||
return scmd->prot_type;
|
return scmd->prot_type;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline sector_t scsi_get_lba(struct scsi_cmnd *scmd)
|
|
||||||
{
|
|
||||||
return blk_rq_pos(scmd->request);
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline u32 scsi_prot_ref_tag(struct scsi_cmnd *scmd)
|
static inline u32 scsi_prot_ref_tag(struct scsi_cmnd *scmd)
|
||||||
{
|
{
|
||||||
struct request *rq = blk_mq_rq_from_pdu(scmd);
|
struct request *rq = blk_mq_rq_from_pdu(scmd);
|
||||||
|
|
Loading…
Add table
Reference in a new issue