From: Thomas Huth <thuth@redhat.com>
To: qemu-devel@nongnu.org, Jason Wang <jasowang@redhat.com>,
"Dr. David Alan Gilbert" <dgilbert@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
Eric Blake <eblake@redhat.com>,
Markus Armbruster <armbru@redhat.com>,
Stefan Hajnoczi <stefanha@redhat.com>
Subject: [Qemu-devel] [PATCH v1 6/8] net: Remove the deprecated 'host_net_add' and 'host_net_remove' HMP commands
Date: Mon, 19 Feb 2018 10:15:26 +0100 [thread overview]
Message-ID: <1519031728-9850-7-git-send-email-thuth@redhat.com> (raw)
In-Reply-To: <1519031728-9850-1-git-send-email-thuth@redhat.com>
They are deprecated since QEMU v2.10, and so far nobody complained that
these commands are still necessary for any reason - and since you can use
'netdev_add' and 'netdev_remove' instead, there also should not be any
real reason. Since they are also standing in the way for the upcoming
'vlan' clean-up, it's now time to remove them.
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hmp-commands.hx | 30 ------------------
hmp.h | 3 --
monitor.c | 61 ------------------------------------
net/net.c | 94 --------------------------------------------------------
qemu-doc.texi | 10 ------
tests/test-hmp.c | 2 --
6 files changed, 200 deletions(-)
diff --git a/hmp-commands.hx b/hmp-commands.hx
index d26eb41..964eb51 100644
--- a/hmp-commands.hx
+++ b/hmp-commands.hx
@@ -1291,36 +1291,6 @@ Inject PCIe AER error
ETEXI
{
- .name = "host_net_add",
- .args_type = "device:s,opts:s?",
- .params = "tap|user|socket|vde|netmap|bridge|vhost-user|dump [options]",
- .help = "add host VLAN client (deprecated, use netdev_add instead)",
- .cmd = hmp_host_net_add,
- .command_completion = host_net_add_completion,
- },
-
-STEXI
-@item host_net_add
-@findex host_net_add
-Add host VLAN client. Deprecated, please use @code{netdev_add} instead.
-ETEXI
-
- {
- .name = "host_net_remove",
- .args_type = "vlan_id:i,device:s",
- .params = "vlan_id name",
- .help = "remove host VLAN client (deprecated, use netdev_del instead)",
- .cmd = hmp_host_net_remove,
- .command_completion = host_net_remove_completion,
- },
-
-STEXI
-@item host_net_remove
-@findex host_net_remove
-Remove host VLAN client. Deprecated, please use @code{netdev_del} instead.
-ETEXI
-
- {
.name = "netdev_add",
.args_type = "netdev:O",
.params = "[user|tap|socket|vde|bridge|hubport|netmap|vhost-user],id=str[,prop=value][,...]",
diff --git a/hmp.h b/hmp.h
index 1143db4..b897338 100644
--- a/hmp.h
+++ b/hmp.h
@@ -132,9 +132,6 @@ void migrate_set_capability_completion(ReadLineState *rs, int nb_args,
const char *str);
void migrate_set_parameter_completion(ReadLineState *rs, int nb_args,
const char *str);
-void host_net_add_completion(ReadLineState *rs, int nb_args, const char *str);
-void host_net_remove_completion(ReadLineState *rs, int nb_args,
- const char *str);
void delvm_completion(ReadLineState *rs, int nb_args, const char *str);
void loadvm_completion(ReadLineState *rs, int nb_args, const char *str);
void hmp_rocker(Monitor *mon, const QDict *qdict);
diff --git a/monitor.c b/monitor.c
index f499250..4fcfc2e 100644
--- a/monitor.c
+++ b/monitor.c
@@ -3574,67 +3574,6 @@ void migrate_set_parameter_completion(ReadLineState *rs, int nb_args,
}
}
-void host_net_add_completion(ReadLineState *rs, int nb_args, const char *str)
-{
- int i;
- size_t len;
- if (nb_args != 2) {
- return;
- }
- len = strlen(str);
- readline_set_completion_index(rs, len);
- for (i = 0; host_net_devices[i]; i++) {
- if (!strncmp(host_net_devices[i], str, len)) {
- readline_add_completion(rs, host_net_devices[i]);
- }
- }
-}
-
-void host_net_remove_completion(ReadLineState *rs, int nb_args, const char *str)
-{
- NetClientState *ncs[MAX_QUEUE_NUM];
- int count, i, len;
-
- len = strlen(str);
- readline_set_completion_index(rs, len);
- if (nb_args == 2) {
- count = qemu_find_net_clients_except(NULL, ncs,
- NET_CLIENT_DRIVER_NONE,
- MAX_QUEUE_NUM);
- for (i = 0; i < MIN(count, MAX_QUEUE_NUM); i++) {
- int id;
- char name[16];
-
- if (net_hub_id_for_client(ncs[i], &id)) {
- continue;
- }
- snprintf(name, sizeof(name), "%d", id);
- if (!strncmp(str, name, len)) {
- readline_add_completion(rs, name);
- }
- }
- return;
- } else if (nb_args == 3) {
- count = qemu_find_net_clients_except(NULL, ncs,
- NET_CLIENT_DRIVER_NIC,
- MAX_QUEUE_NUM);
- for (i = 0; i < MIN(count, MAX_QUEUE_NUM); i++) {
- int id;
- const char *name;
-
- if (ncs[i]->info->type == NET_CLIENT_DRIVER_HUBPORT ||
- net_hub_id_for_client(ncs[i], &id)) {
- continue;
- }
- name = ncs[i]->name;
- if (!strncmp(str, name, len)) {
- readline_add_completion(rs, name);
- }
- }
- return;
- }
-}
-
static void vm_completion(ReadLineState *rs, const char *str)
{
size_t len;
diff --git a/net/net.c b/net/net.c
index af0b3e7..fe29cfa 100644
--- a/net/net.c
+++ b/net/net.c
@@ -60,25 +60,6 @@
static VMChangeStateEntry *net_change_state_entry;
static QTAILQ_HEAD(, NetClientState) net_clients;
-const char *host_net_devices[] = {
- "tap",
- "socket",
-#ifdef CONFIG_NET_BRIDGE
- "bridge",
-#endif
-#ifdef CONFIG_NETMAP
- "netmap",
-#endif
-#ifdef CONFIG_SLIRP
- "user",
-#endif
-#ifdef CONFIG_VDE
- "vde",
-#endif
- "vhost-user",
- NULL,
-};
-
/***********************************************************/
/* network device redirectors */
@@ -1174,81 +1155,6 @@ static int net_client_init(QemuOpts *opts, bool is_netdev, Error **errp)
return ret;
}
-
-static int net_host_check_device(const char *device)
-{
- int i;
- for (i = 0; host_net_devices[i]; i++) {
- if (!strncmp(host_net_devices[i], device,
- strlen(host_net_devices[i]))) {
- return 1;
- }
- }
-
- return 0;
-}
-
-void hmp_host_net_add(Monitor *mon, const QDict *qdict)
-{
- const char *device = qdict_get_str(qdict, "device");
- const char *opts_str = qdict_get_try_str(qdict, "opts");
- Error *local_err = NULL;
- QemuOpts *opts;
- static bool warned;
-
- if (!warned && !qtest_enabled()) {
- error_report("host_net_add is deprecated, use netdev_add instead");
- warned = true;
- }
-
- if (!net_host_check_device(device)) {
- monitor_printf(mon, "invalid host network device %s\n", device);
- return;
- }
-
- opts = qemu_opts_parse_noisily(qemu_find_opts("net"),
- opts_str ? opts_str : "", false);
- if (!opts) {
- return;
- }
-
- qemu_opt_set(opts, "type", device, &error_abort);
-
- net_client_init(opts, false, &local_err);
- if (local_err) {
- error_report_err(local_err);
- monitor_printf(mon, "adding host network device %s failed\n", device);
- }
-}
-
-void hmp_host_net_remove(Monitor *mon, const QDict *qdict)
-{
- NetClientState *nc;
- int vlan_id = qdict_get_int(qdict, "vlan_id");
- const char *device = qdict_get_str(qdict, "device");
- static bool warned;
-
- if (!warned && !qtest_enabled()) {
- error_report("host_net_remove is deprecated, use netdev_del instead");
- warned = true;
- }
-
- nc = net_hub_find_client_by_name(vlan_id, device);
- if (!nc) {
- error_report("Host network device '%s' on hub '%d' not found",
- device, vlan_id);
- return;
- }
- if (nc->info->type == NET_CLIENT_DRIVER_NIC) {
- error_report("invalid host network device '%s'", device);
- return;
- }
-
- qemu_del_net_client(nc->peer);
- qemu_del_net_client(nc);
- qemu_opts_del(qemu_opts_find(qemu_find_opts("net"), device));
-}
-
void netdev_add(QemuOpts *opts, Error **errp)
{
net_client_init(opts, true, errp);
diff --git a/qemu-doc.texi b/qemu-doc.texi
index 55954b0..865160d 100644
--- a/qemu-doc.texi
+++ b/qemu-doc.texi
@@ -2758,16 +2758,6 @@ by the ``convert -l snapshot_param'' argument instead.
"autoload" parameter is now ignored. All bitmaps are automatically loaded
from qcow2 images.
-@section System emulator human monitor commands
-
-@subsection host_net_add (since 2.10.0)
-
-The ``host_net_add'' command is replaced by the ``netdev_add'' command.
-
-@subsection host_net_remove (since 2.10.0)
-
-The ``host_net_remove'' command is replaced by the ``netdev_del'' command.
-
@section System emulator devices
@subsection ivshmem (since 2.6.0)
diff --git a/tests/test-hmp.c b/tests/test-hmp.c
index 5b7e447..5352c9c 100644
--- a/tests/test-hmp.c
+++ b/tests/test-hmp.c
@@ -37,10 +37,8 @@ static const char *hmp_cmds[] = {
"dump-guest-memory /dev/null 0 4096",
"dump-guest-memory /dev/null",
"gdbserver",
- "host_net_add user id=net0",
"hostfwd_add tcp::43210-:43210",
"hostfwd_remove tcp::43210-:43210",
- "host_net_remove 0 net0",
"i /w 0",
"log all",
"log none",
--
1.8.3.1
next prev parent reply other threads:[~2018-02-19 9:15 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-19 9:15 [Qemu-devel] [PATCH v1 0/8] Improvements and clean-ups related to -net Thomas Huth
2018-02-19 9:15 ` [Qemu-devel] [PATCH v1 1/8] net: Move error reporting from net_init_client/netdev to the calling site Thomas Huth
2018-02-19 13:38 ` Eric Blake
2018-02-19 16:07 ` Paolo Bonzini
2018-02-19 9:15 ` [Qemu-devel] [PATCH v1 2/8] net: List available netdevs with "-netdev help" Thomas Huth
2018-02-19 16:08 ` Paolo Bonzini
2018-02-19 17:18 ` Eric Blake
2018-02-19 9:15 ` [Qemu-devel] [PATCH v1 3/8] net: Only show vhost-user in the help text if CONFIG_POSIX is defined Thomas Huth
2018-02-19 16:10 ` Paolo Bonzini
2018-02-19 9:15 ` [Qemu-devel] [PATCH v1 4/8] net: Make net_client_init() static Thomas Huth
2018-02-19 16:12 ` Paolo Bonzini
2018-02-19 9:15 ` [Qemu-devel] [PATCH v1 5/8] net: Remove the deprecated way of dumping network packets Thomas Huth
2018-02-19 16:13 ` Paolo Bonzini
2018-02-19 17:14 ` Eric Blake
2018-02-19 9:15 ` Thomas Huth [this message]
2018-02-19 16:13 ` [Qemu-devel] [PATCH v1 6/8] net: Remove the deprecated 'host_net_add' and 'host_net_remove' HMP commands Paolo Bonzini
2018-02-19 9:15 ` [Qemu-devel] [PATCH v1 7/8] net: Add a new convenience option "-n" to configure default/on-board NICs Thomas Huth
2018-02-19 16:20 ` Paolo Bonzini
2018-02-19 16:37 ` Thomas Huth
2018-02-19 9:15 ` [Qemu-devel] [PATCH v1 8/8] qemu-doc: Make "-net" less prominent Thomas Huth
2018-02-19 13:29 ` [Qemu-devel] [PATCH v1 0/8] Improvements and clean-ups related to -net Eric Blake
2018-02-19 13:37 ` Thomas Huth
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1519031728-9850-7-git-send-email-thuth@redhat.com \
--to=thuth@redhat.com \
--cc=armbru@redhat.com \
--cc=dgilbert@redhat.com \
--cc=eblake@redhat.com \
--cc=jasowang@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).