> Sidenote: in the above example, you may wish to reorder the fields in the > above structure so that the overall structure uses less memory. For example, > moving field3 to sit inbetween field1 and field2 (where the padding is > inserted) would shrink the overall structure by 1 byte: > > struct foo { > u16 field1; > u8 field3; > u32 field2; > };
You can reorder to u32, u16, u8 order and save another byte :) A reference to pahole could be appropriate here, and probably a small note that some large existing structures like netdev have deliberate holes to achieve cache alignment. johannes
signature.asc
Description: This is a digitally signed message part