netdev-linux: Dump all queues, not just direct children of the root.
authorBen Pfaff <blp@nicira.com>
Fri, 16 Jul 2010 22:47:23 +0000 (15:47 -0700)
committerBen Pfaff <blp@nicira.com>
Tue, 20 Jul 2010 18:26:58 +0000 (11:26 -0700)
A netdev-linux traffic control implementation has to dump all of a port's
traffic classes in a couple of different situations.  start_queue_dump()
is supposed to do that.  But it was specifying TC_H_ROOT as tcm_parent,
which only dumped classes that were direct children of the root.  This
commit changes tcm_parent to 0, which obtains all traffic classes
regardless of parent.

lib/netdev-linux.c

index 8cd40cd..bcba1a2 100644 (file)
@@ -1625,7 +1625,7 @@ start_queue_dump(const struct netdev *netdev, struct nl_dump *dump)
     struct tcmsg *tcmsg;
 
     tcmsg = tc_make_request(netdev, RTM_GETTCLASS, 0, &request);
-    tcmsg->tcm_parent = TC_H_ROOT;
+    tcmsg->tcm_parent = 0;
     nl_dump_start(dump, rtnl_sock, &request);
     ofpbuf_uninit(&request);
 }