[PKT_SCHED]: Fix dsmark to count ignored indices while walking
authorThomas Graf <tgraf@suug.ch>
Tue, 31 May 2005 22:15:58 +0000 (15:15 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 31 May 2005 22:15:58 +0000 (15:15 -0700)
Unused indices which are ignored while walking must still
be counted to avoid dumping the same index twice.

Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sched/sch_dsmark.c

index 8a3db9d95bab238b99a7018a73b5e9ddbd189835..acbe9d2b3e15d0df7ded21ae9627a18716c8e738 100644 (file)
@@ -163,14 +163,15 @@ static void dsmark_walk(struct Qdisc *sch,struct qdisc_walker *walker)
                return;
        for (i = 0; i < p->indices; i++) {
                if (p->mask[i] == 0xff && !p->value[i])
-                       continue;
+                       goto ignore;
                if (walker->count >= walker->skip) {
                        if (walker->fn(sch, i+1, walker) < 0) {
                                walker->stop = 1;
                                break;
                        }
                }
-                walker->count++;
+ignore:                
+               walker->count++;
         }
 }