On Wed, Sep 10, 2008 at 9:11 AM, Boaz Harrosh <bharrosh@xxxxxxxxxxx> wrote: > Chris you might want to change the definitions at linux/types.h > to: > > typedef struct { __u8 b[3]; } __be24, __le24 __packed; > > With gcc it will not help with the proceeding fields, and the > containing struct will need it's own "__packed" declaration > but it will keep it packed with previous fields. I haven't seen padding added simply because of a nested structure boundary, but I'm not up on all the ABIs for the different architectures. Obviously a containing structure would want to have the 24-bit type adjacent to an 8-bit type, or have it's own packed attribute if needed. It shouldn't hurt, in this case the members shouldn't be expected to have more than byte alignment anyway, but I can't see how it would help. If there's a particular arch that might be a problem I'm happy to look into it, but I don't want to start throwing packed attributes around just in case. Chris -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html