Am 17.03.2016 um 11:53 schrieb Sean Young: > On Thu, Mar 17, 2016 at 07:40:59AM +0100, Heiner Kallweit wrote: >> Am 16.03.2016 um 23:28 schrieb Sean Young: >>> On Wed, Mar 16, 2016 at 10:18:38PM +0100, Heiner Kallweit wrote: >>>> + u8 pulse:1; >>>> + u8 reset:1; >>>> + u8 timeout:1; >>>> + u8 carrier_report:1; >>> >>> Why are you changing the type of the bitfields? >>> >> I did this to make sure that the compiler uses one byte for >> the bit field. When testing gcc also used just one byte when >> keeping the original "unsigned" type for the bit field members. >> Therefore it wouldn't be strictly neeeded. >> >> But I'm not sure whether it's guaranteed that the compiler packs a >> bit field to the smallest possible data type and we can rely on it. >> AFAIK C99 is a little more specific about this implementation detail of >> bit fields but C89/C90 is used for kernel compilation. > > It might be worth reading about structure packing rules rather than > guessing. > Whenever it became interesting when reading the statement was: unspecified / implementation-dependent. But at least C90 clearly states that only signed / unsigned int are acceptable for bit fields. Therefore leave the bit field as it is. I will provide a v2.
Heiner > > Sean > -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html