SBC: Add support for WRITESAME16 and add simple tests using it to unmap blocks from a thin provisioned lun

This commit is contained in:
Ronnie Sahlberg
2012-04-28 14:34:47 +10:00
parent d620cf4fd2
commit 568e4ddfcc
11 changed files with 397 additions and 1 deletions

View File

@@ -615,6 +615,13 @@ iscsi_writesame10_task(struct iscsi_context *iscsi, int lun,
int wrprotect, int group,
iscsi_command_cb cb, void *private_data);
EXTERN struct scsi_task *
iscsi_writesame16_task(struct iscsi_context *iscsi, int lun,
unsigned char *data, uint32_t datalen,
uint64_t lba, uint32_t num_blocks,
int anchor, int unmap, int pbdata, int lbdata,
int wrprotect, int group,
iscsi_command_cb cb, void *private_data);
EXTERN struct scsi_task *
iscsi_modesense6_task(struct iscsi_context *iscsi, int lun, int dbd,
int pc, int page_code, int sub_page_code,
unsigned char alloc_len, iscsi_command_cb cb,
@@ -686,6 +693,13 @@ iscsi_writesame10_sync(struct iscsi_context *iscsi, int lun,
int anchor, int unmap, int pbdata, int lbdata,
int wrprotect, int group);
EXTERN struct scsi_task *
iscsi_writesame16_sync(struct iscsi_context *iscsi, int lun,
unsigned char *data, uint32_t datalen,
uint64_t lba, uint32_t num_blocks,
int anchor, int unmap, int pbdata, int lbdata,
int wrprotect, int group);
EXTERN struct scsi_task *
iscsi_unmap_sync(struct iscsi_context *iscsi, int lun, int anchor, int group,
struct unmap_list *list, int list_len);