[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 6/7] net: Remove the deprecated 'host_net_add
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [Qemu-devel] [PATCH v3 6/7] net: Remove the deprecated 'host_net_add' and 'host_net_remove' HMP commands |
Date: |
Tue, 27 Feb 2018 12:44:56 +0000 |
User-agent: |
Mutt/1.9.2 (2017-12-15) |
* Thomas Huth (address@hidden) 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.
>
> Reviewed-by: Paolo Bonzini <address@hidden>
> Signed-off-by: Thomas Huth <address@hidden>
This is fine from the HMP side, so:
Acked-by: Dr. David Alan Gilbert <address@hidden>
> ---
> 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
> address@hidden host_net_add
> address@hidden 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
> address@hidden host_net_remove
> address@hidden 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 373bb8d..a4f1f28 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 cbd553d..2d05808 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 97025c2..36acfc9 100644
> --- a/qemu-doc.texi
> +++ b/qemu-doc.texi
> @@ -2756,16 +2756,6 @@ by the ``convert -l snapshot_param'' argument instead.
> "autoload" parameter is now ignored. All bitmaps are automatically loaded
> from qcow2 images.
>
> address@hidden System emulator human monitor commands
> -
> address@hidden host_net_add (since 2.10.0)
> -
> -The ``host_net_add'' command is replaced by the ``netdev_add'' command.
> -
> address@hidden 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
>
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK
- [Qemu-devel] [PATCH v3 0/7] Improvements and clean-ups related to -net, Thomas Huth, 2018/02/21
- [Qemu-devel] [PATCH v3 1/7] net: Move error reporting from net_init_client/netdev to the calling site, Thomas Huth, 2018/02/21
- [Qemu-devel] [PATCH v3 2/7] net: List available netdevs with "-netdev help", Thomas Huth, 2018/02/21
- [Qemu-devel] [PATCH v3 6/7] net: Remove the deprecated 'host_net_add' and 'host_net_remove' HMP commands, Thomas Huth, 2018/02/21
- Re: [Qemu-devel] [PATCH v3 6/7] net: Remove the deprecated 'host_net_add' and 'host_net_remove' HMP commands,
Dr. David Alan Gilbert <=
- [Qemu-devel] [PATCH v3 5/7] net: Remove the deprecated way of dumping network packets, Thomas Huth, 2018/02/21
- [Qemu-devel] [PATCH v3 3/7] net: Only show vhost-user in the help text if CONFIG_POSIX is defined, Thomas Huth, 2018/02/21
- [Qemu-devel] [PATCH v3 4/7] net: Make net_client_init() static, Thomas Huth, 2018/02/21
- [Qemu-devel] [PATCH v3 7/7] net: Add a new convenience option "--nic" to configure default/on-board NICs, Thomas Huth, 2018/02/21
- Re: [Qemu-devel] [PATCH v3 0/7] Improvements and clean-ups related to -net, Mark Cave-Ayland, 2018/02/21
- Re: [Qemu-devel] [PATCH v3 0/7] Improvements and clean-ups related to -net, Jason Wang, 2018/02/27