Message ID | 1400540600-1328-5-git-send-email-kroosec@gmail.com |
---|---|
State | New |
Headers | show |
On Tue, May 20, 2014 at 12:03:17AM +0100, Hani Benhabiles wrote: > diff --git a/hmp-commands.hx b/hmp-commands.hx > index 919af6e..6aaec1b 100644 > --- a/hmp-commands.hx > +++ b/hmp-commands.hx > @@ -1209,9 +1209,10 @@ ETEXI > { > .name = "host_net_add", > .args_type = "device:s,opts:s?", > - .params = "tap|user|socket|vde|netmap|dump [options]", > + .params = "tap|user|socket|vde|bridge|dump [options]", Why did you delete "netmap"? I guess "bridge" should have been appended. > diff --git a/monitor.c b/monitor.c > index 6a3a5c9..365c66a 100644 > --- a/monitor.c > +++ b/monitor.c > @@ -4593,6 +4593,20 @@ void migrate_set_capability_completion(ReadLineState *rs, int nb_args, > } > } > > +void host_net_add_completion(ReadLineState *rs, int nb_args, const char *str) > +{ > + if (nb_args != 2) { > + return; > + } > + readline_set_completion_index(rs, strlen(str)); > + add_completion_option(rs, str, "tap"); > + add_completion_option(rs, str, "user"); > + add_completion_option(rs, str, "socket"); > + add_completion_option(rs, str, "vde"); > + add_completion_option(rs, str, "dump"); > + add_completion_option(rs, str, "bridge"); Please take a look at net_host_check_device() and share the list from there. (Some of the netdevs depend on build-time options.)
On Fri, May 23, 2014 at 02:05:03PM +0200, Stefan Hajnoczi wrote: > On Tue, May 20, 2014 at 12:03:17AM +0100, Hani Benhabiles wrote: > > diff --git a/hmp-commands.hx b/hmp-commands.hx > > index 919af6e..6aaec1b 100644 > > --- a/hmp-commands.hx > > +++ b/hmp-commands.hx > > @@ -1209,9 +1209,10 @@ ETEXI > > { > > .name = "host_net_add", > > .args_type = "device:s,opts:s?", > > - .params = "tap|user|socket|vde|netmap|dump [options]", > > + .params = "tap|user|socket|vde|bridge|dump [options]", > > Why did you delete "netmap"? I guess "bridge" should have been appended. > Because "netmap" fails the net_host_check_device() check: (qemu) host_net_add user (qemu) host_net_add foooo invalid host network device foooo (qemu) host_net_add netmap invalid host network device netmap Should "netmap" be added there ? > > diff --git a/monitor.c b/monitor.c > > index 6a3a5c9..365c66a 100644 > > --- a/monitor.c > > +++ b/monitor.c > > @@ -4593,6 +4593,20 @@ void migrate_set_capability_completion(ReadLineState *rs, int nb_args, > > } > > } > > > > +void host_net_add_completion(ReadLineState *rs, int nb_args, const char *str) > > +{ > > + if (nb_args != 2) { > > + return; > > + } > > + readline_set_completion_index(rs, strlen(str)); > > + add_completion_option(rs, str, "tap"); > > + add_completion_option(rs, str, "user"); > > + add_completion_option(rs, str, "socket"); > > + add_completion_option(rs, str, "vde"); > > + add_completion_option(rs, str, "dump"); > > + add_completion_option(rs, str, "bridge"); > > Please take a look at net_host_check_device() and share the list from > there. (Some of the netdevs depend on build-time options.) Ok, will add a patch to share the valid_params_list[] in include/net/net.h.
On Sun, May 25, 2014 at 05:12:55PM +0100, Hani Benhabiles wrote: > On Fri, May 23, 2014 at 02:05:03PM +0200, Stefan Hajnoczi wrote: > > On Tue, May 20, 2014 at 12:03:17AM +0100, Hani Benhabiles wrote: > > > diff --git a/hmp-commands.hx b/hmp-commands.hx > > > index 919af6e..6aaec1b 100644 > > > --- a/hmp-commands.hx > > > +++ b/hmp-commands.hx > > > @@ -1209,9 +1209,10 @@ ETEXI > > > { > > > .name = "host_net_add", > > > .args_type = "device:s,opts:s?", > > > - .params = "tap|user|socket|vde|netmap|dump [options]", > > > + .params = "tap|user|socket|vde|bridge|dump [options]", > > > > Why did you delete "netmap"? I guess "bridge" should have been appended. > > > > Because "netmap" fails the net_host_check_device() check: > > (qemu) host_net_add user > (qemu) host_net_add foooo > invalid host network device foooo > (qemu) host_net_add netmap > invalid host network device netmap > > Should "netmap" be added there ? Probably because your QEMU was not built with (optional) netmap support. It's primarily used on FreeBSD but there is Linux code as well: https://code.google.com/p/netmap/ Stefan
diff --git a/hmp-commands.hx b/hmp-commands.hx index 919af6e..6aaec1b 100644 --- a/hmp-commands.hx +++ b/hmp-commands.hx @@ -1209,9 +1209,10 @@ ETEXI { .name = "host_net_add", .args_type = "device:s,opts:s?", - .params = "tap|user|socket|vde|netmap|dump [options]", + .params = "tap|user|socket|vde|bridge|dump [options]", .help = "add host VLAN client", .mhandler.cmd = net_host_device_add, + .command_completion = host_net_add_completion, }, STEXI diff --git a/hmp.h b/hmp.h index 0c814d0..22ee836 100644 --- a/hmp.h +++ b/hmp.h @@ -109,5 +109,6 @@ void watchdog_action_completion(ReadLineState *rs, int nb_args, const char *str); void migrate_set_capability_completion(ReadLineState *rs, int nb_args, const char *str); +void host_net_add_completion(ReadLineState *rs, int nb_args, const char *str); #endif diff --git a/monitor.c b/monitor.c index 6a3a5c9..365c66a 100644 --- a/monitor.c +++ b/monitor.c @@ -4593,6 +4593,20 @@ void migrate_set_capability_completion(ReadLineState *rs, int nb_args, } } +void host_net_add_completion(ReadLineState *rs, int nb_args, const char *str) +{ + if (nb_args != 2) { + return; + } + readline_set_completion_index(rs, strlen(str)); + add_completion_option(rs, str, "tap"); + add_completion_option(rs, str, "user"); + add_completion_option(rs, str, "socket"); + add_completion_option(rs, str, "vde"); + add_completion_option(rs, str, "dump"); + add_completion_option(rs, str, "bridge"); +} + static void monitor_find_completion_by_table(Monitor *mon, const mon_cmd_t *cmd_table, char **args,
Also fix the parameters documentation. Signed-off-by: Hani Benhabiles <hani@linux.com> --- hmp-commands.hx | 3 ++- hmp.h | 1 + monitor.c | 14 ++++++++++++++ 3 files changed, 17 insertions(+), 1 deletion(-)