Messages in this thread | | | Date | Thu, 1 Aug 2013 21:58:18 +0100 | From | Russell King - ARM Linux <> | Subject | Re: [PATCH V2 3/3] ethernet: Convert mac address uses of 6 to ETH_ALEN |
| |
On Thu, Aug 01, 2013 at 01:55:28PM -0700, Joe Perches wrote: > On Thu, 2013-08-01 at 21:33 +0100, Russell King - ARM Linux wrote: > > On Thu, Aug 01, 2013 at 01:31:09PM -0700, Olof Johansson wrote: > > > Hi, > > Hi all. > > > > On Thu, Aug 1, 2013 at 1:14 PM, Joe Perches <joe@perches.com> wrote: > > > > diff --git a/drivers/net/ethernet/pasemi/pasemi_mac.h b/drivers/net/ethernet/pasemi/pasemi_mac.h > [] > > > > @@ -79,11 +79,11 @@ struct pasemi_mac { > > > > int last_cs; > > > > int num_cs; > > > > u32 dma_if; > > > > - u8 type; > > > > #define MAC_TYPE_GMAC 1 > > > > #define MAC_TYPE_XAUI 2 > > > > > > > > - u8 mac_addr[6]; > > > > + u8 mac_addr[ETH_ALEN]; > > > > + u8 type; > > > > > > Just promote 'type' to u32 instead, saves you from moving the #defines > > > down, etc, etc. > > type is already u8, why change it? > That would also change struct size. > > > There's a more fundamental question which has to be asked: what is the > > point of moving that in the first place? > > Some is_<foo>_ether_addr tests assume __aligned(2) > by a casting char * to u16/be16 * and dereferencing. > > see patch 0/3 and include/linux/etherdevice.h
This seems rather obscure - I mean, it's not obvious to driver authors that should be the case. Would it not be better to make this a little more obvious somehow? Maybe __aligned(2) against mac_addr? Or maybe have a debugging check for it?
| |