Skip to content

Commit

Permalink
target: Make spc_get_write_same_sectors return sector_t
Browse files Browse the repository at this point in the history
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: Nicholas Bellinger <nab@linux-iscsi.org>
  • Loading branch information
Nicholas Bellinger committed Nov 28, 2012
1 parent 13f6a91 commit ffe0067
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 3 deletions.
2 changes: 1 addition & 1 deletion drivers/target/target_core_iblock.c
Original file line number Diff line number Diff line change
Expand Up @@ -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];

Expand Down
2 changes: 1 addition & 1 deletion drivers/target/target_core_sbc.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;

Expand Down
2 changes: 1 addition & 1 deletion include/target/target_core_backend.h
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down

0 comments on commit ffe0067

Please sign in to comment.