Re: [PATCH 09/21] batman-adv: slight optimization of addr compare

2013-12-23 Thread Ding Tianhong
On 2013/12/23 17:06, Antonio Quartulli wrote:
> On 23/12/13 09:59, Joe Perches wrote:
>> On Mon, 2013-12-23 at 09:46 +0100, Antonio Quartulli wrote:
>>> On 23/12/13 06:10, Ding Tianhong wrote:
>>>
>>> [...]
>>>
 --- a/net/batman-adv/originator.c
 +++ b/net/batman-adv/originator.c
 @@ -41,7 +41,7 @@ int batadv_compare_orig(const struct hlist_node *node, 
 const void *data2)
const void *data1 = container_of(node, struct batadv_orig_node,
 hash_entry);
  
 -  return (memcmp(data1, data2, ETH_ALEN) == 0 ? 1 : 0);
 +  return ether_addr_equal_unaligned(data1, data2) ? 1 : 0;
>>>
>>> ether_addr_equal_unaligned() returns a bool value which is implicitly
>>> converted to 1 or 0: there is no need for the ternary if anymore.
>>
>> Should these use batadv_compare_eth?
>>
> 
> That makes sense.
> 
> I was wondering whether we should get rid of batadv_compare_eth() at all
> and always use ether_addr_equal_unaligned(). The "unaligned explanation"
> is part of the name, so there is no need to use a commented helper anymore.
> 
> However, until that moment it is better to get stuck to
> batadv_compare_eth().
> 
> 
> Ding, can you also follow Joe's suggestion for this patch please?
> 
> 
> Thanks,
> 
> 
Ok



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 09/21] batman-adv: slight optimization of addr compare

2013-12-23 Thread Ding Tianhong
On 2013/12/23 16:59, Joe Perches wrote:
> On Mon, 2013-12-23 at 09:46 +0100, Antonio Quartulli wrote:
>> On 23/12/13 06:10, Ding Tianhong wrote:
>>
>> [...]
>>
>>> --- a/net/batman-adv/originator.c
>>> +++ b/net/batman-adv/originator.c
>>> @@ -41,7 +41,7 @@ int batadv_compare_orig(const struct hlist_node *node, 
>>> const void *data2)
>>> const void *data1 = container_of(node, struct batadv_orig_node,
>>>  hash_entry);
>>>  
>>> -   return (memcmp(data1, data2, ETH_ALEN) == 0 ? 1 : 0);
>>> +   return ether_addr_equal_unaligned(data1, data2) ? 1 : 0;
>>
>> ether_addr_equal_unaligned() returns a bool value which is implicitly
>> converted to 1 or 0: there is no need for the ternary if anymore.
> 
> Should these use batadv_compare_eth?
> 
> 

Yes, and need to remove the checks for return value.

Regards
Ding 

> 
> 


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 09/21] batman-adv: slight optimization of addr compare

