On Thu, Oct 16, 2014 at 10:58:35AM +0200, Wolfram Sang wrote:
> > +struct eeprom_data {
> > +   uint8_t eeprod_id;
> > +
> > +   uint8_t revision[3];
> > +   uint32_t serialnr;
> > +   uint8_t board_model;
> > +   char hw_name[6];
> > +
> > +   uint8_t reserved;
> > +
> > +   __be16 prod_date;
> > +   __be16 rep_date;
> > +
> > +   uint8_t reserved2[4];
> > +};
> 
> And what if the compiler reorders?

It's not allowed to reorder, but it can add padding wherever it wants
to, which if this is a on-device structure, can cause problems.  Use
__packed to prevent that.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to