On 19/02/2018 10:15, Thomas Huth wrote: > 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 <th...@redhat.com>
Reviewed-by: Paolo Bonzini <pbonz...@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", >