The size of PAC_TYPE_LOGON_INFO and PAC_TYPE_UPN_DNS_INFO elements is supposed
to be padded to an 8 byte boundary...
(In reply to Stefan Metzmacher from comment #0)
My understanding about alignment:
- I think current processors are bit smart and they can handle the unaligned memory but in some bad situation, the processor takes some extra cycles to fetch the unaligned memory. So it would be good for coder to care about alignment when he writes the code.
- Padding increases the performance of the processor at the penalty of memory.
- For structure, union wastage of memory can be saved by rearranging members in the order of largest size to smallest.
- But wont custom struct member alignment cause compatibility issues, for linking external library using different packing alignments?
__attribute__ ((aligned (8)))