changed __cpu_to_be* to put_unaligned_be* macros in sbc.c Signed-off-by: Alexander Nezhinsky <alexandern@xxxxxxxxxxxx> --- usr/sbc.c | 18 ++++++++---------- 1 files changed, 8 insertions(+), 10 deletions(-) diff --git a/usr/sbc.c b/usr/sbc.c index d73306b..07d8640 100644 --- a/usr/sbc.c +++ b/usr/sbc.c @@ -183,9 +183,8 @@ static int sbc_read_capacity(int host_no, struct scsi_cmd *cmd) bshift = cmd->dev->blk_shift; size = cmd->dev->size >> bshift; - data[0] = (size >> 32) ? - __cpu_to_be32(0xffffffff) : __cpu_to_be32(size - 1); - data[1] = __cpu_to_be32(1U << bshift); + put_unaligned_be32(size >> 32 ? 0xffffffff : size - 1, &data[0]); + put_unaligned_be32(1U << bshift, &data[1]); overflow: scsi_set_in_resid_by_actual(cmd, 8); @@ -222,8 +221,8 @@ static int sbc_service_action(int host_no, struct scsi_cmd *cmd) bshift = cmd->dev->blk_shift; size = cmd->dev->size >> bshift; - *((uint64_t *)(data)) = __cpu_to_be64(size - 1); - data[2] = __cpu_to_be32(1UL << bshift); + put_unaligned_be64(size - 1, (uint64_t *)&data[0]); + put_unaligned_be32(1UL << bshift, &data[2]); overflow: scsi_set_in_resid_by_actual(cmd, len); @@ -271,7 +270,7 @@ sense: static int sbc_lu_init(struct scsi_lu *lu) { uint64_t size; - uint8_t *data; + uint32_t *data; if (spc_lu_init(lu)) return TGTADM_NOMEM; @@ -281,15 +280,14 @@ static int sbc_lu_init(struct scsi_lu *lu) lu->attrs.version_desc[1] = 0x0960; /* iSCSI */ lu->attrs.version_desc[2] = 0x0300; /* SPC-3 */ - data = lu->mode_block_descriptor; + data = (uint32_t *)lu->mode_block_descriptor; if (!lu->blk_shift) lu->blk_shift = blk_shift; /* if unset, use default shift */ size = lu->size >> lu->blk_shift; /* calculate size in blocks */ - *(uint32_t *)(data) = (size >> 32) ? - __cpu_to_be32(0xffffffff) : __cpu_to_be32(size); - *(uint32_t *)(data + 4) = __cpu_to_be32(1 << lu->blk_shift); + put_unaligned_be32(size >> 32 ? 0xffffffff : (uint32_t)size, &data[0]); + put_unaligned_be32(1 << lu->blk_shift, &data[1]); /* Vendor uniq - However most apps seem to call for mode page 0*/ add_mode_page(lu, "0:0:0"); -- 1.7.3 -- To unsubscribe from this list: send the line "unsubscribe stgt" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html