[stgt] [PATCH 13/15] ssc: add variable-length block write support
FUJITA Tomonori
fujita.tomonori at lab.ntt.co.jp
Sun Oct 5 16:37:43 CEST 2008
Signed-off-by: FUJITA Tomonori <fujita.tomonori at lab.ntt.co.jp>
---
usr/bs_ssc.c | 10 ++++------
1 files changed, 4 insertions(+), 6 deletions(-)
diff --git a/usr/bs_ssc.c b/usr/bs_ssc.c
index 134c670..a7084d0 100644
--- a/usr/bs_ssc.c
+++ b/usr/bs_ssc.c
@@ -496,16 +496,14 @@ static void tape_rdwr_request(struct scsi_cmd *cmd)
count = get_unaligned_be24(&cmd->scb[2]);
length = scsi_get_out_length(cmd);
- if (!fixed) { /* Until supported */
- sense_data_build(cmd, ILLEGAL_REQUEST,
- ASC_INVALID_FIELD_IN_CDB);
- result = SAM_STAT_CHECK_CONDITION;
- break;
+ if (!fixed) {
+ block_length = length;
+ count = 1;
}
for (i = 0, ret = 0; i < count; i++) {
if (append_blk(cmd, buf, block_length,
- block_length, BLK_UNCOMPRESS_DATA)) {
+ block_length, BLK_UNCOMPRESS_DATA)) {
sense_data_build(cmd, MEDIUM_ERROR,
ASC_WRITE_ERROR);
result = SAM_STAT_CHECK_CONDITION;
--
1.5.6.5
--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
More information about the stgt
mailing list