Commit ffe00675 authored by Nicholas Bellinger's avatar Nicholas Bellinger

target: Make spc_get_write_same_sectors return sector_t

We already expect TFO->get_blocks() to return sector_t for zero value case
when doing WRITE_SAME to the end of the backend device, so go ahead and return
sector_t from spc_get_write_same_sectors() to handle this case properly.

Also, update the single iblock_execute_write_same() caller of this code.

Cc: Christoph Hellwig <hch@lst.de>
Cc: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
parent 13f6a914
......@@ -481,7 +481,7 @@ iblock_execute_write_same(struct se_cmd *cmd)
struct bio *bio;
struct bio_list list;
sector_t block_lba = cmd->t_task_lba;
unsigned int sectors = spc_get_write_same_sectors(cmd);
sector_t sectors = spc_get_write_same_sectors(cmd);
sg = &cmd->t_data_sg[0];
......
......@@ -107,7 +107,7 @@ sbc_emulate_readcapacity_16(struct se_cmd *cmd)
return 0;
}
int spc_get_write_same_sectors(struct se_cmd *cmd)
sector_t spc_get_write_same_sectors(struct se_cmd *cmd)
{
u32 num_blocks;
......
......@@ -52,7 +52,7 @@ void target_complete_cmd(struct se_cmd *, u8);
sense_reason_t spc_parse_cdb(struct se_cmd *cmd, unsigned int *size);
sense_reason_t spc_emulate_report_luns(struct se_cmd *cmd);
int spc_get_write_same_sectors(struct se_cmd *cmd);
sector_t spc_get_write_same_sectors(struct se_cmd *cmd);
sense_reason_t sbc_parse_cdb(struct se_cmd *cmd, struct sbc_ops *ops);
u32 sbc_get_device_rev(struct se_device *dev);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment