Re: [RESEND PATCH] scsi: make struct scsi_varlen_cdb_hdr packed
From: James Bottomley
Date: Thu Oct 11 2012 - 06:24:23 EST
On Thu, 2012-10-11 at 10:15 +0100, James Hogan wrote:
> The struct scsi_varlen_cdb_hdr is expected to be exactly 10 bytes when
> used in struct osd_cdb_head, but it isn't marked as packed. Some
> architectures will round the struct size up which triggers BUILD_BUG_ON
> compile errors in osd_initiator.c when the outer structs are unexpected
> sizes. This is fixed by marking struct scsi_varlen_cdb_hdr as __packed.
What actual problem have you encountered? The structure is {u8[8], u16}
which is naturally packed on every architecture I know about. I've even
built osd_initiator without problem on parisc, which has some of the
most rigid alignment rules I've seen.
James
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/