> 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
Attachment:
signature.asc
Description: This is a digitally signed message part
- Follow-Ups:
- Re: [RFC] Documentation about unaligned memory access
- From: "Arnaldo Carvalho de Melo" <[email protected]>
- Re: [RFC] Documentation about unaligned memory access
- References:
- [RFC] Documentation about unaligned memory access
- From: Daniel Drake <[email protected]>
- [RFC] Documentation about unaligned memory access
- Prev by Date: Re: kernel BUG at fs/inode.c
- Next by Date: Re: [RFC] Documentation about unaligned memory access
- Previous by thread: Re: [RFC] Documentation about unaligned memory access
- Next by thread: Re: [RFC] Documentation about unaligned memory access
- Index(es):