Skip to contentSkip to conversation

ppp: slight optimization of addr compare

PATCH Superseded Ding Tianhong 3 participants 4 messages Dec 24, 2013

Subsystems (3)

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

PATCH v2 6/20 ppp: slight optimization of addr compare

Use possibly more efficient ether_addr_equal
to instead of memcmp.

---
 drivers/net/ppp/pppoe.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
drivers/net/ppp/pppoe.c +3 -2
index 82ee6ed..1808a10 100644
@@ -131,12 +131,13 @@ static inline struct pppoe_net *pppoe_pernet(struct net *net)
 
 static inline int cmp_2_addr(struct pppoe_addr *a, struct pppoe_addr *b)
 {
-	return a->sid == b->sid && !memcmp(a->remote, b->remote, ETH_ALEN);
+	return a->sid == b->sid && ether_addr_equal(a->remote,
+							      b->remote);
 }
 
 static inline int cmp_addr(struct pppoe_addr *a, __be16 sid, char *addr)
 {
-	return a->sid == sid && !memcmp(a->remote, addr, ETH_ALEN);
+	return a->sid == sid && ether_addr_equal(a->remote, addr);
 }
 
 #if 8 % PPPOE_HASH_BITS
Signature · 1 line
1.8.0
#1 lore raw

Hello.

Quoted 16 lines · Ding Tianhong

Use possibly more efficient ether_addr_equal
to instead of memcmp.

---
  drivers/net/ppp/pppoe.c | 5 +++--
  1 file changed, 3 insertions(+), 2 deletions(-)
drivers/net/ppp/pppoe.c +0 -0
index 82ee6ed..1808a10 100644

drivers/net/ppp/pppoe.c static inline struct pppoe_net *pppoe_pernet(struct net *net) · line 135

Quoted 6 lines
drivers/net/ppp/pppoe.c +2 -1
@@ -131,12 +131,13 @@ static inline struct pppoe_net *pppoe_pernet(struct net *net)
 
  static inline int cmp_2_addr(struct pppoe_addr *a, struct pppoe_addr *b)
  {
-	return a->sid == b->sid && !memcmp(a->remote, b->remote, ETH_ALEN);
+	return a->sid == b->sid && ether_addr_equal(a->remote,
+							      b->remote);

If it really doesn't fit insto single line, the continuation line should
start right under 'a->remote'.

WBR, Sergei

#2 lore raw
Quoted 1 line · Sergei Shtylyov

On 24-12-2013 15:28, Ding Tianhong wrote:

[]

Quoted 1 line

drivers/net/ppp/pppoe.c

Quoted 1 line
drivers/net/ppp/pppoe.c +0 -0

[]

Quoted 10 lines

drivers/net/ppp/pppoe.c static inline struct pppoe_net *pppoe_pernet(struct net *net) · line 135

Quoted 7 lines
drivers/net/ppp/pppoe.c +2 -1
@@ -131,12 +131,13 @@ static inline struct pppoe_net *pppoe_pernet(struct net *net)
 
  static inline int cmp_2_addr(struct pppoe_addr *a, struct pppoe_addr *b)
  {
-	return a->sid == b->sid && !memcmp(a->remote, b->remote, ETH_ALEN);
+	return a->sid == b->sid && ether_addr_equal(a->remote,
+							      b->remote);

If it really doesn't fit insto single line, the continuation line should
start right under 'a->remote'.

Better still might be

	return a->sid == b->sid &&
	       ether_addr_equal(a->remote, b->remote);
#3 lore raw

Hello.

Quoted 14 lines · Joe Perches

[]

Quoted 1 line

drivers/net/ppp/pppoe.c

Quoted 1 line
drivers/net/ppp/pppoe.c +0 -0

[]

Quoted 10 lines

drivers/net/ppp/pppoe.c static inline struct pppoe_net *pppoe_pernet(struct net *net) · line 135

Quoted 7 lines
drivers/net/ppp/pppoe.c +2 -1
@@ -131,12 +131,13 @@ static inline struct pppoe_net *pppoe_pernet(struct net *net)
 
   static inline int cmp_2_addr(struct pppoe_addr *a, struct pppoe_addr *b)
   {
-	return a->sid == b->sid && !memcmp(a->remote, b->remote, ETH_ALEN);
+	return a->sid == b->sid && ether_addr_equal(a->remote,
+							      b->remote);

If it really doesn't fit insto single line, the continuation line should
start right under 'a->remote'.

Quoted 4 lines

Better still might be

	return a->sid == b->sid &&
	       ether_addr_equal(a->remote, b->remote);

Actually, after the second look, I don't know why the line was broken at all.

WBR, Sergei