>Example: Xen 2 used __attribute__ packed heavily, realized at some >point it was a bad idea, and took another path.
at the time, gcc on arm didn't generate the code to fetch or store the values a byte at a time, which probably came as a surprise. i haven't tried it myself with gcc more recently.