From: Christian Lamparter <chunkeey@xxxxxxxxxxxxxx> Date: Wed, 22 Sep 2010 22:46:30 +0200 > But the driver can try to minimizes the access to unaligned elements, > by using temporary variables (so the value needs to be accessed only > once). In fact that's already done, the only room for improvement > would be in carl9170_tx_prepare (temporary u16 for mac_control, > u8 super_misc, u8 rate_info). I think you're going for %20 improvement when there's a %100 one sitting right under your nose. :-) You know these things will always be aligned properly, so why not just declare this "u16 + 2 u8" thing as a proper endiannized "u32", load that, and mask out the parts that you need. And any struct that has only u32 and larger objects need not have any __packed attribute at all. -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html