qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/4] Introducing QMP query-netdev command
@ 2020-09-21 19:19 Alexey Kirillov
  2020-09-21 19:19 ` [PATCH v4 1/4] qapi: net: Add " Alexey Kirillov
                   ` (6 more replies)
  0 siblings, 7 replies; 10+ messages in thread
From: Alexey Kirillov @ 2020-09-21 19:19 UTC (permalink / raw)
  To: Eric Blake, Markus Armbruster, Thomas Huth, Jason Wang
  Cc: Laurent Vivier, Michael S. Tsirkin, Stefan Weil, qemu-devel,
	Vincenzo Maffione, yc-core, Paolo Bonzini, Samuel Thibault,
	Giuseppe Lettieri, Luigi Rizzo

This patch series introduces a new QMP command "query-netdev" to get
information about currently attached backend network devices (netdevs).
Also, since the "info_str" field of "NetClientState" is now deprecated,
we no longer use it for netdevs, only for NIC/hubports.
The HMP command "info network" now also uses the new QMP command inside.

Usage example:

-> { "execute": "query-netdev" }
<- { "return": [
         {
             "listen": "127.0.0.1:90",
             "type": "socket",
             "peer-id": "hub0port1",
             "id": "__org.qemu.net1"
         },
         {
             "script": "/etc/qemu-ifup",
             "downscript": "/etc/qemu-ifdown",
             "ifname": "tap0",
             "type": "tap",
             "peer-id": "net5",
             "vnet_hdr": true,
             "id": "tap0"
         },
         {
             "ipv6": true,
             "ipv4": true,
             "host": "10.0.2.2",
             "ipv6-dns": "fec0::3",
             "ipv6-prefix": "fec0::",
             "net": "10.0.2.0/255.255.255.0",
             "ipv6-host": "fec0::2",
             "type": "user",
             "peer-id": "net0",
             "dns": "10.0.2.3",
             "hostfwd": [
                 {
                     "str": "tcp::20004-:22"
                 }
             ],
             "ipv6-prefixlen": 64,
             "id": "netdev0",
             "restrict": false
         }
     ]
   }

v3->v4:
- Rename "query-netdevs" to "query-netdev".
- Copy netdev drivers to new QAPI enum "NetBackend".

v2->v3:
- Remove NIC and hubports from query-netdevs.
- Remove several fields from NetdevInfo since they are unnecessary.
- Rename field @peer to @peer-id.
- Add support of vhost-vdpa.
- Keep "info_str" for NIC/hubports, but remove it for netdevs.

v1->v2:
- Rewrite HMP "info network" to get information from results of QMP command.
- Remove obsolete field "info_str" from "NetClientState".

Alexey Kirillov (4):
  qapi: net: Add query-netdev command
  tests: Add tests for query-netdev command
  hmp: Use QMP query-netdev in hmp_info_network
  net: Do not use legacy info_str for backends

 include/net/net.h               |   4 +-
 net/clients.h                   |   1 +
 net/hub.c                       |   4 +-
 net/hub.h                       |   2 +-
 net/l2tpv3.c                    |  21 +++-
 net/net.c                       | 213 +++++++++++++++++++++++++++++++-
 net/netmap.c                    |  13 ++
 net/slirp.c                     | 128 ++++++++++++++++++-
 net/socket.c                    |  91 ++++++++++----
 net/tap-win32.c                 |  10 +-
 net/tap.c                       | 107 ++++++++++++++--
 net/vde.c                       |  39 +++++-
 net/vhost-user.c                |  20 ++-
 net/vhost-vdpa.c                |  15 ++-
 qapi/net.json                   |  80 ++++++++++++
 tests/qtest/meson.build         |   3 +
 tests/qtest/test-query-netdev.c | 115 +++++++++++++++++
 17 files changed, 807 insertions(+), 59 deletions(-)
 create mode 100644 tests/qtest/test-query-netdev.c

-- 
2.25.1



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

end of thread, other threads:[~2020-10-24  7:08 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-09-21 19:19 [PATCH v4 0/4] Introducing QMP query-netdev command Alexey Kirillov
2020-09-21 19:19 ` [PATCH v4 1/4] qapi: net: Add " Alexey Kirillov
2020-09-22 14:27   ` Markus Armbruster
2020-09-21 19:19 ` [PATCH v4 2/4] tests: Add tests for " Alexey Kirillov
2020-10-24  7:07   ` Thomas Huth
2020-09-21 19:19 ` [PATCH v4 3/4] hmp: Use QMP query-netdev in hmp_info_network Alexey Kirillov
2020-09-21 19:19 ` [PATCH v4 4/4] net: Do not use legacy info_str for backends Alexey Kirillov
     [not found] ` <f5c36663-0845-c9fa-1e3b-636aef2ccd4a@yandex-team.ru>
2020-09-28 12:07   ` [PATCH v4 0/4] Introducing QMP query-netdev command Alexey Kirillov
2020-10-07  7:52 ` Alexey Kirillov
2020-10-16 15:34 ` Alexey Kirillov

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).