2013-12-23 Thread Ding Tianhong
On 2013/12/23 16:46, Antonio Quartulli wrote:
> On 23/12/13 06:10, Ding Tianhong wrote:
> 
> [...]
> 
>> --- a/net/batman-adv/originator.c
>> +++ b/net/batman-adv/originator.c
>> @@ -41,7 +41,7 @@ int batadv_compare_orig(const struct hlist_node *node, 
>> const void *data2)
>>  const void *data1 = container_of(node, struct batadv_orig_node,
>>   hash_entry);
>>  
>> -return (memcmp(data1, data2, ETH_ALEN) == 0 ? 1 : 0);
>> +return ether_addr_equal_unaligned(data1, data2) ? 1 : 0;
> 
> ether_addr_equal_unaligned() returns a bool value which is implicitly
> converted to 1 or 0: there is no need for the ternary if anymore.
> 
> 
>>  }
>>  
>>  /**
>> diff --git a/net/batman-adv/translation-table.c 
>> b/net/batman-adv/translation-table.c
>> index 4add57d..5e66d4b 100644
>> --- a/net/batman-adv/translation-table.c
>> +++ b/net/batman-adv/translation-table.c
>> @@ -51,7 +51,7 @@ static int batadv_compare_tt(const struct hlist_node 
>> *node, const void *data2)
>>  const void *data1 = container_of(node, struct batadv_tt_common_entry,
>>   hash_entry);
>>  
>> -return (memcmp(data1, data2, ETH_ALEN) == 0 ? 1 : 0);
>> +return ether_addr_equal_unaligned(data1, data2) ? 1 : 0;
> 
> same here
> 
> 
> Moreover, include linux/etherdevice.h in both files as explained in
> point 1) of Documentation/SubmitChecklist
> 
> Thanks.
> 
> 
> 
> Cheers,
> 

Yes, thanks a lot, fix it soon.

Regards
Ding



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 09/21] batman-adv: slight optimization of addr compare

2013-12-23 Thread Antonio Quartulli
On 23/12/13 09:59, Joe Perches wrote:
> On Mon, 2013-12-23 at 09:46 +0100, Antonio Quartulli wrote:
>> On 23/12/13 06:10, Ding Tianhong wrote:
>>
>> [...]
>>
>>> --- a/net/batman-adv/originator.c
>>> +++ b/net/batman-adv/originator.c
>>> @@ -41,7 +41,7 @@ int batadv_compare_orig(const struct hlist_node *node, 
>>> const void *data2)
>>> const void *data1 = container_of(node, struct batadv_orig_node,
>>>  hash_entry);
>>>  
>>> -   return (memcmp(data1, data2, ETH_ALEN) == 0 ? 1 : 0);
>>> +   return ether_addr_equal_unaligned(data1, data2) ? 1 : 0;
>>
>> ether_addr_equal_unaligned() returns a bool value which is implicitly
>> converted to 1 or 0: there is no need for the ternary if anymore.
> 
> Should these use batadv_compare_eth?
> 

That makes sense.

I was wondering whether we should get rid of batadv_compare_eth() at all
and always use ether_addr_equal_unaligned(). The "unaligned explanation"
is part of the name, so there is no need to use a commented helper anymore.

However, until that moment it is better to get stuck to
batadv_compare_eth().


Ding, can you also follow Joe's suggestion for this patch please?


Thanks,


-- 
Antonio Quartulli



signature.asc
Description: OpenPGP digital signature


Re: [PATCH 09/21] batman-adv: slight optimization of addr compare

2013-12-23 Thread Antonio Quartulli
On 23/12/13 06:10, Ding Tianhong wrote:

[...]

> --- a/net/batman-adv/originator.c
> +++ b/net/batman-adv/originator.c
> @@ -41,7 +41,7 @@ int batadv_compare_orig(const struct hlist_node *node, 
> const void *data2)
>   const void *data1 = container_of(node, struct batadv_orig_node,
>hash_entry);
>  
> - return (memcmp(data1, data2, ETH_ALEN) == 0 ? 1 : 0);
> + return ether_addr_equal_unaligned(data1, data2) ? 1 : 0;

ether_addr_equal_unaligned() returns a bool value which is implicitly
converted to 1 or 0: there is no need for the ternary if anymore.


>  }
>  
>  /**
> diff --git a/net/batman-adv/translation-table.c 
> b/net/batman-adv/translation-table.c
> index 4add57d..5e66d4b 100644
> --- a/net/batman-adv/translation-table.c
> +++ b/net/batman-adv/translation-table.c
> @@ -51,7 +51,7 @@ static int batadv_compare_tt(const struct hlist_node *node, 
> const void *data2)
>   const void *data1 = container_of(node, struct batadv_tt_common_entry,
>hash_entry);
>  
> - return (memcmp(data1, data2, ETH_ALEN) == 0 ? 1 : 0);
> + return ether_addr_equal_unaligned(data1, data2) ? 1 : 0;

same here


Moreover, include linux/etherdevice.h in both files as explained in
point 1) of Documentation/SubmitChecklist

Thanks.



Cheers,

-- 
Antonio Quartulli



signature.asc
Description: OpenPGP digital signature


Re: [PATCH 09/21] batman-adv: slight optimization of addr compare

2013-12-23 Thread Joe Perches
On Mon, 2013-12-23 at 09:46 +0100, Antonio Quartulli wrote:
> On 23/12/13 06:10, Ding Tianhong wrote:
> 
> [...]
> 
> > --- a/net/batman-adv/originator.c
> > +++ b/net/batman-adv/originator.c
> > @@ -41,7 +41,7 @@ int batadv_compare_orig(const struct hlist_node *node, 
> > const void *data2)
> > const void *data1 = container_of(node, struct batadv_orig_node,
> >  hash_entry);
> >  
> > -   return (memcmp(data1, data2, ETH_ALEN) == 0 ? 1 : 0);
> > +   return ether_addr_equal_unaligned(data1, data2) ? 1 : 0;
> 
> ether_addr_equal_unaligned() returns a bool value which is implicitly
> converted to 1 or 0: there is no need for the ternary if anymore.

Should these use batadv_compare_eth?


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/