lkml.org 
[lkml]   [2013]   [Dec]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH -next] batadv: Slight optimization of batadv_compare_eth
From
Date
On Fri, 2013-12-06 at 15:39 -0500, David Miller wrote:
> From: Joe Perches <joe@perches.com>
> Date: Fri, 06 Dec 2013 00:18:10 -0800
>
> > @@ -266,7 +266,11 @@ static inline void batadv_dbg(int type __always_unused,
> > */
> > static inline int batadv_compare_eth(const void *data1, const void *data2)
> > {
> > - return (memcmp(data1, data2, ETH_ALEN) == 0 ? 1 : 0);
> > +#if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS)
> > + return ether_addr_equal(data1, data2);
> > +#else
> > + return memcmp(data1, data2, ETH_ALEN) == 0;
> > +#endif
> > }
>
> Let's not crap up implementations with these ifdefs.
>
> What's the specific situation here? Is it that 'data1' and/or
> 'data2' my not be u16 aligned?

Yes.

> If so, make a function for that in linux/etherdevice.h and invoke it
> in such places. You can name it something like
> "ether_addr_equal_unaligned()" or similar.

I'll resubmit if/after you apply the
ether_addr_equal/compare_ether_addr removal.

cheers, Joe




\
 
 \ /
  Last update: 2013-12-06 22:41    [W:0.376 / U:0.068 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site