Messages in this thread | | | Subject | Re: [RESEND PATCH] scsi: make struct scsi_varlen_cdb_hdr packed | From | James Bottomley <> | Date | Thu, 11 Oct 2012 11:24:29 +0100 |
| |
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
| |