summary refs log tree commit diff stats
path: root/net/net.c
diff options
context:
space:
mode:
authorVladislav Yasevich <vyasevic@redhat.com>2015-10-19 09:04:38 -0400
committerJason Wang <jasowang@redhat.com>2015-10-27 10:30:39 +0800
commit5320c2caf43cc76748a1ffa0fdcaa9eb501d3fcd (patch)
tree32f28fc2ea81b11a01f0bdd5b66a1f0501d8e573 /net/net.c
parenteedeeeffd419ab149e0b0ad5fc4b7cf5e1db6274 (diff)
downloadfocaccia-qemu-5320c2caf43cc76748a1ffa0fdcaa9eb501d3fcd.tar.gz
focaccia-qemu-5320c2caf43cc76748a1ffa0fdcaa9eb501d3fcd.zip
net: Remove duplicate data from query-rx-filter on multiqueue net devices
When responding to a query-rx-filter command on a multiqueue
netdev, qemu reports the data for each queue.  The data, however,
is not per-queue, but per device and the same data is reported
multiple times.  This causes confusion and may also cause extra
unnecessary processing when looking at the data.

Commit 638fb14169 (net: Make qmp_query_rx_filter() with name argument
more obvious) partially addresses this issue, by limiting the output
when the name is specified.  However, when the name is not specified,
the issue still persists.

Signed-off-by: Vladislav Yasevich <vyasevic@redhat.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Diffstat (limited to 'net/net.c')
-rw-r--r--net/net.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/net/net.c b/net/net.c
index 3c68f3faa8..70a3576db9 100644
--- a/net/net.c
+++ b/net/net.c
@@ -1227,6 +1227,12 @@ RxFilterInfoList *qmp_query_rx_filter(bool has_name, const char *name,
             continue;
         }
 
+        /* only query information on queue 0 since the info is per nic,
+         * not per queue
+         */
+        if (nc->queue_index != 0)
+            continue;
+
         if (nc->info->query_rx_filter) {
             info = nc->info->query_rx_filter(nc);
             entry = g_malloc0(sizeof(*entry));