netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 4/4] ipv4: optimize route adding on secondary promotion
@ 2011-03-19 22:13 Julian Anastasov
  2011-03-22  8:07 ` David Miller
  0 siblings, 1 reply; 2+ messages in thread
From: Julian Anastasov @ 2011-03-19 22:13 UTC (permalink / raw)
  To: netdev; +Cc: David Miller

	Optimize the calling of fib_add_ifaddr for all
secondary addresses after the promoted one to start from
their place, not from the new place of the promoted
secondary. It will save some CPU cycles because we
are sure the promoted secondary was first for the subnet
and all next secondaries do not change their place.

Signed-off-by: Julian Anastasov <ja@ssi.bg>
---
 net/ipv4/devinet.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff -urp net-next-2.6-bef55ae/linux/net/ipv4/devinet.c linux/net/ipv4/devinet.c
--- net-next-2.6-bef55ae/linux/net/ipv4/devinet.c	2011-03-18 00:57:39.000000000 +0200
+++ linux/net/ipv4/devinet.c	2011-03-18 10:40:08.135271482 +0200
@@ -375,6 +375,7 @@ static void __inet_del_ifa(struct in_dev
 	blocking_notifier_call_chain(&inetaddr_chain, NETDEV_DOWN, ifa1);
 
 	if (promote) {
+		struct in_ifaddr *next_sec = promote->ifa_next;
 
 		if (prev_prom) {
 			prev_prom->ifa_next = promote->ifa_next;
@@ -386,7 +387,7 @@ static void __inet_del_ifa(struct in_dev
 		rtmsg_ifa(RTM_NEWADDR, promote, nlh, pid);
 		blocking_notifier_call_chain(&inetaddr_chain,
 				NETDEV_UP, promote);
-		for (ifa = promote->ifa_next; ifa; ifa = ifa->ifa_next) {
+		for (ifa = next_sec; ifa; ifa = ifa->ifa_next) {
 			if (ifa1->ifa_mask != ifa->ifa_mask ||
 			    !inet_ifa_match(ifa1->ifa_address, ifa))
 					continue;

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH v2 4/4] ipv4: optimize route adding on secondary promotion
  2011-03-19 22:13 [PATCH v2 4/4] ipv4: optimize route adding on secondary promotion Julian Anastasov
@ 2011-03-22  8:07 ` David Miller
  0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2011-03-22  8:07 UTC (permalink / raw)
  To: ja; +Cc: netdev

From: Julian Anastasov <ja@ssi.bg>
Date: Sun, 20 Mar 2011 00:13:54 +0200

> 	Optimize the calling of fib_add_ifaddr for all
> secondary addresses after the promoted one to start from
> their place, not from the new place of the promoted
> secondary. It will save some CPU cycles because we
> are sure the promoted secondary was first for the subnet
> and all next secondaries do not change their place.
> 
> Signed-off-by: Julian Anastasov <ja@ssi.bg>

Applied.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-03-22  8:07 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-03-19 22:13 [PATCH v2 4/4] ipv4: optimize route adding on secondary promotion Julian Anastasov
2011-03-22  8:07 ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).