netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ipv6: fib: fix fib dump restart
@ 2014-04-24 13:48 Chris Mason
  2014-04-24 14:18 ` Eric Dumazet
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Chris Mason @ 2014-04-24 13:48 UTC (permalink / raw)
  To: netdev


From: Kumar Sundararajan <kumar@fb.com>

When the ipv6 fib changes during a table dump, the walk is
restarted and the number of nodes dumped are skipped. But the existing
code doesn't advance to the next node after a node is skipped. This can
cause the dump to loop or produce lots of duplicates when the fib
is modified during the dump.

This change advances the walk to the next node if the current node is
skipped after a restart.

Signed-off-by: Chris Mason <clm@fb.com>
---
 net/ipv6/ip6_fib.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/net/ipv6/ip6_fib.c b/net/ipv6/ip6_fib.c
index 34e0ded..87891f5 100644
--- a/net/ipv6/ip6_fib.c
+++ b/net/ipv6/ip6_fib.c
@@ -1459,7 +1459,7 @@ static int fib6_walk_continue(struct fib6_walker_t *w)
 
 				if (w->skip) {
 					w->skip--;
-					continue;
+					goto skip;
 				}
 
 				err = w->func(w);
@@ -1469,6 +1469,7 @@ static int fib6_walk_continue(struct fib6_walker_t *w)
 				w->count++;
 				continue;
 			}
+skip:
 			w->state = FWS_U;
 		case FWS_U:
 			if (fn == w->root)
-- 
1.8.1

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

* Re: [PATCH] ipv6: fib: fix fib dump restart
  2014-04-24 13:48 [PATCH] ipv6: fib: fix fib dump restart Chris Mason
@ 2014-04-24 14:18 ` Eric Dumazet
  2014-04-24 14:43   ` Chris Mason
  2014-04-24 20:26 ` Chris Mason
  2014-04-24 21:20 ` David Miller
  2 siblings, 1 reply; 6+ messages in thread
From: Eric Dumazet @ 2014-04-24 14:18 UTC (permalink / raw)
  To: Chris Mason; +Cc: netdev

On Thu, 2014-04-24 at 09:48 -0400, Chris Mason wrote:
> From: Kumar Sundararajan <kumar@fb.com>
> 
> When the ipv6 fib changes during a table dump, the walk is
> restarted and the number of nodes dumped are skipped. But the existing
> code doesn't advance to the next node after a node is skipped. This can
> cause the dump to loop or produce lots of duplicates when the fib
> is modified during the dump.
> 
> This change advances the walk to the next node if the current node is
> skipped after a restart.
> 
> Signed-off-by: Chris Mason <clm@fb.com>
> ---
>  net/ipv6/ip6_fib.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

Hi Chris

Who wrote the patch exactly ?

If Kumar did, you need to put the
"Signed-off-by: Kumar Sundararajan <kumar@fb.com>" before your own

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

* Re: [PATCH] ipv6: fib: fix fib dump restart
  2014-04-24 14:18 ` Eric Dumazet
@ 2014-04-24 14:43   ` Chris Mason
  0 siblings, 0 replies; 6+ messages in thread
From: Chris Mason @ 2014-04-24 14:43 UTC (permalink / raw)
  To: Eric Dumazet; +Cc: netdev



On 04/24/2014 10:18 AM, Eric Dumazet wrote:
> On Thu, 2014-04-24 at 09:48 -0400, Chris Mason wrote:
>> From: Kumar Sundararajan <kumar@fb.com>
>>
>> When the ipv6 fib changes during a table dump, the walk is
>> restarted and the number of nodes dumped are skipped. But the existing
>> code doesn't advance to the next node after a node is skipped. This can
>> cause the dump to loop or produce lots of duplicates when the fib
>> is modified during the dump.
>>
>> This change advances the walk to the next node if the current node is
>> skipped after a restart.
>>
>> Signed-off-by: Chris Mason <clm@fb.com>
>> ---
>>   net/ipv6/ip6_fib.c | 3 ++-
>>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> Hi Chris
>
> Who wrote the patch exactly ?
>
> If Kumar did, you need to put the
> "Signed-off-by: Kumar Sundararajan <kumar@fb.com>" before your own

Kumar did write it, I'll grab a sob from him.

-chris

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

* Re: [PATCH] ipv6: fib: fix fib dump restart
  2014-04-24 13:48 [PATCH] ipv6: fib: fix fib dump restart Chris Mason
  2014-04-24 14:18 ` Eric Dumazet
@ 2014-04-24 20:26 ` Chris Mason
  2014-04-24 20:31   ` David Miller
  2014-04-24 21:20 ` David Miller
  2 siblings, 1 reply; 6+ messages in thread
From: Chris Mason @ 2014-04-24 20:26 UTC (permalink / raw)
  To: netdev

On 04/24/2014 09:48 AM, Chris Mason wrote:
>
> From: Kumar Sundararajan <kumar@fb.com>
>
> When the ipv6 fib changes during a table dump, the walk is
> restarted and the number of nodes dumped are skipped. But the existing
> code doesn't advance to the next node after a node is skipped. This can
> cause the dump to loop or produce lots of duplicates when the fib
> is modified during the dump.
>
> This change advances the walk to the next node if the current node is
> skipped after a restart.
>

Not sure if patchwork will do the right thing, but adding Kumar's 
signed-off-by:

Signed-off-by: Kumar Sundararajan <kumar@fb.com>

-chris

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

* Re: [PATCH] ipv6: fib: fix fib dump restart
  2014-04-24 20:26 ` Chris Mason
@ 2014-04-24 20:31   ` David Miller
  0 siblings, 0 replies; 6+ messages in thread
From: David Miller @ 2014-04-24 20:31 UTC (permalink / raw)
  To: clm; +Cc: netdev

From: Chris Mason <clm@fb.com>
Date: Thu, 24 Apr 2014 16:26:12 -0400

> On 04/24/2014 09:48 AM, Chris Mason wrote:
>>
>> From: Kumar Sundararajan <kumar@fb.com>
>>
>> When the ipv6 fib changes during a table dump, the walk is
>> restarted and the number of nodes dumped are skipped. But the existing
>> code doesn't advance to the next node after a node is skipped. This
>> can
>> cause the dump to loop or produce lots of duplicates when the fib
>> is modified during the dump.
>>
>> This change advances the walk to the next node if the current node is
>> skipped after a restart.
>>
> 
> Not sure if patchwork will do the right thing, but adding Kumar's
> signed-off-by:

I just checked, it does do the right thing, just FYI.

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

* Re: [PATCH] ipv6: fib: fix fib dump restart
  2014-04-24 13:48 [PATCH] ipv6: fib: fix fib dump restart Chris Mason
  2014-04-24 14:18 ` Eric Dumazet
  2014-04-24 20:26 ` Chris Mason
@ 2014-04-24 21:20 ` David Miller
  2 siblings, 0 replies; 6+ messages in thread
From: David Miller @ 2014-04-24 21:20 UTC (permalink / raw)
  To: clm; +Cc: netdev

From: Chris Mason <clm@fb.com>
Date: Thu, 24 Apr 2014 09:48:53 -0400

> 
> From: Kumar Sundararajan <kumar@fb.com>
> 
> When the ipv6 fib changes during a table dump, the walk is
> restarted and the number of nodes dumped are skipped. But the existing
> code doesn't advance to the next node after a node is skipped. This can
> cause the dump to loop or produce lots of duplicates when the fib
> is modified during the dump.
> 
> This change advances the walk to the next node if the current node is
> skipped after a restart.
> 
> Signed-off-by: Chris Mason <clm@fb.com>

Applied and queue up for -stable, thanks.

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

end of thread, other threads:[~2014-04-24 21:20 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-24 13:48 [PATCH] ipv6: fib: fix fib dump restart Chris Mason
2014-04-24 14:18 ` Eric Dumazet
2014-04-24 14:43   ` Chris Mason
2014-04-24 20:26 ` Chris Mason
2014-04-24 20:31   ` David Miller
2014-04-24 21:20 ` 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).